Назад | Перейти на главную страницу

Связь с виртуальной машиной Linux прекращается при подключении второго сетевого интерфейса

Я занимаюсь тестированием мобильного устройства и хочу протестировать его по сети. Мобильное устройство будет подключаться к сетям только через Wi-Fi и не поддерживает режим ad-hoc, поэтому я установил старый WiFi-маршрутизатор в качестве точки доступа, который подключен через Ethernet к порту на моем ноутбуке. Маршрутизатор работает под 192.168.0.0/24.

Мой ноутбук также подключен к нашей обычной сети через другой порт Ethernet. Эта сеть работает под 10.0.2.0/24 и обеспечивает подключение к Интернету.

На моем ноутбуке работает виртуальная машина с двумя сетевыми адаптерами, каждая из которых подключена к двум соответствующим физическим сетевым адаптерам. Сеть 10.0.2.0 доступна через eth0, а сеть 192.168.0.0 доступна через eth1.

Проблема, с которой я столкнулся, заключается в том, что вся связь падает, как только я запускаю ifup eth1. Я пробовал изменить таблицы маршрутизации и метрики адаптера, но безуспешно.

Вот результат ifconfig -a:

eth0      Link encap:Ethernet  HWaddr 08:00:27:04:7a:b7  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe04:7ab7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:18135 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11076 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12226743 (12.2 MB)  TX bytes:1047606 (1.0 MB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:96:cf:1c  
          inet addr:192.168.0.5  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe96:cf1c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1803 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1439 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:166923 (166.9 KB)  TX bytes:118391 (118.3 KB)

Вот моя таблица маршрутизации:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 eth1
0.0.0.0         10.0.2.2        0.0.0.0         UG    100    0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1

И выход из ip route:

default via 192.168.0.1 dev eth1  metric 100 
default via 10.0.2.2 dev eth0  metric 100 
10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15 
192.168.0.0/24 dev eth1  proto kernel  scope link  src 192.168.0.5 

Идеи? Я не любитель Linux, поэтому меня это озадачило.


Редактировать:

# cat /etc/network/interfaces 

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp

auto eth2
iface eth2 inet dhcp

auto ath0
iface ath0 inet dhcp

auto wlan0
iface wlan0 inet dhcp

Выход из ip route после падения eth1 маршрут по умолчанию:

default via 10.0.2.2 dev eth0  metric 100 
10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15 
192.168.0.0/24 dev eth1  proto kernel  scope link  src 192.168.0.5 

Я не так хорошо знаком с Debian, но то, что говорит TheCleaner, - это, как мне кажется, ваша проблема. При настройке интерфейса eth1 вы добавили «новый» маршрут по умолчанию, который мешает уже существующему маршруту по умолчанию. Если вы удалите этот маршрут «по умолчанию» из eth1, все будет в порядке - я просто не знаю, как сказать вам удалить этот бит конфигурации в ОС, подобной Debian.

Ваша проблема в DHCP. Даже если вы не можете отключить сервер, вы можете не запрашивать у него адрес и выбрать его самостоятельно:

когда eth1появляется, он автоматически добавляет второй шлюз по умолчанию, который не должен быть шлюзом по умолчанию, ошибка DHCP.

Вам нужно отредактировать / etc / network / interfaces и изменить:

auto eth1
iface eth1 inet dhcp

по :

auto eth1
iface eth0 inet static
address 192.168.0.200
netmask 255.255.255.0

Обратите внимание, что есть нет указан шлюз, и «200» выбирается случайным образом с надеждой на выход за пределы диапазона DHCP. Тогда ты можешь сделать ifdown eth1/ ifup eth1.

Если у вас все еще есть проблемы на этом этапе, обновите выходные данные ifconfig, ip route -a и cat /etc/network/interfaces