我所在的公司環境有一個 DHCP 伺服器,並且為我的伺服器進行了靜態分配。我有一個帶有多個子介面的實體網卡。我為每個子介面靜態分配不同的 MAC 位址,以便從 DHCP 伺服器取得另一個 IP 位址。由於某種原因,我的伺服器沒有取得靜態 MAC 位址。您會注意到 ifconfig 顯示具有相同 MAC 的每個介面。
如何為我的子介面分配唯一的 MAC 位址?
$貓接口
auto lo
iface lo inet loopback
auto eth0:1
iface eth0:1 inet dhcp
hwaddress ether 00:0c:29:31:24:fa
hostname gwrt-test
client gwrt-test
auto eth0:2
iface eth0:2 inet dhcp
hwaddress ether 00:0c:29:31:25:fa
hostname gwrt-test2
client gwrt-test2
$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:31:25:fa
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:329737 errors:0 dropped:0 overruns:0 frame:0
TX packets:121645 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:69228791 (69.2 MB) TX bytes:63531749 (63.5 MB)
Interrupt:16
eth0:1 Link encap:Ethernet HWaddr 00:0c:29:31:25:fa <- should be 24:fa
inet addr:10.203.102.29 Bcast:10.203.102.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:16
eth0:2 Link encap:Ethernet HWaddr 00:0c:29:31:25:fa
inet addr:10.203.102.32 Bcast:10.203.102.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:16
答案1
答案2
Multimac 可以做到這一點。 (http://www.primianotucci.com/os/multimac)或者您可以使用「ip link」來新增 veth 介面。
在這兩種方法中,您都必須使用 brctl (bridge-utils) 將 veth0 橋接到 eth0。
每個介面(multimac 的tapX 或veth 的vethX)都可以有自訂的mac 位址(ifconfig hw ether xx:xx:xx:xx:xx:xx,介面應該關閉。)
答案3
您可以在 Linux 機器上使用以下命令。
ifconfig eth1.2 down
ifconfig eth1.2 hw ether 00:00:00:02:03:04
ifconfig eth1.2 up