Cannot assign requested address

转载 2012年03月22日 09:48:26

场景:使用libcurl 向本机的nginx 发请求,每隔一段时间,会出“Couldn't connect to server”,此时使用telnet 也会有错,Couldn't connect to server,同时观察netstat 发现很多TIME_WAIT。

分析:客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,即“Cannot assign requested address”

解决:

1. 在程序中设置立即关闭不经历TIME_WAIT,以重用端口

int bReuseaddr=1;
setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(int));

2. 修改内核参数

vi /etc/sysctl.conf 在末尾添加以下内容:

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

使配置生效: /sbin/sysctl -p


Redis绑定IP后报 bind: Cannot assign requested address 异常解决方法

Redis绑定IP后报 bind: Cannot assign requested address 异常解决方法         今天在研究Redis安全设置,提到bind IP地址,然后就在r...
  • chwshuang
  • chwshuang
  • 2015年09月15日 12:17
  • 20371

Cannot assign requested address解决办法

“Cannot assign requested address.”是由于linux分配的客户端连接端口用尽,无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放,而是处于TI...
  • wenshuangzhu
  • wenshuangzhu
  • 2015年03月04日 15:30
  • 20351

Redis:Cannot assign requested address的解决办法

今天想试一下redis,写了个程序,对redis连续进行100000访问,却出现以了Cannot assignrequestedaddress的问题,我起先是以为是redis的问题(可能承受不了这么多...
  • mengxianhua
  • mengxianhua
  • 2013年11月07日 03:10
  • 11256

出现Cannot assign requested address: JVM_Bind

Cannot assign requested address: JVM_Bind 根据异常信息推测,可能是Tomcat需要绑定的端口或某些资源被其他应用程序占用。 使用DOS命令netsta...
  • u014470581
  • u014470581
  • 2016年04月25日 14:47
  • 2039

Hadoop启动出错Cannot assign requested address

在腾讯云上配置hadoop,namenode一直启动不成功 cat一下cat $HADOOP_HOME/logs/hadoop-root-namenode-Namenode.log2017-04-0...
  • ZhaoBuDaoFangXia
  • ZhaoBuDaoFangXia
  • 2017年04月05日 20:19
  • 1456

修改MAC错误ifconfig:SIOCSIFHWADDR: Cannot assign requested address

转自:http://blog.csdn.net/qianguozheng/article/details/38336277 在Linux下修改网卡的MAC地址命令: /sbin/ifcon...
  • qq_33611327
  • qq_33611327
  • 2017年10月26日 19:34
  • 114

bind: Cannot assign requested address

今天写了一段socket代码,大致是这样的: struct sockaddr_in cliaddr; inet_aton("192.168.2.12", &ad...
  • CaspianSea
  • CaspianSea
  • 2013年09月21日 22:21
  • 34923

java.net.BindException: Cannot assign requested address解决之道

今天在学习webService时,练习一个例子,如下图,url写了本机的IP地址,但是结果报错了 Exception in thread "main" com.sun.xml.internal....
  • u011558902
  • u011558902
  • 2015年11月19日 14:50
  • 7181

udp bind 127.0.0.1出现: Cannot assign requested address" error

最近在写udp方面的通信协议,平台是海思的嵌入式arm处理器上面跑的linux,简单配置的文件系统,程序中有udp bind 127.0.0.1的地方,出现: Cannot assign reques...
  • fenzhi1988
  • fenzhi1988
  • 2015年08月17日 09:02
  • 1069

Tomcat Cannot assign requested address: JVM_Bind 非端口占用冲突

最近朋友遇到在安装并启动Tomcat 6.0时,发现一直无法正确启动,主要异常堆栈信息如下: 严重: StandardServer.await: create[8005]: java.net.Bin...
  • wyc_cs
  • wyc_cs
  • 2013年11月18日 10:36
  • 3938
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Cannot assign requested address
举报原因:
原因补充:

(最多只允许输入30个字)