Case 2 : macvlan
$ lxc config device add rproxy ext nic nictype=macvlan parent=ens224 name=ext
$ lxc shell rproxy
rproxy:~# ip a s ext
29: ext@if3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether XXXXXXX brd ff:ff:ff:ff:ff:ff link-netnsid 0
rproxy:~# ip l s up ext
rproxy:~# ip a a 10.23.254.100/24 dev ext
rproxy:~# ip n sh
10.23.254.104 dev ext FAILED
rproxy:~# ping 10.23.254.254
PING 10.23.254.254 (10.23.254.254) 56(84) bytes of data.
^C
--- 10.23.254.254 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2055ms
rproxy:~# ip n sh
10.23.254.104 dev ext FAILED
10.23.254.254 dev ext FAILED
Meanwhile :
# tcpdump -i ens224 arp or icmp
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 7, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 8, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 9, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 10, length 64 64
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 11, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 12, length 64 64
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 13, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 14, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 15, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 16, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 17, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 18, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 19, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 20, length 64 64
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 21, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 22, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 23, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 24, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 25, length 64 64
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 657, seq 26, length 64 64
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.254, length 46 46
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 659, seq 1, length 64 64
IP 10.23.254.100 > 10.23.254.254: ICMP echo request, id 659, seq 2, length 64 64
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.254 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.1 tell 10.23.254.100, length 28 28
ARP, Request who-has 10.23.254.104 tell 10.23.254.100, length 28 28