[Ubuntu/CentOS] 設定 DHCP client 自動加上網域後綴

[Ubuntu/CentOS] 設定 DHCP client 自動加上網域後綴

在公司裡,平常可以連到類似 tw-fileserver 這樣名稱的機器,

最近突然從某一台 Ubuntu 上都連不到,

一直說 Cannot resolve host name 之類的…

 

研究了一下,原來是 tw-fileserver 事實上是有個網域後綴,

所以完整名稱是像 tw-fileserver.tw.mydomain.net,

如果在 Ubuntu 上去連這個名稱就可以了…

可是平常還是習慣直接打短的名稱,有沒有方法自動加上網域的後綴呢?

 

平常若是固定 IP,可以直接去改 /etc/resolv.conf 加上 search 的設定,

可是 DHCP 的話這麼做就沒用了…

下面是我的 /etc/resolv.conf 的內容,可以看到現在沒有 search 的設定:

nameserver 127.0.1.1

 

後來查到了 Ubuntu: Adding search path to DHCP auto-generated /etc/resolv.conf

這邊有提到在 DHCP 模式下,如何達到我想做的事情~

 

1. 編輯 /etc/dhcp/dhclient.conf

打開 /etc/dhcp/dhclient.conf,在裡面加入下面的內容,

記得 tw.mydomain.net 要改成需要的網域後綴:

append domain-search "tw.mydomain.net";

 

2. 讓 DHCP client 更新設定

送一個 HUP 指令給 DHCP client 讓它更新設定:

pkill -HUP dhclient

 

這時網路會頓一下重連,

等好了之後,就可以在 /etc/resolv.conf 裡看到我們剛加的 domain-search 了:

nameserver 127.0.1.1
search tw.mydomain.net

 


如果是在 CentOS 7 上面的話,要修改的設定檔有點不太一樣

(Linxu 這麼多種 distribution 說實話真的有點麻煩…)

 

參考資料:How can I add additional search domains to the resolv.conf created by dhclient in CentOS

 

1. 修改 /etc/sysconfig/network-scripts/ifcfg-em1

這邊的 ifcfg-em1 要看你的網卡是什麼名稱,如果是 eth0 就去改 ifcfg-eth0,

在裡面加上 DOMAIN=”domain1 domain2 domain3″~

在下例中我加了 tw.mydomain.net 和 client.tw.mydomain.net 兩個網域,

有多個網域時,中間用空白隔開就行了:

DOMAIN="tw.mydomain.net client.tw.mydomain.net"

 

2. 重新啟動網卡

使用 ifdown 和 ifup 讓網卡重新啟動:

ifdown em1
ifup em1

 

之後應該可以看到新的 search domain 被加到 /etc/resolve.conf 囉~

 

(本頁面已被瀏覽過 1,409 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料