樹莓派手動指定靜態IP和DNS 終極解決大法
阿新 • • 發佈:2019-02-13
在把玩樹莓派的過程中,往往需要手動給它設定一個靜態的IP地址,一來可以防範DHCP自動分配的IP來回變動,導致遠端SSH時常無法連線;二來還可以提高樹莓派的網路連線速度。
對此菲菲君在網上查了很多資料,大多數方法都是修改 /etc/network/interfaces 配置檔案,增加靜態IP的設定。的確對於 Debian 系的 Linux 系統來說,不都是這樣修改滴嘛?
不過馬上就發現了一個問題,那就是通過修改 interfaces 設定靜態IP的方法,並不完美,即便取得了靜態IP,DHCP 服務依然會自動為樹莓派分配動態 IP 和 DNS 地址,導致路由表預設網關出現衝突,以及手動給定的預設 DNS 不生效的情況。
解決樹莓派靜態IP和DNS難題的終極方法
其實解決起來特別簡單,人家已經在 interfaces 檔案的開頭註釋裡告訴我們了要修改靜態IP地址,需要修改的是 /etc/dhcpcd.conf 也就是 DHCP 的配置檔案。
檢視官方文件 man dhcpcd.conf 可知,需要配置 static IP 的話,只需修改以下引數:
vi /etc/dhcpcd.conf # 使用 vi 編輯檔案,增加下列配置項 # 指定介面 eth0 interface eth0 # 指定靜態IP,/24表示子網掩碼為 255.255.255.0 static ip_address=192.168.1.20/24 # 路由器/閘道器IP地址 static routers=192.168.1.1 # 手動自定義DNS伺服器 static domain_name_servers=114.114.114.114 # 修改完成後,按esc鍵後輸入 :wq 儲存。重啟樹莓派就生效了 sudo reboot
另外注意配置時,你的靜態IP一定要和你的路由器網段一致,比如:假設你的路由器的IP為 192.168.0.x 網段,則上面的 static ip_address 就要對應的修改為 192.168.0.x/24 。還有一點就是你的手動靜態IP要注意不能跟路由器 DHCP 所自動分配的 IP 衝突,否則樹莓派就有可能無法正常聯網。
可用ipconfig檢視路由器地址:
-
然後輸入ipconfig指令,點選Enter鍵,確定
- 彈出的資訊中,找到預設閘道器,對應的即是IP地址了