Java:绑定(bind)和连接方法

标签 java udp bind connect nat

数据报套接字中的bind 和connect 方法的主要用途是什么?它们有必要使用吗?这些方法的使用与路由器中传入和传出数据包的条目有任何关系吗?

最佳答案

What is the main purpose of bind and connect methods in a datagram socket?

bind() 将套接字绑定(bind)到本地接口(interface)和端口。 connect() 条件本地 UDP 堆栈仅向连接目标发送和接收,就该套接字而言。

Are they necessary to use?

只有当您需要使用特定的本地端口时才需要使用bind(),以便期望发送到该端口的对等方能够成功。仅当您只对一个对等方感兴趣并希望自动过滤掉所有其他 UDP Activity 时,才需要使用 connect()

Does the usage of these methods have any relation with the entries in a router for incoming and outgoing packets?

如果您不调用 bind(), 第一次向任何地方发送任何数据时,将自动向指定的 IP 地址执行 bind()通过单播 IP 路由表到达目标的最佳本地路由。

关于Java:绑定(bind)和连接方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21157621/

相关文章:

c# - 在C#中连接到Udp服务器的客户端列表

javascript - 将值传递给 .bind() 方法

java - IntelliJ : Refactor package causes Guice class-not-found

java - 如何在 LWJGL 3 中使用 glfwSetWindowUserPointer?

特定项目的 Java 运行时错误未显示在 Eclipse 控制台中

c - windows下绑定(bind)C语言

Haskell函数组合和绑定(bind)之间的区别

java - Greenfoot 我可以在构造函数中创建一个 Actor 实例吗?

c - 带有第一个 NULL 参数的 getaddrinfo 给出第一个 IPv4 而不是 IPv6

java - 为什么 DatagramPacket 对象在使用其方法之一时会卡住?