Is-sintomi jsegwu forma waħda: host jaħdem, imbagħad jikkonnetta ma’ VPN bħala klijent, u issa l-klijenti LAN jilħquh filwaqt li t-tweġibiet tiegħu jisparixxu. Qabda fuq il-host turi li t-tweġibiet joħorġu mill-apparat tat-tunnel minflok mill-interface LAN. Xejn fit-tunnel mhuwa mqassam, u s-sewqan hija rotta, mhux konnessjoni mill-ġdid. Agħmel l-erba’ verifiki hawn taħt fl-ordni u waqaf fl-ewwel waħda li tfalli.

Tweġiba hija pakkett ġdid, mhux dawran lura

Jgħin li tħalli l-idea li tweġiba tmur lura mit-triq li ħa talba. L-irrotar jiġi deċiż għal kull pakkett, għal kull direzzjoni, fuq il-host li jibgħat. Talba li waslet minn 10.64.0.23 ġewwa t-tunnel ma toħloqx triq tar-ritorn; meta l-host iwieġeb, dik it-tweġiba tiġi mqabbla mat-tabella bħala pakkett ġdid u toħroġ mir-rotta li tirbaħ.

Għalhekk klijent b’tunnel sħiħ fuq magna li sservi wkoll LAN jipproduċi falliment hekk konfuż. Il-klijent jinstalla rotta awtomatika, jew iż-żewġ nofs rotot awtomatiċi li jippreferu xi klijenti, u t-tweġiba lill-klijent LAN issa taqbel mat-tunnel. Tmur għand il-fornitur, li m’għandux raġuni jgħaddiha, u l-klijent LAN jara skadenza minkejja li l-host huwa ħaj u jwieġeb lokalment. Il-qabda tagħmilha ovvja, u t-tabella tal-irrotar tispjegaha.

Żomm żewġ subnets f’moħħok waqt li taqra l-bqija. Waħda hija l-ġabra tal-indirizzi VPN li minnha ġejjin il-klijenti mill-bogħod, f’dan l-eżempju 10.64.0.0/24. L-oħra hija l-LAN li trid tibqa’ taħdem, 172.16.24.0/24 bl-router tagħha f’172.16.24.1. Il-bug huwa li t-traffiku bejniethom jiġi deċiż mir-rotta awtomatika.

Ipprovah bil-qabda u bit-tfittxija

Qabel ma tibdel xejn, ikkonferma liema apparat se tuża t-tweġiba. Tfittxija hija aktar mgħaġġla minn qabda u twieġeb eżattament il-mistoqsija li l-qalba se twieġeb meta jinbena l-pakkett.

ip route get 10.64.0.23 from 172.16.24.10
tcpdump -ni any -c 6 icmp

Aqra t-tweġiba f’żewġ partijiet. Jekk issemmi dev tun0, il-host se jinkapsula t-tweġiba u jagħtiha lill-fornitur, u l-klijent LAN qatt mhu se jaraha. Jekk issemmi dev eth0 imma l-klijent xorta jieħu skadenza, ir-rotta hija diġà tajba u l-pakkett jintrema aktar tard, li hija problema oħra b’sewqan ieħor.

Il-qabda fl-istess pass issolvi d-dubju li ping ma jistax. Tweġiba tal-eku li tasal għand il-klijent LAN turi li xi triq taħdem, mhux liema interface ġarritha, għalhekk agħmel il-qabda fuq il-host stess u ara minn fejn joħorġu l-frejms. Printer fl-istess subnet ikompli jwieġeb, għax ir-rotta diretta tiegħu hija aktar speċifika mir-rotta awtomatika tat-tunnel. Port mgħoddi ’l quddiem ifalli eżatt bħal kull fluss ieħor, għax l-interface tagħżel it-tabella u mhux il-konnessjoni.

Installa l-aktar rotta dejqa li taqbeż it-tunnel

