Portál AbcLinuxu, 8. května 2025 00:49

Dotaz: openvpn propojení dvou sítí

22.10.2018 23:02 chinook | skóre: 28
openvpn propojení dvou sítí
Přečteno: 1109×
Odpovědět | Admin
Mám openvpn server v režimu TUN v síti 192.168.0.0/24 a na něj se připojuje router přes internet. Za routerem je síť PC. Třeba 192.168.1.0/24.

Ze sítě 192.168.1.0/24 se dostanu na síť 192.168.0.0/24 bez problému. Ale chci, aby to fungovalo i obráceně.

Jak to udělat? VPN adresa routeru je třeba 192.168.2.6

Ideální by tedy bylo přidat na VPN serveru routu na klienta:

Něco ve smyslu:

ip route add 192.168.1.0/24 via 192.168.2.6
RTNETLINK answers: Network is unreachable

Ale to z pochopitelných důvodů OPENVPN server nebere, protože adresa je mimo rozsah. Ale ping na tu IP z openVPN serveru jde, tak nevím jak to nastavit.

Jak říci VPN serveru, že tento rozsah má routovat na toho určitého VPN klienta?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

23.10.2018 00:08 Radek
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
No, nevím jestli tě úplně chápu. Co máš za routery? Mikrotik umí ipip.
23.10.2018 00:41 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Tak ještě jednou:
PC1 192.168.0.2/24 - >       | 192.168.0.1   |
PC2 192.168.0.3/24 - >       | Router CENTOS | -> internet -> mikrotik -PC11 192.168.1.2/24
VPN SERVER 192.168.0.4/24 -> |               |                         -PC12 192.168.1.3/24
a IP na VPN rozhrani 192.168.2.1

Mikrotik IP 192.168.1.1 a IP VPN rozhrani mikrotiku 192.168.2.6
Ze sítě za mikrotikem vidím síť za CENTOS tj. ping z PC11 na PC1 funguje, ale obráceně nikoliv. Nevím jak říci VPN SERVERU, že pokud na něm někdo hledá rozsah sítě 192.168.1.0/24, aby ho odroutoval na mikrotika, který má IP od VPN serveru 192.168.2.6

Tedy chci VPN serveru říci toto:

ip route add 192.168.1.0/24 via 192.168.2.6
23.10.2018 01:30 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
No a neděláš tam nějaký NAT na CentOSu? Popisovaná situace je právě příklad NATu. Protože pokud by jsi jenom routoval, tak není rozdíl mezi přímým (ICMP Echo Request) a vracejícím se paketem (ICMP Echo Reply) z pingu. Vracející se paket je právě do 192.168.1.0/24 a ten ti projde. Pokud by to bylo jen routování, tak router má jen pravidla a musí i přímý poslat zpět.
23.10.2018 07:28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Musíš na tom serveru už před spuštěním openvpn připravit rozhraní ( openvpn --mktun --dev ${IFACE} ) s ip adresou a nastavit mu tu tvoji kýženou routu. A pak to rozhraní použiješ pro vytvoření toho tunelu.
23.10.2018 00:49 MP
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
ip route add 192.168.1.0/24 via NONVPN_IP_ROUTER
23.10.2018 00:55 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Jednak to chci routovat šifrovaným VPN kanálem a druhak, to píše stejnou chybu:

RTNETLINK answers: Network is unreachable
Jendа avatar 23.10.2018 01:46 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
To znamená, že 192.168.2.6 není v žádné místní síti, a systém tedy neví, jak si opatřit jeho linkovou adresu (např. přes které rozhraní).
Jendа avatar 23.10.2018 01:49 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nevím, jestli jsem přesně pochopil, o co se snažíš, ale tohle jde forcnout pomocí
# ip route add 192.168.2.6 dev eth0 scope link
# ip route add 192.168.1.0/24 via 192.168.2.6
Ale podle mě spíš chceš "ip route add 192.168.1.0/24 via 192.168.0.ten_tvůj_server".
23.10.2018 07:21
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
A víc zatemnit ten popis tvého problému by nešlo?
23.10.2018 08:38 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Tak ještě jednou.

Mám dvě sítě, každá v jiné lokalitě. A s rozsahem 192.168.0.0/24 a B s rozsahem 192.168.1.0/24.

V sítě A běží VPN server, který přiděluje VPN klientům IP 192.168.2.0/24. Na ten se připojí router ze sítě B a dostane od VPNserveru IP 192.168.2.6. Z celé sítě B jsou tedy vidět všechna PC v síti A.

To co potřebuji je, abych ze sítě A viděl všechna PC v síti B. Stačí mně poradit jak to udělat, abych je viděl z toho VPN serveru, který leží v síti A.

