
如何在雲端伺服器上新增特定MAC位址的虛擬網路卡?
我最近購買了一項基於雲端的服務Centos 7
。
我有一個僅在特定 MAC 位址上運行的應用程式。
如何複製此 MAC 位址或使用此 MAC 位址新增另一個虛擬網路卡?
我嘗試添加一個虛擬網卡,例如 eth0:1 ,它添加得很好,但 MAC 位址與 eth0 相同,但是我需要一個不同的 MAC 位址。
答案1
如果您不需要透過它路由任何流量,您可以使用該dummy
介面
例如之前:
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 52:54:00:0c:d8:88 brd ff:ff:ff:ff:ff:ff
現在我們使用該dummy
模組,並得到一個新的介面:
$ sudo modprobe dummy
$ sudo ip link set dummy0 address 10:20:30:40:50:60
$ ip link show dummy0
3: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT
link/ether 10:20:30:40:50:60 brd ff:ff:ff:ff:ff:ff
這已經創建了一個dummy0
用我們請求的 MAC 位址呼叫的介面。
另一種選擇可能是創建一個tap
設備:
$ sudo ip tuntap add dev tap0 mode tap
$ sudo ip link set tap0 address 10:20:30:40:50:61
$ ip link show tap0
4: tap0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 500
link/ether 10:20:30:40:50:61 brd ff:ff:ff:ff:ff:ff
使用tap
設備,您可以將其稱為任何您喜歡的名稱,甚至欺騙並調用它eth1
。