1

В соответствии с этим руководством я установил и настроил маршрутизатор OpenWRT поверх виртуальной машины в virtualbox. Но я настроил три интерфейса вместо двух к гостевой машине.

eth1 настроен как мостовой адаптер для доступа в интернет.

eth0 и eth2 настроены как внутренние сетевые интерфейсы.

Для тех, кто не знаком с виртуализацией, это будет точно так же, как физическая машина с 3 сетевыми картами, в то время как одна подключена к внешней локальной сети, а две другие - к чему-либо другому (компьютер, ТВ-бокс и т.д.).

Проблема в том, что я не могу правильно соединить eth0 и eth2. Я получаю DHCP на обоих интерфейсах, но только интернет на одном из них (eth0). Кроме того, тот, у кого нет интернета, не может пропинговать шлюз (192.168.1.1) или любой другой хост, поэтому я предполагаю, что это проблема маршрутизации или что-то в этом роде.

Вот конфиг роутеров:

root@OpenWrt:~# cat /etc/config/network

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config interface 'lan'
    option gateway '192.168.1.1'
    option type 'bridge'
    option proto 'static'
    option ipaddr '192.168.1.1'
    option netmask '255.255.255.0'
    option ip6assign '60'
    option _orig_ifname 'eth0 eth2'
    option _orig_bridge 'true'
    option ifname 'eth0 eth2'

config interface 'wan'
    option ifname 'eth1'
    option proto 'dhcp'

config interface 'wan6'
    option ifname 'eth1'
    option proto 'dhcpv6'

config globals 'globals'
    option ula_prefix 'fd43:be0a:1a40::/48'


root@OpenWrt:~# cat /etc/config/dhcp

config dnsmasq
    option domainneeded '1'
    option boguspriv '1'
    option filterwin2k '0'
    option localise_queries '1'
    option rebind_protection '1'
    option rebind_localhost '1'
    option local '/lan/'
    option domain 'lan'
    option expandhosts '1'
    option nonegcache '0'
    option authoritative '1'
    option readethers '1'
    option leasefile '/tmp/dhcp.leases'
    option resolvfile '/tmp/resolv.conf.auto'
    option localservice '1'

config dhcp 'lan'
    option interface 'lan'
    option start '100'
    option limit '150'
    option leasetime '12h'
    option dhcpv6 'server'
    option ra 'server'
    option ra_management '1'

config dhcp 'wan'
    option interface 'wan'
    option ignore '1'

config odhcpd 'odhcpd'
    option maindhcp '0'
    option leasefile '/tmp/hosts/odhcpd'
    option leasetrigger '/usr/sbin/odhcpd-update'

Выходные данные brctl шоу:

root@OpenWrt:~# brctl show
bridge name bridge id       STP enabled interfaces
br-lan      7fff.080027133027   no      eth0
                                        eth2

И ifconfig:

root@OpenWrt:~# ifconfig
br-lan    Link encap:Ethernet  HWaddr 08:00:27:13:30:27
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fd43:be0a:1a40::1/60 Scope:Global
          inet6 addr: fe80::a00:27ff:fe13:3027/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6116 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6305 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:549793 (536.9 KiB)  TX bytes:9147104 (8.7 MiB)

eth0      Link encap:Ethernet  HWaddr 08:00:27:13:30:27
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6211 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9142 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:642539 (627.4 KiB)  TX bytes:13486722 (12.8 MiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:84:95:30
          inet addr:192.168.0.44  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe84:9530/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8215 errors:0 dropped:12 overruns:0 frame:0
          TX packets:4269 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8732792 (8.3 MiB)  TX bytes:455021 (444.3 KiB)

eth2      Link encap:Ethernet  HWaddr 08:00:27:FA:D4:2F
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:516 (516.0 B)  TX bytes:2752 (2.6 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:66 errors:0 dropped:0 overruns:0 frame:0
          TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:5701 (5.5 KiB)  TX bytes:5701 (5.5 KiB)

Вывод маршрута:

root@OpenWrt:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth1
192.168.0.0     *               255.255.255.0   U     0      0        0 eth1
192.168.0.1     *               255.255.255.255 UH    0      0        0 eth1
192.168.1.0     *               255.255.255.0   U     0      0        0 br-lan

Как правильно соединить eth0 и eth2 для доступа к Интернету / локальной сети так же, как обычный интерфейс локальной сети маршрутизатора? Похоже, я что-то упустил.

Обновление: только что взглянул на таблицу arp в OpenWRT и заметил, что DFGW 192.168.1.1 не имеет записи. Может ли это быть одной из проблем?

root@OpenWrt:~# arp
IP address       HW type     Flags       HW address            Mask     Device
192.168.1.147    0x1         0x2         08:00:27:cc:b8:55     *        br-lan
192.168.0.44     0x1         0x0         00:00:00:00:00:00     *        br-lan
192.168.0.40     0x1         0x2         78:24:af:41:89:b9     *        eth1
192.168.1.215    0x1         0x2         08:00:27:df:61:b1     *        br-lan
192.168.0.1      0x1         0x2         10:da:43:c3:6e:66     *        eth1
192.168.0.1      0x1         0x0         00:00:00:00:00:00     *        br-lan
192.168.1.2      0x1         0x2         08:00:27:c3:58:80     *        br-lan

1 ответ1

0

Просто решил это самостоятельно. Оказывается, я обдумал все решение. Нужен только один интерфейс. Я назначил физический интерфейс хоста виртуальным машинам. Таким образом, вместо создания одного моста для внутренней сети виртуальных машин, я просто использовал один и тот же интерфейс для всего. Все виртуальные и физические машины теперь совместно используют одну и ту же локальную сеть, подключенную к OpenWRT, назначая IP-адреса и выступая в качестве DNS-сервера пересылки. Не уверен, как я не думал об этом решении ранее.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .