JAVA Socket地址绑定

Socket常用有惨构造方法有如下:

Socket(InetAddress address, int port)
Socket(InetAddress address, int port, InetAddress localAddr, int localPort)
Socket(String host, int port)
Socket(String host, int port, InetAddress localAddr, int localPort)

其中InetAddress的获取方式如下:

InetAddress addr = InetAddress.getByName("www.baidu.com");
InetAddress addr = InetAddress.getByName("201.158.101.1");
InetAddress addr = InetAddress.getLocalHost();

有些构造方法提供了localAddr、localPort,例如:Socket(InetAddress address, int port, InetAddress localAddr, int localPort) ,这两个参数分别使用来指定本地地址,本地端口的。通常情况向本地地址就是当前机器的ip,但是如果当前主机有多个网卡,这样就可出现多个ip,如果希望和其中的一个ip段通信,这时候就需要执行显示指定localAddr。目前localPort没发现太大作用。

原文地址:https://www.cnblogs.com/qiumingcheng/p/4793075.html