РАЗРЕШЕНО, СМ. ИЗМЕНИТЬ ВНИЗ
Я запускаю сервер Ubuntu 16.04.1 на голом железе с несколькими сетевыми адаптерами. В Ubuntu я использую KVM, и на нем у меня есть виртуальная машина, на которой работает сервер Ubuntu 16.
Я хочу создать следующую сетевую структуру:
частная сеть, не доступная для внешней сети, которую будут использовать все мои гостевые виртуальные машины, и с ее помощью хост сможет подключаться к ним по SSH.
мост к некоторым сетевым адаптерам хоста, который я могу подключать и отсоединять, когда мне нужно. на вопрос, скажем, у меня есть 1 сетевая карта, а его IP-адрес - 10.0.0.6, он подключен к маршрутизатору, который подключен к Интернету.
Я думал, что он заработал, но по какой-то причине теперь он не работает, и мои гости могут получить доступ только к сети 10.x.x.x, но не могут получить доступ к внешней сети (нет пинга до 8.8.8.8).
Я думаю, что по какой-то причине только один гость может получить доступ к Интернету одновременно, и, возможно, мне нужно лучше понять концепции моста.
Мой хост / etc / network / interfaces выглядит так:
auto br1
iface br1 inet static
address 10.0.0.6
netmask 255.255.255.0
gateway 10.0.0.138
broadcast 10.0.0.255
dns-nameservers 8.8.8.8 4.2.2.2
bridge_ports eno1
bridge_stp off
bridge_fd 0
bridge_maxwait 0
post-up ip link set br1 address xx:xx..
где вместо xx: xx .. я получил MAC-адрес eno1, а eno1 - это сетевая карта, через которую хост подключен к Интернету, его IP-адрес - 10.0.0.6, а IP-адрес маршрутизатора (фактически, межсетевой экран ..) - 10.0.0.138
Это команда, которую я использую для подключения моста br1 к гостю:
virsh attach-interface server_name --type bridge --source br1 --model virtio --live
Теперь в KVM я определил виртуальную сеть следующим образом:
<network>
<name>privatenet</name>
<uuid>some uuid that the virsh generated</uuid>
<bridge name='privatebr0' stp='on' delay='0'/>
<mac address='52:54:00:36:61:7a'/>
<ip address='192.168.0.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.0.2' end='192.168.0.254'/>
</dhcp>
</ip>
</network>
А теперь мои гости / etc / network / interfaces выглядят так:
auto ens3
iface ens3 inet static
address 192.168.0.22
gateway 192.168.0.1
netmask 255.255.255.0
broadcast 192.168.0.255
auto ens8
iface ens8 inet dhcp
это результат гостей ifconfig:
ens3 Link encap:Ethernet HWaddr 52:54:00:e4:b2:06
inet addr:192.168.0.21 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::5054:ff:fee4:b206/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6066 errors:0 dropped:20 overruns:0 frame:0
TX packets:1100 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:379362 (379.3 KB) TX bytes:566124 (566.1 KB)
ens8 Link encap:Ethernet HWaddr 52:54:00:cc:78:12
inet addr:10.0.0.21 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::5054:ff:fecc:7812/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5494 errors:0 dropped:0 overruns:0 frame:0
TX packets:343 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:804727 (804.7 KB) TX bytes:20928 (20.9 KB)
Я могу пинговать другие компьютеры, подключенные к сети 10.x.x.x, но не могу пинговать 8.8.8.8
что мне не хватает?
РЕДАКТИРОВАТЬ: Хорошо, похоже, что я присоединяю и отсоединяю интерфейсы, из-за чего один и тот же хост будет зарегистрирован с разными MAC-адресами и IP-адресами, и брандмауэру это по какой-то причине не понравилось. Я оставил адреса на брандмауэре и теперь использую --mac в команде присоединения и статический IP.