歡迎您光臨本站 註冊首頁

linux下向dhcp伺服器獲取不同的ip

←手機掃碼閱讀     火星人 @ 2014-03-08 , reply:0
在使用dhcp自動獲取ip時發現,經常好多天伺服器都給自己分配的是同一個ip, 這跟自己預想的會隨分配ip有很大的不同.
有一篇文章是如下解釋的
DHCP伺服器優先分發尚未出租的最前IP地址,以後DHCP客戶機每次重新登錄網路時,就不需要再發送DHCP discover發現信息,而是直接發送包含前一次所分配的IP地址的DHCP request請求信息.當DHCP伺服器收到這一信息后,它會嘗試讓DHCP客戶機繼續使用原來的IP地址,並回答一個DHCP ack確認信息.(如果此IP地址已無法再分配給原來的DHCP客戶機使用時(比如此IP地址已分配給其它DHCP客戶機使用),則DHCP伺服器給DHCP客戶機回答一個DHCP nack否認信息.當原來的DHCP客戶機收到此DHCP nack否認信息后,它就必須重新發送DHCP discover發現信息來請求新的IP地址.)另外,DHCP伺服器向DHCP客戶機出租的IP地址一般都有一個租借期限,期滿后DHCP伺服器便會收回出租的IP地址.如果DHCP客戶機要延長其IP租約,則必須更新其IP租約.DHCP客戶機啟動時和IP租約期限過一半時,DHCP客戶機都會自動向DHCP伺服器發送更新其IP租約的信息.

簡而言之就是,客戶機會向伺服器申請上一次自己使用的ip,如果該ip沒有被分配出去,那麼伺服器就把它給你使用.
所以地址池較大而客戶機較少的情況下很容易出現自己n天都使用同一個ip的情況

問題是有時候自己想換個ip用用 又不好辦了 dhclient -r , dhclient 后拿到的還是上一個ip.

在我的gentoo中的/var/lib/dhcp目錄下有個dhclient.leases文件
這裡面就是用戶租約所記錄的信息
gentoo dhcp # cat dhclient.leases
lease {
interface "eth0";
fixed-address 10.16.121.109;
option subnet-mask 255.255.255.192;
option routers 10.16.121.126;


option dhcp-lease-time 7200;
option dhcp-message-type 5;
option domain-name-servers 8.8.8.8;
option dhcp-server-identifier 10.16.121.124;
option broadcast-address 10.16.121.127;
option domain-name "dns";
renew 0 2011/11/20 01:08:58;
rebind 0 2011/11/20 01:08:58;
expire 0 2011/11/20 01:08:58;
}
找到它后,后明白了,dhclient會向伺服器申請這裡面的ip.所以要想換個ip可以把該文件清空,或者直接修改為自己想要ip.

至於windows下該怎麼處理,我暫時沒找到方法.順便求教

本文出自 「厚積薄發」 博客,請務必保留此出處http://ceyes.blog.51cto.com/2377614/719585


[火星人 ] linux下向dhcp伺服器獲取不同的ip已經有784次圍觀

http://coctec.com/docs/linux/show-post-46587.html