當(dāng)前位置 主頁(yè) > 技術(shù)大全 >
雖然不同Linux發(fā)行版和網(wǎng)絡(luò)管理工具可能有所差異,但使用命令行配置DNS依然是一個(gè)普遍且有效的方法
本文將詳細(xì)介紹如何使用命令行在Linux中配置DNS,并提供多種方法和步驟,確保你能夠成功完成配置
一、打開終端 首先,你需要打開終端應(yīng)用程序以訪問命令行
在大多數(shù)Linux系統(tǒng)中,你可以使用快捷鍵Ctrl + Alt + T來快速打開終端,或者在應(yīng)用程序菜單中搜索“終端”并打開它
二、編輯resolv.conf文件 resolv.conf文件是Linux系統(tǒng)中用于配置DNS的主要文件,通常位于/etc目錄下
你可以使用任何文本編輯器來打開和編輯這個(gè)文件,例如vi、nano等
1.使用vi編輯器: 在終端中輸入以下命令來打開resolv.conf文件: bash sudo vi /etc/resolv.conf 按回車鍵后,系統(tǒng)會(huì)提示你輸入root用戶的密碼
輸入正確密碼后,vi編輯器將打開resolv.conf文件
2.使用nano編輯器: 如果你更喜歡nano編輯器,可以使用以下命令: bash sudo nano /etc/resolv.conf 同樣,輸入root密碼后,nano編輯器將打開resolv.conf文件
三、添加DNS服務(wù)器地址 在打開的resolv.conf文件中,你會(huì)看到類似以下內(nèi)容的行: Generated by NetworkManager 這些行是注釋行,不會(huì)影響DNS配置
你需要在文件底部添加你想要設(shè)置的DNS服務(wù)器地址
例如: nameserver 8.8.8.8 nameserver 8.8.4.4 這里的8.8.8.8和8.8.4.4是Google提供的公共DNS服務(wù)器地址
你可以根據(jù)需要添加其他DNS服務(wù)器地址,每個(gè)地址占一行
四、保存并關(guān)閉文件 在vi編輯器中,按下Esc鍵退出插入模式,然后輸入`:wq`并按回車鍵保存并退出文件
在nano編輯器中,你可以直接按Ctrl + X,然后按Y確認(rèn)保存并退出文件
五、檢查DNS配置 配置完成后,你可以使用cat命令來檢查resolv.conf文件中的DNS設(shè)置: cat /etc/resolv.conf 該命令將顯示你剛剛添加的DNS服務(wù)器地址
六、重啟網(wǎng)絡(luò)服務(wù) 為了使新的DNS設(shè)置生效,你需要重啟網(wǎng)絡(luò)服務(wù)
不同的Linux發(fā)行版可能使用不同的命令來重啟網(wǎng)絡(luò)服務(wù)
以下是一些常見的命令: 1.使用systemctl命令: bash sudo systemctl restart network 或者 bash sudo systemctl restart NetworkManager 2.使用service命令: bash sudo service network restart 3.對(duì)于使用systemd-resolved的系統(tǒng): 如果你使用的是systemd-resolved服務(wù)來管理DNS解析,你需要重啟該服務(wù): bash sudo systemctl restart systemd-resolved 七、驗(yàn)證DNS設(shè)置 配置完成后,你可以使用ping命令或nslookup命令來驗(yàn)證DNS設(shè)置是否生效
例如: ping www.example.com 或者 nslookup www.example.com 如果DNS設(shè)置正確,你應(yīng)該能夠成功解析域名并獲得目標(biāo)主機(jī)的IP地址
八、使用NetworkManager配置DNS 對(duì)于使用NetworkManager作為網(wǎng)絡(luò)管理工具的系統(tǒng),你可以通過nmcli命令行工具來配置DNS
1.查看當(dāng)前DNS配置: bash nmcli dev show | grep IP4.DNS 2.設(shè)置DNS服務(wù)器地址: 假設(shè)你要為名為eth0的網(wǎng)絡(luò)接口設(shè)置DNS服務(wù)器地址,可以使用以下命令: bash nmcli con mod eth0 ipv4.dns 8.8.8.8 8.8.4.4 然后保存并重新加載網(wǎng)絡(luò)連接: bash nmcli con up eth0 3.添加DNS搜索域: 你還可以為網(wǎng)絡(luò)接口添加DNS搜索域: bash nmcli con mod eth0 ipv4.dns-search example.com 九、使用systemd-resolved配置DNS 對(duì)于使用systemd-resolved服務(wù)的系統(tǒng),你可以通過編輯systemd-resolved的配置文件來設(shè)置DNS
1.編輯配置文件: bash sudo nano /etc/systemd/resolved.conf 2.修改DNS設(shè)置: 在文件中找到`DNS=`這行,并將其修改為你要使用的DNS服務(wù)器地址
例如: plaintext DNS=8.8.8.8 8.8.4.4 3.重啟systemd-resolved服務(wù): bash sudo systemctl restart systemd-resolved 十、臨時(shí)修改DNS配置 如果你只需要臨時(shí)更改DNS配置,可以使用echo命令來直接修改resolv.conf文件
例如: sudo echo nameserver 8.8.8.8 > /etc/resolv.conf 這個(gè)命令將8.8.8.8設(shè)置為DNS服務(wù)器地址,但修改后只在當(dāng)前會(huì)話中生效,重啟后會(huì)恢復(fù)為原來的配置
十一、注意事項(xiàng) 1.持久化設(shè)置: 直接編輯resolv.conf文件在某些Linux發(fā)行版中可能不是持久化的,因?yàn)樵S多現(xiàn)代發(fā)行版會(huì)在網(wǎng)絡(luò)連接時(shí)自動(dòng)重寫該文件
為了確保DNS設(shè)置持久生效,你應(yīng)該根據(jù)你使用的網(wǎng)絡(luò)管理工具(如NetworkManager或systemd-resolved)進(jìn)行相應(yīng)的配置
2.不同發(fā)行版的差異: 不同的Linux發(fā)行版可能有不同的網(wǎng)絡(luò)配置工具和配置文件路徑
例如,Ubuntu通常使用NetworkManager和/etc/network/interfaces文件(在某些版本中已棄用),而CentOS可能使用network-scripts目錄中的配置文件
因此,在設(shè)置DNS時(shí),你需要根據(jù)你使用的Linux發(fā)行版和版本來選擇適合的方法
3.備份配置文件: 在修改任何配置文件之前,最好先備份原始文件
這樣,如果配置出現(xiàn)問題,你可以輕松地恢復(fù)到原始設(shè)置
4.測(cè)試DNS解析: 配置完成后,務(wù)必使用ping、nslookup或dig等命令來測(cè)試DNS解析是否成