1.
服务器端编程需要bind,服务器在启动时捆绑它们的众所周知端口。
如果一个tcp客户或服务器未曾调用bind捆绑一个端口,当调用connect或listen时,
内核就要为响应的套接口选择一个临时端口。而服务器是通过它们众所周知端口被大家认识的。
2.客户端不一定非要bind,当连接套接口时,内核根据所用外出网络接口来选择源ip地址,
而所用外出接口则取决于到达服务器所需的路径.
3.
在一个没有调用
bind
的
tcp
客户上,
connect
成功返回后,
getsockname
用于返回由内核赋予该连接的本地
ip
地址和本地端口号。当然bind
和connect后,getsockname也能得出正确的值。