セカンダリIPアドレスに一意のMacアドレスがありますか?

セカンダリIPアドレスに一意のMacアドレスがありますか?

1つの物理ネットワークカードを持つUbuntuシステムを使用して、自分のシステムに複数のシステムがあるように見せたいと思います。本物ネットワークはすべてこのUbuntuシステムによって制御されます。

たとえば、192.168.1.xネットワークがあります。私のUbuntuコンピュータのIPは192.168.1.10で、macアドレスは00:11:22:33:44:55です. IPアドレスが192.168.1.11で、Macアドレスが55:44:33:22:11の別の「マシン」を展開したいと思います。

したがって、192.168.1.9でローカルネットワークをarpスキャンすると、次の情報が表示されます。

...
192.168.1.10     00:11:22:33:44:55
192.168.1.11     55:44:33:22:11:00
...

どちらのシステムも、物理ネットワーク上の他の物理システムのpingに応答する必要があります。アイデアは、192.168.1.9が.10と.11を持つように見えるようにすることです。2つの別々の機械実際のネットワークで。

追加の仮想マシンやDockerコンテナを作成せずにこの「マシン」を作成するための比較的単純なコマンドセットを探しています。

助けてくれてありがとう!

答え1

アドレスが192.168.1.175のシステムがあります。

# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 2c:f0:5d:c9:12:a9 brd ff:ff:ff:ff:ff:ff
    altname eno2
    altname enp0s31f6
    inet 192.168.1.175/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
       valid_lft 80184sec preferred_lft 80184sec
    inet6 fe80::ed9c:756f:92a:ef21/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

アドレスが192.168.1.190のmacvlanインターフェイスを追加し、そのインターフェイスに異なるMACアドレスがあることを証明します。

ネットワーク名前空間を作成します。

ip netns add ns0

プライマリNICに接続されたmacvlanデバイスを作成し、それをns0名前空間に配置します。

ip link add macvlan0 netns ns0 link eth0 type macvlan mode bridge

これにより、次のような結果が得られます。

# ip -n ns0 link show macvlan0
6386: macvlan0@eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether c2:f9:01:dd:eb:95 brd ff:ff:ff:ff:ff:ff

新しいインターフェイスにアドレスを割り当てます。

ip -n ns0 addr add 192.168.1.190/24 dev macvlan0

そしてインターフェースを呼び出します。

ip -n ns0 link set macvlan0 up

ネットワークの他のシステムでは:

pi@retropie:~ $ sudo arp-scan 192.168.1.175 192.168.1.190
Interface: wlan0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.9.5 with 2 hosts (https://github.com/royhills/arp-scan)
192.168.1.175   2c:f0:5d:c9:12:a9       (Unknown)
192.168.1.190   c2:f9:01:dd:eb:95       (Unknown)

3 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.9.5: 2 hosts scanned in 4.221 seconds (0.47 hosts/sec). 2 responded

新しいアドレスにpingを送信することもできます。

pi@retropie:~ $ ping 192.168.1.190
PING 192.168.1.190 (192.168.1.190) 56(84) bytes of data.
64 bytes from 192.168.1.190: icmp_seq=1 ttl=64 time=25.3 ms
64 bytes from 192.168.1.190: icmp_seq=2 ttl=64 time=13.5 ms
64 bytes from 192.168.1.190: icmp_seq=3 ttl=64 time=10.5 ms
^C
--- 192.168.1.190 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 6ms
rtt min/avg/max/mdev = 10.520/16.424/25.270/6.371 ms

関連情報