Tiddeċiedi t-tul tal-prefiss, mhux il-metrika, għalhekk rotta għall-ġabra tal-klijenti permezz tar-router LAN tirbaħ kull rotta awtomatika li jinstalla l-klijent VPN. Ma hemmx bżonn kirurġija tal-metrika, u r-rotta awtomatika tista’ tibqa’ eżatt fejn poġġieha l-klijent.

ip route replace 10.64.0.0/24 via 172.16.24.1 dev eth0
ip route get 10.64.0.23 from 172.16.24.10

Uża replace minflok add, għax klijent li jerġa’ jikkonnetta jkun installa d-dħul tiegħu stess u t-tieni add ifalli bi żball ta’ rotta diġà teżisti li jinqara bħala problema ta’ permessi. Fuq host Windows l-ekwivalenti huwa route add 10.64.0.0 mask 255.255.255.0 172.16.24.1 -p, fejn -p iżomm id-dħul matul reboots, għax il-klijent jista’ jibni mill-ġdid it-tabella meta t-tunnel jerġa’ jitla’. Fuq host Windows kurrenti l-ekwivalenti appoġġjat huwa New-NetRoute -DestinationPrefix 10.64.0.0/24 -NextHop 172.16.24.1 -InterfaceAlias Ethernet -PolicyStore PersistentStore, u l-kmand route l-antik jinżamm bħala forma antika.

Dettall wieħed jiddeċiedi jekk dan huwiex korrett jew biss plawżibbli: il-pass li jmiss irid ikun ir-router li tassew jippossjedi t-triq lura lejn il-klijenti. Li tiddirieġi r-rotta lejn indirizz li huwa stess jintlaħaq mit-tunnel joħloq linja li tidher bħala telf intermittenti minflok falliment nadif. Ikkonferma li l-pass li jmiss jinsab fis-subnet LAN qabel ma tikkonferma l-linja.

Żomm it-tweġiba wara konnessjoni mill-ġdid

Rotta miżjuda bl-idejn tibqa’ għaddejja l-iktar sal-konnessjoni mill-ġdid li jmiss. Jekk il-ġabra tal-klijenti hija dinamika, waħħalha fil-konfigurazzjoni tas-server sabiex il-prefiss li rrotajt jibqa’ l-prefiss li jirċievu l-klijenti; inkella d-dħul jindika firxa vojta u s-sintomu jerġa’ lura wara ġimgħat mingħajr kawża ovvja. Li tikteb ir-rotta fl-iskript up tal-klijent stess hija l-għażla affidabbli l-oħra, għax taħdem wara li l-klijent ikun kiteb mill-ġdid it-tabella.

Firewall tal-istat xorta jista’ jegħleb rotta korretta. Jekk il-qabda issa turi li t-tweġiba toħroġ minn eth0 u l-klijent xorta jieħu skadenza, iċċekkja jekk il-host huwiex jarmi l-pakkett qabel ma jintbagħat. Iffiltrar strett tat-triq inversa u net.ipv4.conf.all.rp_filter imqiegħed fuq 1 jarmu pakketti li s-sors tagħhom ma jiġix irrotat lura mill-interface li daħlu minnha, u dan huwa eżattament il-każ asimmetriku li għadek kemm ħloqt u mbagħad sewwaħt, u l-istat conntrack jirrakkonta l-istess storja għall-portijiet mgħoddija ’l quddiem.

L-aħħar verifika hija dik li n-nies jaqbeż: erġa’ agħmel it-tfittxija wara li t-tunnel ikun niżel u tela’ mill-ġdid. Erba’ valuri għandhom jaqblu ma’ dak li ktibt: id-destinazzjoni, il-pass li jmiss, l-apparat u s-sors magħżul. Jekk wieħed minnhom inċaqlaq, il-klijent kiteb mill-ġdid it-tabella u s-sewqan jappartjeni lill-hooks tiegħu u mhux lill-istorja tal-shell.

Artikli relatati