ssh远程目标机器提示:Cannot assign requested address
错误日志
connect to address 1.1.1.2 port 11506: Cannot assign requested address
通常不是SSH账号或认证问题,而是底层网络/本机配置问题。它基本意思是 本机无法分配本地套接字去连接目标 IP/端口。
分析解决
1.端口耗尽或 ephemeral port 问题
TCP 连接需要本地随机端口(32768-60999 范围默认)。如果你的系统同时发起太多连接,本地短时间端口可能耗尽。
查看占用情况:
1 | ss -nat | grep ESTAB | wc -l |
如果很多连接处于 TIME_WAIT,可能需要:
1 | # 检查 |
我这里问题是,ip_local_port_range && ip_local_reserved_ports 设置成一样值导致问题(1024 65536)。
2.本地路由问题
目标 IP 可能在本机不可达(路由或网关问题)。
1 | ping 10.6.234.x |
确认是否能 ping 通。
3.防火墙 / SELinux / iptables
有时候本地防火墙限制了出站连接到非标准端口(11506)。
1 | sudo iptables -L -n |