9 sockets posix tcp
假设我想在IPC的某个端口上运行TCP/IP服务.当我将端口号传递给我想要与之通信的进程时,端口号无关紧要.什么是获得系统仍然可用的随机,高(通常> 49152)端口号的最佳方法?我可以使用POSIX中的东西吗?
我知道FTP服务器经常需要这个.
lot*_*har 14
如果您未指定端口号,操作系统将自动为您选择一个短暂的端口号.
从选择端口号:
新的服务器软件应该努力避免依赖于特定的端口号,特别是如果它是用户级软件并非不可避免地与众所周知的端口绑定.幸运的是,通过请求端口0可以轻松完成此操作,端口0指示系统选择短暂的端口号.
Nic*_*zet 6
短暂的端口可以做到这一点.您的操作系统将为您分配空闲端口池中的端口.
有一些C代码,BSD许可,在这里这样做
在Python中,您可以('', 0)为同一目的指定socket.AF_INET地址对,例如sock.bind(('', 0))
('', 0)
sock.bind(('', 0))
Rem*_*eau -9
唯一的方法是循环遍历所需的端口范围,尝试一次将一个套接字绑定到每个端口,直到找到一个成功的端口。
归档时间:
16 年,3 月 前
查看次数:
16533 次
最近记录:
8 年,11 月 前