[MEGOLDVA] L3 (?) routing internal networkok kozott

Sziasztok,

 

adott ket halozat (Hetzner internal network mindketto):

10.20.0.0/24 (GW 10.20.0.1, dhcp -n /32 -k vannak kiosztva; ARP -n csak a 10.20.0.1 latszik)
10.30.0.0/24 (GW 10.30.0.1, dhcp -n /32 -k vannak kiosztva; ARP -n csak a 10.30.0.1 latszik)

A ket halozat osszekotesere jott letre 1-1 gep IPSec tunnelel, 10.30.0.125, 10.20.0.126; ezek onmagukban mukodnek is, elerhetoek.

Az ARP hianya miatt csak ping erheto el network discovery ugyben.

A routing tabla igy fest 1-1 10.20.0.0/24 -ben levo gepen (csak az erintett routingok maradtak):

ip r
default via 172.31.1.1 dev eth0 
10.20.0.0/24 via 10.20.0.1 dev enp7s0 
10.20.0.1 dev enp7s0 scope link < ARP miatt feltetelezhetoen

Namost, itt ennek kellene bekerulnie elkepzeleseim szerint:

10.30.0.0/24 via 10.20.0.125 dev enp7s0 
10.20.0.126 dev enp7s0 scope link < ARP miatt

Azonban ez ugye nem mukodokepes, mert a 10.20.0.126 nem elerheto ARP -n, lasd fentebb. Tehat sem icmp, sem arp csomagok nem jutnak at a 10.20.0.126 -ra.

nft -vel a forward engedelyezve van a ket halozat kozott; SNAT a gateway -eken rendben.

10.30.0.125 -rol (a 10.30.0.0/24 -en levo gw) elerheto a 10.20.0.0/24 barmely gepe es viszont is a 10.20.0.126 -rol, DE bamrly, nem gateway geprol az ellentetes halozat semelyik gepe nem erheto el-

ping -c 1 -I 10.30.0.125 10.20.0.124
PING 10.20.0.124 (10.20.0.124) from 10.30.0.125 : 56(84) bytes of data.
64 bytes from 10.20.0.124: icmp_seq=1 ttl=62 time=16.9 ms

--- 10.20.0.124 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 16.895/16.895/16.895/0.000 ms
 

A kerdes:
Hogyan oldjam meg oda-vissza az atjarast a fentiek alapjan a ket halozat kozott? Lathatoan kellene routing, csak azt gyakorlatilag nem tudtam implementalni.

Hozzászólások

Szerkesztve: 2025. 05. 15., cs – 12:48

vagy elrouteolod a tartomanyokat minden gepen az ipseces gepe(i)d fele mindket tartomanyban oda-vissza, vagy a defgw-en csinalod meg a tunnelt es a route-okat.
arp nem jatszik, ez nem layer2...
a NAT-ot pedig nem is ertem mrie kell neked.

A defgw -n max feluleten/cli-bol/api-bol tudtam megoldani a routingot, de igazabol nem mukodott az (sem).
A NAT gondolom azert kerult elo, mert nem lattad elotte az S -t :) (source address miatt, de igazabol ez a resze lenyegtelen, mert a csomagok el sem jutnak idaig)

Error: nmcli terminated by signal Félbeszakítás (2)

Igen, erre keresek megoldast...
Mar gondolkodtam ipip/gre tunnelen is, de azert az mar tenyleg hardcore lenne ahhoz viszonyitva, hogy mindissze a regi Peer-to-peer VPN megoldasunkat akarom eldobni.
A defgw nem routeol a 10.30.0.0/24 -be, barmennyire is megadtam neki a 10.20.0.126 -ot gateway -nek. (arrol irtam is, hogy felvettem)

Error: nmcli terminated by signal Félbeszakítás (2)

Alapbol a problema az, hogy az L2 hianya miatt egyaltalan nem tudok routingot allitgatni, mert a nexthop ugye nem elerheto. Erre akarok jarhato alternativat talalni...el nem tudom kepzelni, hogy en vagyok az egyetlen, aki ket !L2 halozat kozott at akar jarkalni.

Error: nmcli terminated by signal Félbeszakítás (2)

legyen A-GW-n meg egy halozat a 10.21.0.1/24 es a vpn a 10.21.0.2-n legyen.

igy csak A-GW-n kell megmondani, hogy merre van a B halozat (10.21.0.2 fele) es nem minden gepen az A halozatban.

neked aztan fura humorod van...

Bizony, es bar ez meg van adva a networkon belul, mint route, es 10.20.0.1 iranyba megy a csomag, ahhoz, hogy betalaljon a 10.30.0.0/24 -be, lasd:

ip r get 10.30.0.1
10.30.0.1 via 10.20.0.1 dev enp7s0 src 10.20.0.124

Update: ugy latszik a routing letrehozasa cronbol megy, orankent. Nem kizart, hogy megoldodott...

Error: nmcli terminated by signal Félbeszakítás (2)

ha a vpn atjaro az A halozatban van 10.20.0.126 akkor az A-GW egy icmp redirect-et kuld az A halozatban levo gepnek, hogy a 10.30.0.0/24 a 10.20.0.126 fele van, oda kuldd a csomagot. ha az icmp redirect le van tiltva vagy nem mukodik, akkor nem lesz jo. nekem egy debian upgrade ota nem mukodik az icmp redirect (talan 8 -> 9 de mar nem emlekszem), azota van meg egy halozatom a vpn atjaronak, igy icmp redirect-re nincs szukseg.

neked aztan fura humorod van...

Alapesetben mindig a def. gw-n van beállítva az, hogy az extra szegmens merre található. Tehát a 10.20.0.1-n gépen kell(ene) megadnod azt, hogy a 10.30.0.0/24-s szegmens a 10.20.0.126 -s gépen keresztül érhető el. (a 10.20.0.126-s gépen kell, hogy IP_forward! is engedélyezve legyen), illetve a másik oldalt is be kell állítani.

Ha ez nem működik, akkor csak azt tudod tenni, hogy a 10.20.0.0/24-s szegmensben lévő klienseknél a 10.20.0.126-s gépet adod meg def.gw-nek és ő routol tovább az IPSEC tunnel-be vagy az eredeti GW felé. (ilyenkor szoktuk azt a trükköt elkövetni ha sok a kliens, amin állítani kellene a deg. gw-t, hogy az eredeti, jelenlegi def. gw. kap másik IP címet, és az új gép - ami végzi a routing-t és az IPSec-t - kapja meg a régi def. gw IP címét.)

Megoldodott.
A lenyeg: a hetzner cloud networkingben meg kell adni az atjarot az adott halozat iranyaban, majd 
ip r add 10.30.0.0/24 via 10.2.0.1
az adott gepen.

A problemat a hetzner belso rendszereiben valamilyen unexpected delay okozhatta.

Koszonom az otletelest, kedves Kollegak! :)

Error: nmcli terminated by signal Félbeszakítás (2)