tcp选取源端口 src port 是操作系统干的吗?

用户进程可以在发起 tcp 请求的时候,自己选择 src port 吗?

linux、win、mac 上,使用 tcp 访问对面,我的 src port 可以用 c、c++、java、python 自己写在代码里面指定吗?还是说 src port 是 os 随机选择,作为 app 是不能自己选择的?

回复
阅读 832
3 个回答
A TCP/IP connection is identified by a four element tuple: {source IP, source port, destination IP, destination port}. To establish a TCP/IP connection only a destination IP and port number are needed, the operating system automatically selects source IP and port.

TCP/IP 连接由四元组标识:{源 IP、源端口、目标 IP、目标端口}。要建立 TCP/IP 连接,只需要目标 IP 和端口号,操作系统会自动选择源 IP 和端口。

也就是源端口由操作系统决定,与编程语言无关

参考此答案

新手上路,请多包涵

java中是可以指定使用哪个源端口的,如果指定的端口已被使用是会直接报错的。当你不指定的时候才是os随机给你一个空闲的端口,可以在各个os类似任务管理器的软件中查看各个应用的端口

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