端口保留

Posted by moloach on 2018-10-04

端口保留

windows端口保留

通过端口保留,应用程序可以阻止一定范围内的端口在通配绑定期间被分配。然而,保留某一端口范围并不会阻止应用程序在保留的范围内执行特定的绑定(请求使用特定端口)。保留端口范围时,所选择的端口号连续范围必须是从 1025 到 MaxUserPort 设置值(默认值为 5000)或从 49152 到 65535。多个客户端应用程序可保留相同的范围。取消保留(删除保留)时,Windows 套接字会删除它找到的第一个完全包含在取消保留请求内的条目。

还可以执行以下操作,通过注册表来指定保留端口的范围:

步骤 操作
1. 单击开始,再单击运行,键入 regedit.exe,然后单击确定。
2. 找到而后单击以下注册表子项:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters
3. 在编辑菜单上,指向新建,然后单击多字符串值。
4. 键入 ReservedPorts,然后按 ENTER。
5. 双击 ReservedPorts 值,使用以下语法键入端口范围:x-y要指定单个端口,请对 x 和 y 使用相同的值。例如,要指定端口 4000,请键入 4000-4000。
6. 单击确定。
7. 退出注册表编辑器。

reference: https://blog.csdn.net/sforiz/article/details/79926256

linux端口保留

使用net.ipv4.ip_local_port_range

1
2
3
4
# vi /etc/sysctl.conf
在文件末尾增加以下内容:
net.ipv4.ip_local_port_range = 5000 65000
# /sbin/sysctl -p

使用文件限制

1
2
3
4
$ cat /proc/sys/net/ipv4/ip_local_port_range
32000 61000
$ cat /proc/sys/net/ipv4/ip_local_reserved_ports
8080,9148

reference: https://blog.csdn.net/mergerly/article/details/44944557