Не работает роутинг Wireguard туннелей в внутреннюю сеть.
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Не работает роутинг Wireguard туннелей в внутреннюю сеть.
Есть Linux router 192.168.10.1 с выходом в интернет.
Настроен проброс порта на микроик для поднятия Wireguard туннелей.
На Linux router прописан статик роут 192.168.20.0/24 gw 192.168.10.10
Внутри локальной сети установлен микротик 192.168.10.10 c default gw 192.168.10.1
На микротике поднят Wireguard 192.168.20.0/24
На Микроитие Wireguard peers настроено Allowed 192.168.10.0/24, 192.168.20.0/24
Когда клиент подымает туннель Wireguard и получает адрес 192.168.20.2/32
то с клиенты сети 192.168.10.0/24 пингуют 192.168.20.2 все нормально.
А вот 192.168.20.2 пингует только 192.168.20.1 Wireguard Интерфейс, собственно микротик
192.168.10.10 и шлюз 192.168.10.1, а вот клиентов 192.168.10.0/24 не пингует
Трассировка маршрута заканчивается 192.168.20.1 а потом звездочки.
Вопрос как настроить роутинг, и почему не работает ?
add action=masquerade chain=srcnat disabled=yes out-interface=ether1 src-address=192.168.20.0/24
Если конечно включаю NAT на микротике, то все работает и все выходят в локалку через IP 192.168.10.10
Как включить роутинг между интерфейсами Wireguard и Ether1 ?
Как заставить чтобы Сеть WireGuard 192.168.20.0/24 роутилась в 192.168.10.0/24 ?
Настроен проброс порта на микроик для поднятия Wireguard туннелей.
На Linux router прописан статик роут 192.168.20.0/24 gw 192.168.10.10
Внутри локальной сети установлен микротик 192.168.10.10 c default gw 192.168.10.1
На микротике поднят Wireguard 192.168.20.0/24
На Микроитие Wireguard peers настроено Allowed 192.168.10.0/24, 192.168.20.0/24
Когда клиент подымает туннель Wireguard и получает адрес 192.168.20.2/32
то с клиенты сети 192.168.10.0/24 пингуют 192.168.20.2 все нормально.
А вот 192.168.20.2 пингует только 192.168.20.1 Wireguard Интерфейс, собственно микротик
192.168.10.10 и шлюз 192.168.10.1, а вот клиентов 192.168.10.0/24 не пингует
Трассировка маршрута заканчивается 192.168.20.1 а потом звездочки.
Вопрос как настроить роутинг, и почему не работает ?
add action=masquerade chain=srcnat disabled=yes out-interface=ether1 src-address=192.168.20.0/24
Если конечно включаю NAT на микротике, то все работает и все выходят в локалку через IP 192.168.10.10
Как включить роутинг между интерфейсами Wireguard и Ether1 ?
Как заставить чтобы Сеть WireGuard 192.168.20.0/24 роутилась в 192.168.10.0/24 ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сообщения: 4165
- Зарегистрирован: 29 фев 2016, 15:26
- Откуда: Минск
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
А на Linux-сервере ничего не мешает? Там маскарада какого-нибудь нет? А на самом PC2? Если там винда - то по умолчанию Брандмауэр разрешает доступ только из своей подсети.
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
Проверю отпишусь.
PC2 Windows. Хорошо допустим. А как Организовать доступ клиентов VPN Wireguard 192.168.20.0/24 в сеть 192.168.10.0/24, что на всех компьютерах отключать Брандмауэр ?. Или просто на Mikrotike сделать NAT 192.168.20.0/24 <--->192.168.10.10.
Тогда будет работать. Но будет непонятно кто из VPN Wireguard куда подключался..
PC2 Windows. Хорошо допустим. А как Организовать доступ клиентов VPN Wireguard 192.168.20.0/24 в сеть 192.168.10.0/24, что на всех компьютерах отключать Брандмауэр ?. Или просто на Mikrotike сделать NAT 192.168.20.0/24 <--->192.168.10.10.
Тогда будет работать. Но будет непонятно кто из VPN Wireguard куда подключался..
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
traceroute c хоста 192.168.20.2:
C:\Users\ads12\Desktop>tracert 192.168.10.13
Трассировка маршрута к 192.168.0.13 с максимальным числом прыжков 30
1 34 ms 36 ms 37 ms 192.168.20.1
2 * * * Превышен интервал ожидания для запроса.
3 * * * Превышен интервал ожидания для запроса.
.....
Маршрут доходит только до Mikrotik, дальше не уходит.
Mikrotik route print:
route/print
Flags: D - DYNAMIC; I - INACTIVE, A - ACTIVE; c - CONNECT, s - STATIC
Columns: DST-ADDRESS, GATEWAY, ROUTING-TABLE, DISTANCE
# DST-ADDRESS GATEWAY ROUTING-TABLE DISTANCE
0 As 0.0.0.0/0 192.168.10.1 main 1
DAc 192.168.10.0/24 ether1 main 0
1 Is 192.168.10.0/24 192.168.20.1 main 1
DAc 192.168.20.0/24 wireguard1 main 0
-----------------------------------
traceroute c хоста с 192.168.10.20
C:\Users\sa>tracert 192.168.20.2
Трассировка маршрута к 192.168.20.2 с максимальным числом прыжков 30
1 1 ms <1 мс <1 мс control [192.168.10.1]
2 3 ms 6 ms 5 ms 192.168.10.10
3 37 ms 33 ms 33 ms 192.168.20.2
Трассировка завершена.
C:\Users\ads12\Desktop>tracert 192.168.10.13
Трассировка маршрута к 192.168.0.13 с максимальным числом прыжков 30
1 34 ms 36 ms 37 ms 192.168.20.1
2 * * * Превышен интервал ожидания для запроса.
3 * * * Превышен интервал ожидания для запроса.
.....
Маршрут доходит только до Mikrotik, дальше не уходит.
Mikrotik route print:
route/print
Flags: D - DYNAMIC; I - INACTIVE, A - ACTIVE; c - CONNECT, s - STATIC
Columns: DST-ADDRESS, GATEWAY, ROUTING-TABLE, DISTANCE
# DST-ADDRESS GATEWAY ROUTING-TABLE DISTANCE
0 As 0.0.0.0/0 192.168.10.1 main 1
DAc 192.168.10.0/24 ether1 main 0
1 Is 192.168.10.0/24 192.168.20.1 main 1
DAc 192.168.20.0/24 wireguard1 main 0
-----------------------------------
traceroute c хоста с 192.168.10.20
C:\Users\sa>tracert 192.168.20.2
Трассировка маршрута к 192.168.20.2 с максимальным числом прыжков 30
1 1 ms <1 мс <1 мс control [192.168.10.1]
2 3 ms 6 ms 5 ms 192.168.10.10
3 37 ms 33 ms 33 ms 192.168.20.2
Трассировка завершена.
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
Вот полная конфигурация mikrotik:
/interface ethernet
set [ find default-name=ether1 ] disable-running-check=no
/interface wireguard
add listen-port=1323 mtu=1420 name=wireguard1
/interface list
add name=WAN
add name=LAN
/interface list member
add interface=ether1 list=WAN
add interface=lo list=LAN
add interface=wireguard1 list=WAN
/interface wireguard peers
add allowed-address=192.168.20.2/32,192.168.10.0/24 client-address=192.168.20.2/32 comment="test" interface=wireguard1 name=peer3 private-key="*************************************" public-key=\
"*************************************"
.......
/ip address
add address=192.168.10.10/24 interface=ether1 network=192.168.10.0
add address=192.168.20.1/24 interface=wireguard1 network=192.168.20.0
/ip dhcp-client
add disabled=yes interface=ether1
/ip dns
set servers=8.8.8.8,0.0.0.0
/ip firewall filter
add action=accept chain=input dst-port=1323 in-interface=ether1 protocol=udp src-address-list=""
add action=accept chain=forward disabled=yes dst-address=192.168.10.0/24 src-address=192.168.20.0/24
add action=accept chain=forward disabled=yes dst-address=192.168.20.0/24 src-address=192.168.10.0/24
add action=accept chain=input dst-address=0.0.0.0 src-address=192.168.20.0/24
add action=accept chain=output dst-address=0.0.0.0 src-address=192.168.20.0/24
add action=accept chain=forward dst-address=192.168.10.0/24 src-address=192.168.20.0/24
add action=accept chain=forward dst-address=192.168.20.0/24 src-address=192.168.10.0/24
/ip firewall nat
add action=masquerade chain=srcnat out-interface=ether1 src-address=192.168.20.0/24
/ip route
add disabled=no distance=1 dst-address=192.168.10.0/24 gateway=192.168.20.1 routing-table=main suppress-hw-offload=no
/tool sniffer
set filter-interface=ether1 filter-port=1323 filter-src-ip-address=192.168.20.0/24
Flags: D - DYNAMIC; I - INACTIVE, A - ACTIVE; c - CONNECT, s - STATIC
Columns: DST-ADDRESS, GATEWAY, ROUTING-TABLE, DISTANCE
# DST-ADDRESS GATEWAY ROUTING-TABLE DISTANCE
0 As 0.0.0.0/0 192.168.0.1 main 1
DAc 192.168.0.0/24 ether1 main 0
1 Is 192.168.0.0/24 192.168.101.1 main 1
DAc 192.168.101.0/24 wireguard1 main 0
[admin@MikroTik] /ip/route>
NAT выключен.
Где ошибка в конфиге и почему трафик с 192.168.20.1/24 interface=wireguard1 не идет дальше ?
Маршрут заканчивается микротиком:
1 34 ms 36 ms 37 ms 192.168.20.1
2 * * * Превышен интервал ожидания для запроса.
3 * * * Превышен интервал ожидания для запроса.
Можете прокомментировать
/interface ethernet
set [ find default-name=ether1 ] disable-running-check=no
/interface wireguard
add listen-port=1323 mtu=1420 name=wireguard1
/interface list
add name=WAN
add name=LAN
/interface list member
add interface=ether1 list=WAN
add interface=lo list=LAN
add interface=wireguard1 list=WAN
/interface wireguard peers
add allowed-address=192.168.20.2/32,192.168.10.0/24 client-address=192.168.20.2/32 comment="test" interface=wireguard1 name=peer3 private-key="*************************************" public-key=\
"*************************************"
.......
/ip address
add address=192.168.10.10/24 interface=ether1 network=192.168.10.0
add address=192.168.20.1/24 interface=wireguard1 network=192.168.20.0
/ip dhcp-client
add disabled=yes interface=ether1
/ip dns
set servers=8.8.8.8,0.0.0.0
/ip firewall filter
add action=accept chain=input dst-port=1323 in-interface=ether1 protocol=udp src-address-list=""
add action=accept chain=forward disabled=yes dst-address=192.168.10.0/24 src-address=192.168.20.0/24
add action=accept chain=forward disabled=yes dst-address=192.168.20.0/24 src-address=192.168.10.0/24
add action=accept chain=input dst-address=0.0.0.0 src-address=192.168.20.0/24
add action=accept chain=output dst-address=0.0.0.0 src-address=192.168.20.0/24
add action=accept chain=forward dst-address=192.168.10.0/24 src-address=192.168.20.0/24
add action=accept chain=forward dst-address=192.168.20.0/24 src-address=192.168.10.0/24
/ip firewall nat
add action=masquerade chain=srcnat out-interface=ether1 src-address=192.168.20.0/24
/ip route
add disabled=no distance=1 dst-address=192.168.10.0/24 gateway=192.168.20.1 routing-table=main suppress-hw-offload=no
/tool sniffer
set filter-interface=ether1 filter-port=1323 filter-src-ip-address=192.168.20.0/24
Flags: D - DYNAMIC; I - INACTIVE, A - ACTIVE; c - CONNECT, s - STATIC
Columns: DST-ADDRESS, GATEWAY, ROUTING-TABLE, DISTANCE
# DST-ADDRESS GATEWAY ROUTING-TABLE DISTANCE
0 As 0.0.0.0/0 192.168.0.1 main 1
DAc 192.168.0.0/24 ether1 main 0
1 Is 192.168.0.0/24 192.168.101.1 main 1
DAc 192.168.101.0/24 wireguard1 main 0
[admin@MikroTik] /ip/route>
NAT выключен.
Где ошибка в конфиге и почему трафик с 192.168.20.1/24 interface=wireguard1 не идет дальше ?
Маршрут заканчивается микротиком:
1 34 ms 36 ms 37 ms 192.168.20.1
2 * * * Превышен интервал ожидания для запроса.
3 * * * Превышен интервал ожидания для запроса.
Можете прокомментировать
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
ping c 192.168.20.2 на 192.168.10.1 проходит и подключается по ssh.
А вот клиенты 192.168.10.2 не подключается и ping не проходит.
А вот клиенты 192.168.10.2 не подключается и ping не проходит.
-
- Сообщения: 4165
- Зарегистрирован: 29 фев 2016, 15:26
- Откуда: Минск
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
Немного разобрался. Микротик посылает пакеты на сеть 192.168.10.0/24 через интерфейс ether1., мимо шлюза, так как один броадкаст домен., а хосты не 192.168.10. не знают куда отвечать на сеть 192.168.20.хх
Если на хостах 192.168.10.хх прописать роут сети 192.168.20.хх через 192.168.10.10, то все работает.
Как заставить микротик чтобы с wireguard интерфейса все шло через шлюз 192.168.10.1, а не на прямую к хостам ?
Если на хостах 192.168.10.хх прописать роут сети 192.168.20.хх через 192.168.10.10, то все работает.
Как заставить микротик чтобы с wireguard интерфейса все шло через шлюз 192.168.10.1, а не на прямую к хостам ?
-
- Сообщения: 4165
- Зарегистрирован: 29 фев 2016, 15:26
- Откуда: Минск
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
А у хостов нет шлюза по умолчанию (192.168.10.1)? Почему?
А если через 192.168.10.1?
Что это должно поменять? На 10.1 маскарадинг всего трафика? Это костыль. Но для реализации этого варианта - используйте Policy Routing, отмаркируйте роутинг (action=mark-routing new-routing-mark=XXX) нужных пакетов в Mangle Prerouting, затем создайте маршрут по умоланию через 10.1 в таблице XXX
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
Продолжение.
Если пингануть с PC2 192.168.10.2 PC1 192.168.20.2.
После пинга и в обратною строну маршрут работает и связность есть.
192.168.20.2 видит хост 192.168.10.2 (двухсторонний обмен пакетами), Но по истечении 5 минут маршрут пропадает.
ARP не проходит что-ли ?
Может на интерфейсе Linux_GW включить proxy-arp ?
Если пингануть с PC2 192.168.10.2 PC1 192.168.20.2.
После пинга и в обратною строну маршрут работает и связность есть.
192.168.20.2 видит хост 192.168.10.2 (двухсторонний обмен пакетами), Но по истечении 5 минут маршрут пропадает.
ARP не проходит что-ли ?
Может на интерфейсе Linux_GW включить proxy-arp ?
-
- Сообщения: 4165
- Зарегистрирован: 29 фев 2016, 15:26
- Откуда: Минск
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
ARP и не должен проходить.
А после "волшебного пинга" трассировка с PC1 на PC2 и в обратную сторону как выглядит?
А после "волшебного пинга" трассировка с PC1 на PC2 и в обратную сторону как выглядит?
-
- Сообщения: 16
- Зарегистрирован: 06 ноя 2023, 12:23
Re: Не работает роутинг Wireguard туннелей в внутреннюю сеть.
1. Трассировка маршрута к 192.168.10.13 с максимальным числом прыжков 30
1 39 ms 36 ms 35 ms 192.168.20.1
2 37 ms 35 ms 37 ms 192.168.10.13
Трассировка завершена.
PC2 это linux proxmox.
2. PC2---> PC1
PC2:
root@proxmoxve:/# ip ro g 192.168.20.2
192.168.20.2 via 192.168.10.1 dev vmbr0 src 192.168.10.13 uid 0
cache
root@proxmoxve:/# ping 192.168.20.2
PING 192.168.20.2 (192.168.20.2) 56(84) bytes of data.
From 192.168.10.1: icmp_seq=1 Redirect Host(New nexthop: 192.168.10.10)
64 bytes from 192.168.20.2: icmp_seq=1 ttl=127 time=36.3 ms
64 bytes from 192.168.20.2: icmp_seq=2 ttl=127 time=34.5 ms
64 bytes from 192.168.20.2: icmp_seq=3 ttl=127 time=35.6 ms
64 bytes from 192.168.20.2: icmp_seq=4 ttl=127 time=35.4 ms
64 bytes from 192.168.20.2: icmp_seq=5 ttl=127 time=34.4 ms
^C
--- 192.168.20.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 34.442/35.243/36.306/0.701 ms
root@proxmoxve:/# ip ro g 192.168.20.2
192.168.20.2 via 192.168.10.10 dev vmbr0 src 192.168.10.10 uid 0
cache <redirected> expires 178sec
P.S. 192.168.10.1 - Kerio Control 9.4.4
Такое впечатление при входящих пакетах редирект не работает.
1 39 ms 36 ms 35 ms 192.168.20.1
2 37 ms 35 ms 37 ms 192.168.10.13
Трассировка завершена.
PC2 это linux proxmox.
2. PC2---> PC1
PC2:
root@proxmoxve:/# ip ro g 192.168.20.2
192.168.20.2 via 192.168.10.1 dev vmbr0 src 192.168.10.13 uid 0
cache
root@proxmoxve:/# ping 192.168.20.2
PING 192.168.20.2 (192.168.20.2) 56(84) bytes of data.
From 192.168.10.1: icmp_seq=1 Redirect Host(New nexthop: 192.168.10.10)
64 bytes from 192.168.20.2: icmp_seq=1 ttl=127 time=36.3 ms
64 bytes from 192.168.20.2: icmp_seq=2 ttl=127 time=34.5 ms
64 bytes from 192.168.20.2: icmp_seq=3 ttl=127 time=35.6 ms
64 bytes from 192.168.20.2: icmp_seq=4 ttl=127 time=35.4 ms
64 bytes from 192.168.20.2: icmp_seq=5 ttl=127 time=34.4 ms
^C
--- 192.168.20.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 34.442/35.243/36.306/0.701 ms
root@proxmoxve:/# ip ro g 192.168.20.2
192.168.20.2 via 192.168.10.10 dev vmbr0 src 192.168.10.10 uid 0
cache <redirected> expires 178sec
P.S. 192.168.10.1 - Kerio Control 9.4.4
Такое впечатление при входящих пакетах редирект не работает.