Ip
配置 IP 地址的另一種方法
我正在設置一個嵌入式 linux 設備,它應該在啟動時從文件系統中的文件中獲取其 IP 地址和 MAC 地址。假設有一個文件
/root/ipaddress
,其內容只有 “192.168.10.10” 和/root/macaddress
“02:02:02:02:02:02” 。其餘的配置不應該是可配置的。目前,網路配置是通過 完成的
ifup -i /etc/interfaces -a
,其中 IP 地址在節中定義:# The loopback network interface #auto lo #iface eth0 inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.10.10 netmask 255.255.255.0
我試圖在 /etc/interfaces 文件中使用環境變數但沒有成功。
我可以使用命令建構一個腳本
ip
,在其中我會再次關閉介面,配置 IP 和 MAC 地址,然後再次啟動它。但是,這似乎效率很低。
ifupdown
一組腳本並非旨在以這種方式工作。相反,您可以:
- 停止使用
ifupdown
並管理自己在專用腳本中配置網路。(我可能會選擇這個選項)- 使用 的
post-up
特性ifupdown
,這樣:iface eth0 inet static pre-up ifconfig eth0 hw ether `cat /root/macaddress` address 0.0.0.0 netmask 255.255.255.0 post-up ifconfig eth0 `cat /root/ipaddress`
請注意,我沒有測試 post-up 是否能夠管理反引號結構。..
也許你也可以探勘
manual
方法(而不是static
)……