Když budu přihlášen na VPN serveru a dám ping na IP routeru, kterou dostal od VPN, což je 192.168.2.6, tak projde. Ale pokud dám ping na IP vnitřního rozsahu routeru, což je 192.168.1.1, tak logicky neprojde, protože VPN server neví, že ta IP se nachází za IP 192.168.2.6.

To co potřebuji je, říci VPN serveru, že rozsah sítě B tj. 192.168.1.0/24 má routovat na IP VPN clienta routeru, tedy 192.168.2.6.

23.10.2018 08:51 SpaceExplo | skóre: 15
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
A musi ta VPN bezet na jinym rozsahu?
Neni mozny "proste" propojit ty .0.0/24 a .1.0/24 site mezi sebou? (hadam, ze vytvorenim nejakeho tunel-device, tinc vpn to dela presne takhle.
23.10.2018 08:54
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
do konfiguračního souboru VPN serveru přidat
route 192.168.1.0 255.255.255.0 192.168.2.6
23.10.2018 11:36 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
pošli ze všech zařízení co dá příkaz netstat -rn. at je jasné co je nastavené
23.10.2018 13:38 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Asi furt nechápete mou otazku. V route table nic není, to co tam chci doplnit se zde ptám.

default via 192.168.0.1 dev ens3
192.168.2.0/24 via 192.168.2.2 dev tun2
192.168.2.2 dev tun2 proto kernel scope link src 192.168.2.1
Já chci, aby VPN server věděl, že když se z něj chci dostat na síť 192.168.1.0/24, že ji má hledět na IP toho klienta, což je ten mikrotik tedy, routovat přes 192.168.2.6
23.10.2018 14:29
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Ja jsem to kuprikladu pochopil, ale ty jsi si neprecetl manual, ani jsi nepochopil, co jsem ti psal.
23.10.2018 18:31 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Toto jsem dal do konfigurace VPN serveru:

route 192.168.1.0 255.255.255.0 192.168.2.6
Routovací tabulka se po restartu serveru nezmění

Ale v manuálu jsem nic takového nenašel. Pouze toto:

route 192.168.1.0 255.255.255.0
Tady se po restartu změní, přidají se tam tento řádek:

192.168.1.0/24 via 192.168.2.2 dev tun2
Což ovšem neřeší můj problém. Protože VPN server stále neví, že má routovat přes IP klienta, což je mikrotik a IP 192.168.226.6

23.10.2018 18:56
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
man openvpn ver. 2.4.
--route network/IP [netmask] [gateway] [metric]
    Add route to routing table after connection is established. Multiple 
    routes can be specified. Routes will be automatically torn down 
    in reverse order prior to TUN/TAP device close.

    This option is intended as a convenience proxy for the route(8) shell
    command, while at the same time providing portable semantics across 
    OpenVPN's platform space.

    netmask default -- 255.255.255.255

    gateway default -- taken from --route-gateway or the second parameter 
                       to --ifconfig when --dev tun is specified.

    metric default -- taken from --route-metric otherwise 0.

    The default can be specified by leaving an option blank or setting 
    it to "default". 

Mimochodem, pracuješ s těmi ip adresami dost kreativně, takže jsem se nějak opět ztratil v tom, co je co. 192.168.2.2, 192.168.2.6, 192.168.226.6???? Neztratil ses v tom také? Není ta chyba právě v tomhle?
23.10.2018 14:36 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
A kde mát tu routovací tabulku z vpn serveru?
23.10.2018 14:39 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
A mikrotiku. Protože to když ti spojejí funguje z jedné strany a z druhé ne je divné.
23.10.2018 18:27 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
No tak tady to máš podruhý a podruhý řikám, že to je k ničemu, protože tu routu co tam potřebuji dát, ta tam není! To že to funguje jedním směrem, mně přijde logické a normální chování.


mikrotik:


 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 A S  0.0.0.0/0                             x.x.x.1            1
 1 ADC  x.x.x.x/24            x.x.x.x  ether1                    0
 2 ADC  192.168.1.0/24    192.168.1.1    bridge1                   0
 3 ADS  192.168.0.0/24                   192.168.2.5             1
 4 ADS  192.168.2.0/24                   192.168.2.5             1
 5 ADC  192.168.2.5/32   192.168.2.6   myvpn                     0

U mikrotiku je logické, že se dostane na síť 192.168.0.0/24, protože to má v routovací tabulce.

VPN server


 ip route show
default via 192.168.0.1 dev ens3
192.168.0.0/24 dev ens3 proto kernel scope link src 192.168.0.4
192.168.2.0/24 via 192.168.226.2 dev tun2
192.168.2.2 dev tun2 proto kernel scope link src 192.168.226.1
U VPN serveru je logické, že se nedostane na 192.168.1.0/24, protože to nemá v routovací tabulce a celou dobu to tam chci přidat.
24.10.2018 18:22 Chulda | skóre: 20
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
proč má mikrotik gw 192.168.2.5 pro 192.168.0.0/24, když podle malůvky na VPN serveru je IP 192.168.2.2 ?

jinak nepingal bych IP na "vzdálenou" stranu mikrotiku - mnohé FW mají extra pravidlo pro vlastní odpovědi na ping a někdy nedovolí ping skrz zařízení (tj. bude pak fungovat ping na 192.168.2.6, ale nikoli na 192.168.1.1). Problém nemusí být v routingu, ale ve FW.

Zkusil bych tedy ping na jinou IP té sítě, např. 192.168.1.2 a zapnul bych si zvlášť sniff na interface s IP 192.168.1.1 a 192.168.2.5 pro ICMP. Třeba zjistíte, že ICMP odpovědi přijdou na bridge1, ale už neodejdou přes myvpn.

jinak nastavit routing na VPN serveru na vzálenou IP 192.168.2.6 je správná rada. Teď ještě opravit i na mikrotiku a pokud je správně FW, začne to fachat.
23.10.2018 09:22 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Příloha:
Raději jsem to nakreslil.

To co chci je, abych z VPN serveru byl schopen pingnout rozhraní mikrotiku na vnitrní síti.

Tedy ping z vpn serveru na IP 192.168.1.1

Zbytek si proroutuji.
23.10.2018 09:58
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Tohle a tcpdump na VPN serveru a na mikrotiku, kterým prověříš, kde se to ztrácí. A úprava firewallu na příslušném místě, které to zahazuje.
23.10.2018 10:37 chinook | skóre: 28
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Tohle nedělá vůbec nic:

route 192.168.1.0 255.255.255.0 192.168.2.6
23.10.2018 11:03
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Slovy básníka bych řekl, "Mně to chodí."

Nezbývá nic jiného, než si přečíst manuál.
23.10.2018 11:43 SpaceExplo | skóre: 15
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Mam tu IPSec mezi dvema MikroTiky, a abych se dostal prave na ten MikroTik na druhe strane, musel jsem ve "Firewall" do "Filter Rules" pridat akci "accept" v chain "input" a "Src. Address" rozsah te vzdalene site.
vencour avatar 23.10.2018 19:47 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nechci se patlat s pochopením toho, co má odkud kam chodit.
Jen faktická poznámka: Je nutné, aby byly nastaveny routovací pravidla. A dále i definice ipsecu, šifry a jaké sítě komunikují a běhají v tunelu. Pokud se něco překládá, tak že je to správně routováno do tunelu.
Rozhoduje i záměr, tj. jak chci, aby byly sítě vidět proti sobě, zda se překládají za 1 IP adresu nebo subnet.
Když něco někam routuju, tak to přes co to je musím znát. Tuším že jsem taky už v diskusích narazil na to, že lidi většinou nerozlišují co je routovaná a co routující síť nebo prvek.
Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
24.10.2018 08:51 MM
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus vytrasovat(tracepath) kudy se ping dostane "na tu IP z openVPN serveru", problém bude zřejmě v maskách sítě 192.168.2.xx.

Aby se routa přidala, tak v době přidání musí x.x.2.6 být v lokálním dosahu, jak už se tu psalo (tzn. lokální VPN adresa by měla být např. s maskou/24 jestli to jde)

24.10.2018 18:56 Radek
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
Menší doporučení. Podsítě použivej vyšší, rozhodně ne 192.168.0.0 nebo 192.168.1.0 (, ale spíš 192.168.150.0. Druhé doporučení, použivej pro routery vyšší ip, třeba 192.168.150.254 nebo 253 či 252, pak se v tom lidi trošku vyznají.
Josef Kufner avatar 24.10.2018 20:13 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: openvpn propojení dvou sítí
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud máš síť takto:
    {LAN 192.168.0.0/24}
             |
             |
        192.168.0.1
     Router & VPN server ---------.
        192.168.2.6               :
             |                    :
             |                    :
    {VPN 192.168.2.0/24}      {Internet}
             |                    :
             |                    :
        192.168.2.10              :
     Router & VPN klient ---------'
        192.168.1.1
             |
             |
    {LAN 192.168.0.0/24}
Tak potřebuješ si nastavit jen prosté routy, aby počítače na jedné síti věděly, kde je druhá síť a kudy do ní. Tedy routeru na síti 192.168.1.0/24 nastavíš, že síť 192.168.0.0/24 je někde směrem skrz gateway 192.168.2.6:
ip route add 192.168.0.0/24 via 192.168.2.6
A na protějším routeru nastavíš opačně:
ip route add 192.168.1.0/24 via 192.168.2.10
Pokud routery nejsou defaultní gateway ve svojí síti, tak ty routy nastav i na té defaultní gw (dojde k ICMP přesměrování a "druhý" paket už půjde napřímo) nebo na všech počítačích v síti (pomocí DHCP).

Síť si nakresli a bude ti jasné, co je kde potřeba vědět.
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.