Networking
使用靜態 IP 地址時是否需要 /etc/resolv.conf?
我正在嘗試配置我的嵌入式設備的 IP 地址。設備應該有一個靜態 IP 地址,我嘗試使用
/etc/network/interfaces
文件來設置它iface eth0 inet static address 192.168.255.212 netmask 255.255.255.0 gateway 192.168.255.1
我們的網路技術人員給了我這些值。我的系統是一個使用 buildroot、uClibc 和 busybox 建構的最小嵌入式系統。使用此
interfaces
文件,呼叫ifconfig eth0
顯示上述設置已正確啟用,但我無法 ping 網路上的任何內容。我的問題確實是這樣的:上述interfaces
文件是否足以設置靜態 IP 還是更必要的?從線上教程中,我看到很多提及/etc/hosts
和/etc/resolv.conf
文件。我的系統上什至沒有/etc/resolv.conf
文件。我遇到了此處描述的其他問題Unable to get embedded device to ping any on the network,所以我單獨提出這個問題,以驗證我是否正確設置了靜態 IP 地址並排除了不正確的設置。編輯的輸出
route
是Destination Gateway Genmask Flags Metric Ref Use Iface default 192.268.255.1 0.0.0.0 UG 0 0 0 eth0 192.18.255.0 * 255.255.255.0 U 0 0 0 eth0
但我什至無法 ping 網關
/etc/resolv.conf
是 DNS 客戶端配置的一部分(最簡單的形式是 libc 的一部分),它告訴它在解析 DNS 查詢時要詢問哪些伺服器。如果您可以在沒有 DNS 的情況下生活,即對所有內容都使用 IP 地址,包括將這些內容硬編碼為/etc/hosts
.,那麼您將不需要它。一旦您需要使用 DNS 解析主機名,您將需要它。要設置連接,您需要:
- 啟動設備
- 將 IP 分配給設備
- 配置路由 - 創建到網關的路由,通過網關添加預設路由。