centos – 为什么dhclient每15秒发出一次单播DHCPREQUEST而不是T1 / T2定时器?

前端之家收集整理的这篇文章主要介绍了centos – 为什么dhclient每15秒发出一次单播DHCPREQUEST而不是T1 / T2定时器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在运行CentOS 6.2服务器作为我的网关和防火墙,同时还提供一些内部服务.这是我多年来使用各种硬件和发行版(基于redhat)的设置.最近我遇到了互联网连接问题,我认为这是由于我的ISP(Roadrunner,纽约州北部)或我的配置(默认)为dhclient的缺陷造成的.

我没有在此服务器上使用NetworkManager,因为网络配置是静态的,服务器作为网关全天候运行.我有我的sysconfig网络脚本接口配置如下:

通过dhclient实用程序在启动时配置接口并使用DHCP.我有一个有效的iptables防火墙脚本,我一直在不断努力提供路由/ NAT功能,但这与我的问题无关.

在过去的一两周内(至少,我已经看到这些日志条目开启和关闭了一段时间)我看到,一旦从我的ISP提供的DHCP租约到达中途点,触发更新,dhclient进入一个循环,每一个15秒后,它向/var/lib/dh​​client/dhclient-eth1.leases文件中指定的DHCP服务器条目发出单播DHCPREQUEST(见下文).这将持续数小时,直到网络连接断开或最终尝试广播发现并正确接收新租约.

dhclient请求循环始终是单播的,始终使用它尝试续订的租约中指定的DHCP服务器地址,并且它始终对每个请求使用相同的xid值.我想知道,有没有办法强制dhclient始终发出广播DHCPDISCOVER而不是单播REQUEST数据包进行续订?是否存在可能的配置问题,或者这只是Time Warner的片状DHCP服务?在过去的5年里,我使用TWC作为我的ISP,在使用Linux作为网关时从未遇到过这个问题.

这是我的界面配置脚本:

/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
NAME=Internet
HWADDR=00:D0:B7:**:**:**
MTU=1500
BOOTPROTO=dhcp
PEERDNS=no
IPV6INIT=no
ONBOOT=yes

这是一个示例dhclient-eth1.leases文件(当前,但将在~6-8小时内启动循环)

lease {
interface "eth1";
fixed-address 74.***.***.***;
option subnet-mask 255.255.240.0;
option routers 74.***.***.***;
option dhcp-lease-time 43200;
option dhcp-message-type 5;
option domain-name-servers 209.18.47.61,209.18.47.62;
option dhcp-server-identifier 10.111.64.1;
option interface-mtu 576;
option broadcast-address 255.255.255.255;
option domain-name "rochester.rr.com";
renew 3 2012/01/18 21:51:02;
rebind 4 2012/01/19 02:57:58;
expire 4 2012/01/19 04:27:58;
}

以及关于此问题的/ var / log / messages的摘录(从大约上午12:30开始,一直持续到今天上午11:30:

… DHCPREQUEST的长列表几乎与下面相同

Jan 17 16:50:59 server dhclient[1384]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x54a5b374)
Jan 17 16:51:13 server dhclient[1384]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x54a5b374)
Jan 17 16:51:21 server dhclient[1384]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x54a5b374)
Jan 17 16:51:31 server dhclient[1384]: DHCPREQUEST on eth1 to 255.255.255.255 port 67 (xid=0x54a5b374)
Jan 17 16:51:31 server dhclient[1384]: DHCPACK from 10.111.64.1 (xid=0x54a5b374)
Jan 17 16:51:31 server dhclient[1384]: bound to 74.69.54.153 -- renewal in 17309 seconds.

这似乎成功,最终,在一长串尝试之后得到了一个DHCPACK

昨天晚上7:30左右,在16:51超过上面的日志条目,并且由于其他原因甚至重新启动服务器,这导致下面的REQUEST行.

Jan 17 20:11:51 server dhclient[3872]: DHCPREQUEST on eth1 to 255.255.255.255 port 67 (xid=0x4a4507ce)
Jan 17 20:11:51 server dhclient[3872]: DHCPACK from 10.111.64.1 (xid=0x4a4507ce)
Jan 17 20:11:51 server dhclient[3872]: bound to 74.69.54.153 -- renewal in 17073 seconds.
Jan 18 00:56:24 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 00:56:32 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 00:56:46 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 00:57:04 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 00:57:24 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)

….每隔约15秒遗漏几个小时和许多行以上
这是我手动调低界面的地方.

Jan 18 11:27:29 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 11:27:45 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 11:27:52 server dhclient[3917]: DHCPREQUEST on eth1 to 10.111.64.1 port 67 (xid=0x4a4507ce)
Jan 18 11:27:58 server dhclient[16174]: DHCPREQUEST on eth1 to 255.255.255.255 port 67 (xid=0x63741216)
Jan 18 11:27:58 server dhclient[16174]: DHCPACK from 10.111.64.1 (xid=0x63741216)
Jan 18 11:27:58 server dhclient[16174]: bound to 74.69.54.153 -- renewal in 19384 seconds.

我一直有一些关于我的防火墙碎片的MTU问题,但这似乎不是这里的根本原因,如果有的话,这将是一个单独的问题.

我在同一个ISP(RoadRunner)遇到了同样的问题.看起来RR提供了无效或无法访问的dhcp-server-identifier主机IP.如果ISP解决了这个问题会很好,你可以在/etc/dhcp/dhclient.conf中添加以下内容(在你的发行版中可能有不同的位置):
interface "ethX" {
   supersede dhcp-server-identifier 255.255.255.255;
}

这将导致客户端忽略响应中提供的dhcp服务器的IP地址,并为DHCPREQUEST发送广播.这是一个黑客.它可能违反了管理的RFC,但它适用于我.

原文链接:https://www.f2er.com/centos/373651.html

猜你在找的CentOS相关文章