Linux
如何從核心命令行添加虛擬網路 IP 地址?
我想添加一個虛擬 IP 地址,你通常會這樣做:
ifconfig eth0:0 192.168.1.1
(或通過
/etc/network/interfaces
)。但是,我想從核心命令行執行它,它具有命令格式:ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>
但是,虛擬 IP 名稱的格式使用冒號,這與核心命令行格式相衝突。例如,以下非虛擬設備
eth0
可以工作:ip=192.168.1.1:::::eth0:::
但是如果我想使用虛擬設備
eth0:0
,以下方法不起作用:ip=192.168.1.1:::::eth0:0:::
(而且我沒想到會這樣,因為額外的冒號會與格式混淆)。注意:在這種情況下不起作用意味著它仍然配置
eth0
設備,而不是eth0:0
設備。有沒有辦法做到這一點?
這似乎不可能。
ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>
只有一個
client-ip
。Linux IP-Aliasing 文件說不推薦使用冒號形式。
並且該
ip
選項僅將:
其視為單詞分隔符,而沒有提供任何特殊方式來轉義文字:
。https://github.com/torvalds/linux/blob/master/net/ipv4/ipconfig.c#L1614