У меня есть виртуальная машина Azure Linux, скажем, VM1, имеющая только один сетевой интерфейс с частным IP-адресом 10.3.0.5
, у меня есть другая виртуальная машина Linux Azure, скажем, VM2 с двумя сетевыми интерфейсами, частный IP на основном сетевом интерфейсе 10.3.5.4
, частныйIP на вторичном сетевом интерфейсе 10.3.4.4
.Теперь я могу пропинговать VM2 от VM1 на первичном сетевом интерфейсе VM2 как ping 10.3.5.4
, но я не могу пропинговать его на вторичном сетевом интерфейсе как ping 10.3.4.4
.
После чтения документов Azure - https://docs.microsoft.com/en-gb/azure/virtual-machines/linux/multiple-nics#configure-guest-os-for-multiple-nics, говорят, что для этого вам нужно вручную добавить необходимые маршруты.
Аналогичная проблема в Windows VM - https://support.microsoft.com/en-in/help/4048050/troubleshooter-for-azure-vm-connectivity-problems
Вот результат команды route -n
на VM2
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.3.5.1 0.0.0.0 UG 0 0 0 eth0
10.3.4.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
10.3.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
168.63.129.16 10.3.5.1 255.255.255.255 UGH 0 0 0 eth0
169.254.169.254 10.3.5.1 255.255.255.255 UGH 0 0 0 eth0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker_gwbridge
Теперь, согласно приведенным выше документам Azure, отсутствует запись, похожая на эту:
0.0.0.0 10.3.4.1 0.0.0.0 UG 0 0 0 eth1
Я попытался добавить этот маршрут в свою VM2, но после выполнения следующей командымой виртуальный компьютер просто перестал отвечать route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.3.4.1 dev eth1
Как мне добавить правильный маршрут для моей проблемы?Пожалуйста, помогите!