linux dhcp 续租失败,DHCP租约到期自动续租问题导致TCP连接异常

DHCP

简单的来说,DHCP是一个局域网协议,使用UDP协议进行工作,它的作用就是动态的分配IP地址,Gateway地址,DNS服务器地址等信息,一旦租约到期,那么路由器就会把当前的这个ip分配给其他设备使用,所以,对于设备而言要定期请求DHCP Server来更新ip地址信息,保证ip地址有效可用

DHCP租约到期,设备不会自动进行续租而仍然使用旧的ip地址

DHCP租约到期,设备向DHCP Server发起请求,但是没有收到Ack

遇到如上情况会导致ip无法更新,所以设备仍然会使用旧的ip,对于tcp连接来说,使用旧的过期ip就意味着连接不到远程服务器,从我们的日志信息中可以得知,当TCP使用过期的ip去连接远程服务器的时候会报如下异常:java.net.NoRouteToHostException: No route to host,意思是说没有可达Host的路由,确实是这样的,设备连接无线网是连接到路由器上的,而路由器上分配给设备的ip已经过期不可用,那么设备到路由器的链路是通的,但是路由器到远程主机的链路肯定是不通的,所以会报如上错误

正常情况下,我们的Android设备在处于熄屏的状态下,DHCP的租约是1个小时,所以会每隔半小时就请求DHCP Server来更新ip地址:

Line 30221: 09-11 12:58:51.016 1835 3789 D DhcpClient: Unicasting DHCPREQUEST ciaddr=172.28.88.48 request=0.0.0.0 serverid=null to /1.1.1.1:67

Line 30227: 09-11 12:58:51.246 1835 3791 D DhcpClient: Received packet: 00:0a:f5:43:d8:7c ACK: your new IP /172.28.88.48, netmask /255.255.248.0, gateways [/172.28.88.254] DNS servers: /114.114.114.114 /172.28.1.28 /8.8.8.8 /172.28.1.26 , lease time 3600

Line 30228: 09-11 12:58:51.247 1835 3789 D DhcpClient: Renewed lease: IP address 172.28.88.48/21 Gateway 172.28.88.254 DNS servers: [ 114.114.114.114 172.28.1.28 8.8.8.8 172.28.1.26 ] Domains dw.gdbbk.com DHCP server /1.1.1.1 Vendor info ������ lease 3600 seconds

Line 30228: 09-11 12:58:51.247 1835 3789 D DhcpClient: Renewed lease: IP address 172.28.88.48/21 Gateway 172.28.88.254 DNS servers: [ 114.114.114.114 172.28.1.28 8.8.8.8 172.28.1.26 ] Domains dw.gdbbk.com DHCP server /1.1.1.1 Vendor info ������ lease 3600 seconds

Line 30243: 09-11 12:58:51.252 1

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值