[EDIT]
В даний час виробнича система - це змішана фізична система та система на базі ESXi. Ми, очевидно, ніколи не будемо використовувати virtualbox навіть для попереднього виробництва! Тут він використовувався лише для швидкого звуження проблеми безпосередньо на моєму робочому столі.
Дякуємо за пояснення щодо "затриманого" на мета!
[/ EDIT]
Моя установка:
- Приватна мережа
vboxnet1
10.0.7.0/24 - 1 Хост, робочий стіл ubuntu
- 1 VM, сервер ubuntu (VirtualBox)
Розміщення адреси:
- ХОСТ: 10.0.7.1
- ВМ: 10.0.7.101
- VM MAC ІМЕННЯ : 10.0.7.102
У програмі VM
я запустив наступні команди:
ip netns add mac # create a new nmespace
ip link add link eth0 mac0 type macvlan # create a new macvlan interface
ip link set mac0 netns mac
У mac
просторі імен всередині VM:
ip link set lo up
ip link set mac up
ip addr add 10.0.7.102/24 dev mac0
Так що ми в основному закінчуємо:
+------------------------+
| Host: 10.0.7.1 |
| |
| +--------------------+ |
| | VM: 10.0.7.101 | |
| | | |
| | +----------------+ | |
| | | NS: 10.0.7.102 | | |
| | | | | |
| | +----------------+ | |
| +--------------------+ |
+------------------------+
Що працює:
- Пінг між
Host
іVM
- Пінг між
NS
іNS
- dhclient від
NS
Що не працює:
- ping між
NS
таVM
- ping між
NS
таHost
Звідки я почав гаяти:
- tcpdump на
host
(справжня машина) фактично показує запит ARP І відповіді - tcpdump
NS
показує ARP-запити, надіслані хосту - tcpdump на
VM
змушує працювати весь безлад (!) -> ping починає отримувати відповіді, коли tcpdump запускається на VM?!?
Отже, я сумніваюся, що ви прагнули цього, моє питання: як змусити його працювати? Я підозрюю, що щось не так з ARP на macvlan всередині NS, але не можу зрозуміти, що саме ...
До речі, я робив ті ж пояснення з mac0
інтерфейсом безпосередньо на VM (немає простору імен), і він працював бездоганно.