Маршрутизация между двумя сетями в Linux

Моя топология системы:

На машине с Ubuntu с двумя портами Ethernet (eth0, eth1) я подключил другую машину с Ubuntu в качестве клиента и OCRCamera (также клиент).

требование состоит в том, чтобы основной компьютер Ubuntu был DHCP-сервером и маршрутизатором, чтобы клиент Ubuntu и камера получали IP-адрес от основного компьютера Ubuntu. Клиент ubuntu и камера должны иметь возможность пинговать/ssh друг друга.

с помощью команд nmcli и файла конфигурации в «/etc/dnsmasq.d/X» я настроил eth0 и eth1 на основной машине Ubuntu в общем режиме:

Файл конфигурации «/etc/dnsmasq.d/XXX»:

no-resolv
port=53
bogus-priv
strict-order
expand-hosts

domain=wombat.pixellot.com

# Set Listen address
listen-address=192.168.101.1
dhcp-range=set:group1,192.168.101.10,192.168.101.100,24h
dhcp-option=tag:group1,option:router,192.168.101.1
dhcp-option=tag:group1,option:dns-server,192.168.101.1
dhcp-option=tag:group1,option:netmask,255.255.255.0

listen-address=192.168.102.1
dhcp-range=set:group2,192.168.102.10,192.168.102.100,24h
dhcp-option=tag:group2,option:router,192.168.102.1
dhcp-option=tag:group2,option:dns-server,192.168.102.1
dhcp-option=tag:group2,option:netmask,255.255.255.0

команды nmcli:

sudo nmcli connection add type ethernet ifname eth0 ipv4.method shared con-name EthCon0
sudo nmcli connection add type ethernet ifname eth1 ipv4.method shared con-name EthCon1

sudo nmcli connection modify EthCon0 ipv4.addresses 169.254.101.1/24
sudo nmcli connection modify EthCon1 ipv4.addresses 169.254.101.2/24

sudo nmcli connection up EthCon0
sudo nmcli connection up EthCon1

Вот как выглядит ifconfig на основной машине Ubuntu:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.101.1  netmask 255.255.255.0  broadcast 192.168.101.255
        inet6 fe80::c706:5a57:f51d:a8b0  prefixlen 64  scopeid 0x20<link>
        ether 48:b0:2d:3b:6d:0b  txqueuelen 1000  (Ethernet)
        RX packets 76802  bytes 6700303 (6.7 MB)
        RX errors 0  dropped 8  overruns 0  frame 0
        TX packets 73153  bytes 7426646 (7.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 37  

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.102.1  netmask 255.255.255.0  broadcast 192.168.102.255
        inet6 fe80::cf74:51de:1317:fe42  prefixlen 64  scopeid 0x20<link>
        ether ae:aa:82:3c:08:6c  txqueuelen 1000  (Ethernet)
        RX packets 41  bytes 4289 (4.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 187  bytes 29743 (29.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Клиент Ubuntu и камера, подключенная к eth0 и eth1 соответственно, получили IP-адрес, и доступен пинг:

pixellot@wombat:~$ sudo ping 192.168.101.98
PING 192.168.101.98 (192.168.101.98) 56(84) bytes of data.
64 bytes from 192.168.101.98: icmp_seq=1 ttl=64 time=0.581 ms
64 bytes from 192.168.101.98: icmp_seq=2 ttl=64 time=0.569 ms

pixellot@wombat:~$ sudo ping 192.168.102.32
PING 192.168.102.32 (192.168.102.32) 56(84) bytes of data.
64 bytes from 192.168.102.32: icmp_seq=1 ttl=64 time=0.451 ms
64 bytes from 192.168.102.32: icmp_seq=2 ttl=64 time=0.508 ms

но когда я пытаюсь выполнить ping от клиента ubuntu до камеры, это не сработает:

yvesh@yvesh-XPS-15-9510:~$ ping 192.168.102.32
PING 192.168.102.32 (192.168.102.32) 56(84) bytes of data.
From 192.168.101.98 icmp_seq=1 Destination Host Unreachable
From 192.168.101.98 icmp_seq=2 Destination Host Unreachable

Как я могу заставить обоих клиентов общаться друг с другом? Есть ли решение этой проблемы с маршрутизацией? (Не ssh-туннелирование) я пробовал много вещей, но я очень сильно застрял на этом и не могу развиваться дальше 🙁 Пожалуйста, помогите! <3

маршрутизация linux-сети dhcp dnsmasq nmcli

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *