linux 绑定端口号失败

最近写测试用例,shell脚本很简单。如下:
    1 #!/bin/bash
      2 
      3 for((i = 1;i <= 100;i++))
      4 do
      5     {
      6         ./response_sync_serv test_ser_$((i)) $((60000 + i))> /dev/null &
      7         ./response_sync_serv test1_ser_$((i)) $((66000 + i))> /dev/null &
      8     }&
      9 
     10 done

目的 想后台启动200个服务,并由命令行参数传入端口号。

修改文件权限后执行shell脚本。前100个可顺利执行,后100个显示bind端口失败。不知所以,网上求救,得知/proc/sys/net/ipv4/ip_local_port_range文件规定了socket绑定临时端口号的范围。查看文件内容

   1 1024    65000
的确超过此范围。修改脚本再次执行,问题解决。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当在 Linux 系统中遇到端口不通的情况时,这通常意味着从一个进程试图通过网络连接到另一个进程,但没有成功建立连接。这种情况可能由以下几个原因引起: 1. **防火墙或安全组设置**:检查系统的防火墙(如 iptables 或 ufw)是否阻止了特定的端口访问。如果开启了防火墙,请确认规则是否允许相应的进出流量。 2. **端口监听和绑定**:检查目标服务是否正在运行并且正确地监听并绑定到指定的端口。你可以使用 `netstat` 或 `lsof` 命令查看端口占用情况。 3. **服务配置错误**:如果你试图连接的服务配置文件中可能误设了端口号或监听地址,导致服务无法监听。 4. **IP地址和路由**:确保源和目标 IP 地址正确,并且网络路由没有问题。你可以使用 `ping` 和 `traceroute` 来测试路径。 5. **端口被其他程序占用**:查看是否有其他进程意外占据了这个端口。使用 `ps aux | grep <port>` 可能会找到相关信息。 6. **系统防火墙规则**:在某些 Linux 发行版中,如 Red Hat 家族的系统,可能会有 NetworkManager 或 firewalld 这样的服务管理防火墙规则,需要确认它们的配置。 7. **软件包问题**:如果是服务相关的,确保提供该服务的软件包已正确安装和更新。 为了排查具体问题,你可以尝试以下步骤: - 使用 `telnet` 或 `nc` 工具尝试连接到目标端口。 - 查看系统日志,寻找关于连接失败的相关错误信息。 - 使用 `sudo service <service-name> status` 或 `systemctl status <service-name>` 检查服务状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值