FortiClient folslein tunnel: allinnich it kantoar-subnet routearje
De VPN ynstallearret in standertrûte en it lokale netwurk ferdwynt. Lês de tabel, restaurearje de LAN-standertrûte, foegje de kantoar-prefiksen ta en reparearje dan DNS.
De tunnel komt omheech, it ikoan wurdt grien en it lokale netwurk ferdwynt: printers, de NAS en de kantoarrûter stopje allegearre mei antwurdzjen. FortiClient docht wat it profyl frege hat. De gateway hat in standertrûte skood, de klient hat dy ynstallearre, en elk pakket hat no in paad yn 'e tunnel. De reparaasje is in bewurking fan 'e rûtetabel mei in DNS-bewurking der efter, en de folchoarder fan dy bewurkings beslist oft de masine better of slimmer derfan ôfkomt.
Wat de klient ynstallearre hat, en wêrom't it LAN ferdwûn
Begjin mei it lêzen fan 'e tabel ynstee fan 'e klientynterface. Op macOS prints netstat -rn de hiele tabel en route -n get default neamt de ynterface en metryk dy't op dit stuit winne; op Linux is it pear ip route show en ip route get 8.8.8.8. Beide beantwurdzje ien fraach: hokker yngong sil in pakket drage dat mei neat spesifyker oerienkomt.
De namme fan it tunnelapparaat is net fêst. In IKEv2-profyl op macOS lit meastentiids utun mei in nûmer sjen, de SSL VPN-klient lit ppp0 sjen, en OpenVPN lit tun0 sjen. Twa standertrûtes kinne ek tagelyk oanwêzich wêze mei ferskate metriken, en de klientyngong kin pas oernimme nei in werferbining ynstee fan op it momint dat er ferskynt. Dêrom kinne twa tabeldumps mei fiif minuten tuskenrin oare ferhalen fertelle.
Wêrom't de standertrûte fan 'e tunnel earst gean moat
De kernel kiest it langste oerienkommende prefiks, en as ferskate rûtes like spesifyk binne, kiest er dy mei de leechste metryk. In klient dy't 0.0.0.0/0 mei in bettere metryk ynstallearret, wint dêrom elk bestimming sûnder de oarspronklike standertrûte te wiskjen, en dêrom is de fysike rûte noch yn 'e tabel en ferklearret noch de útfal. De tunnelstandertrûte earst fuorthelje restaurearret it eardere gedrach. Pas dan docht in prefiksrûte troch de tunnel wat har skriuwer bedoelde.
Prefiksen tafoegje foar dy stap is de flater dy't in healwurkjende masine oplevert. Ferkear foar it nije prefiks folget de tunnel, en alles wat net yn 'e list stiet folget ek de tunnelstandertrûte, sadat neat brutsen liket oant immen in tsjinst iepenet dy't nimmen tafoege hat. Wiskje, restaurearje, foegje dan ta, en de tuskensteat bliuwt foarsisber.
De folchoarder op macOS en op Linux
Op macOS wisket de folchoarder de tunnelstandertrûte, restaurearret de fysike standertrûte en stjoert ien kantoarprefiks werom de tunnel yn. Ferfange de yllustrative ynterfacenammen hjir troch dy út jo eigen tabel.
sudo route delete -net default -interface utun4
sudo route add -net 0.0.0.0 -interface en0
sudo route add -net 10.20.0.0 -netmask 255.255.0.0 -interface utun4Op Linux brûkt deselde folchoarder in oar helpmiddel, mei de LAN-gateway foar de standertrûte en it tunnelapparaat foar it kantoarprefiks. It âlde route-kommando akseptearret noch de âlde syntaksis, mar ip route is de foarm dy't by de hjoeddeiske dokumintaasje past.
sudo ip route del default dev tun0
sudo ip route add default via 192.168.50.1
sudo ip route add 10.20.0.0/16 dev tun0As de rûte in folgjende hop nedich hat ynstee fan in apparaat, nim dan de peer út 'e klientútfier. Rieden jout ien fan twa flaters, en se betsjutte ferskillende dingen: in ferkearde gateway jout daliks network unreachable, wylst in ferkeard tunneldielwyt in time-out jout. Lês hokker jo krigen hawwe foardat jo it kommando wer feroarje.
Prefiksen, de resolver en de DMZ dy't tsjuster bliuwt
Ien prefiks dekt it wurk selden. Applikaasjeservers, beheartnetwurken, de DMZ en de DNS-servers sels kinne elk yn in oar berik sitte, dus list elk berik op dat jo neame kinne foardat jo begjinne en test in opfrege njonken elke ping. In bestimming dy't midden yn 'e test ûntdutsen wurdt, is dy't yn it feroaringsdossier fergetten wurdt. In rûte dy't op adres antwurdet mar op namme mislearret, is meastentiids in resolverprobleem yn in routing-kostúm.
De resolver is in aparte beslissing. As it profyl ynterne DNS-servers skood hat, kin it fuortheljen fan 'e standertrûte dy adressen ûnberikber litte foar iepenbiere nammen of allinnich troch de tunnel berikber, en beide steaten jouwe betiizjende dielresultaten. Routearje de resolveradressen troch de tunnel, of konfigurearje oplossing per domein sadat iepenbiere opfragen de lokale resolver brûke.
De Linux SSL-klient hat in fjildspesifike flater dy't de muoite wurdich is om te kennen: de tunnel ferbynt, it kantoar-LAN antwurdet, en ien DMZ-berik bliuwt tsjuster. It ûntbrekkende stik is in rûte foar dat berik troch de tunnelgateway, en de gateway ferskilt per masine, dus in hurdkoade adres is hoe't de folgjende laptop brekt. Lied it ôf út 'e steat fan 'e klient en hâld it kommando selsdokumintearjend:
PEER=$(ip -4 addr show dev ppp0 | awk '/peer/ {print $4}' | cut -d/ -f1)
sudo ip route add 192.168.30.0/24 via "$PEER"Lês de twa wearden foardat jo it útfiere. peer is it fiere ein fan in punt-nei-punt-tunnel, en dat is it adres dat de DMZ-rûte nedich hat; op in routearre tunnel is it ekwivalint de ynterface of de gateway dy't de klient rapportearret. As gjin fan beide ferskynt, is de klient net yn 'e modus dy't jo oannommen hawwe.
Nei de folgjende ferbining, en wannear't jo dit lokaal ophâlde moatte
FortiClient ferbynt wer nei in sliep of in netwurkferoaring en ynstallearret wer wat it profyl oanjout. Handmatige rûtes oerlibje dêrom allinnich oant de folgjende ferbining, en dat is krekt it ynterval wêryn't ien slagge test as in reparaasje lykje kin. In rûte dy't nachts ferdwynt is ferwachte gedrach, gjin nije stoarn.
Der binne twa duorsume antwurden. In skript dat de korreksje nei elke ferbining wer draait is in omwei dy't syn skriuwer oerlibje kin, wylst in splitstunnelprofyl fan 'e gateway-administrator de echte reparaasje is, want dan ynstallearret de klient allinnich de berikken dy't it wurk nedich hat. Freegje om it twadde en brûk it earste allinnich wylst jo wachtsje. Kontrolearje ek it belied dat jo akseptearre hawwe foardat jo in folsleine tunnel lokaal splitsje, want it fiere netwurk kin derop fertrouwe dat it al jo ferkear sjocht.
De checklist is koart: lês de tabel, wiskje de tunnelstandertrûte, restaurearje de LAN-standertrûte, foegje elk prefiks ta, reparearje de oplossing apart, en ferwachtsje dat de rûtes by werferbining weromkomme.