Rrugët e ndara L2TP në Mac: pse një adresë hosti nuk funksionon
setadditionalroutes kërkon çifte rrjeti dhe maske, zëvendëson të gjithë listën dhe kërkon emrin e saktë të shërbimit. Kontrolloni tabelën përpara se të fajësoni portën.
VPN lidhet, shiriti i menusë e tregon, dhe një host i brendshëm ende skadon. Në këtë situatë ka tre shkaqe të mundshme, dhe cila vlen varet nga mënyra se si u konfigurua tuneli. Ose komanda e rrugës përdori një adresë hosti aty ku kërkohej një adresë rrjeti, ose vetë profili instalon një rrugë të parazgjedhur që e gëlltit vendimin, ose klienti është një tunel PPP që ka nevojë për një grep në vend të një çelësi profili. Kontrollojini në atë rend, sepse i pari është më i liri për t'u përjashtuar.
Destinacioni është një adresë rrjeti, maska përshkruan prefiksin
networksetup -setadditionalroutes merr treshe destinacioni, maske nënrrjeti dhe porte. Thirrja që dërgon një nënrrjet të brendshëm përmes tunelit duket kështu:
sudo networksetup -setadditionalroutes "VPN (L2TP)" 192.168.1.0 255.255.255.0 10.2.0.0
Vini re çfarë është destinacioni: adresa e rrjetit, jo adresa e serverit që po përpiqeni të arrini. Në rastin që prodhoi këtë artikull, komanda identike me 192.168.1.20 në atë pozicion nuk bëri asgjë të dobishme, dhe zëvendësimi i saj me 192.168.1.0 funksionoi menjëherë. E njëjta maskë, e njëjta portë, një numër i ndryshëm. Ky është i gjithë dështimi në miniaturë.
Arsyeja është aritmetike, jo politikë. Një adresë hosti e çiftuar me një maskë /24 nuk përshkruan 192.168.1.0/24; përshkruan diçka që tabela e rrugëzimit nuk mund ta mbajë në mënyrë të dobishme, prandaj hyrja refuzohet ose injorohet dhe tuneli përfundon duke mbajtur më pak nga sa kishit ndërmend.
Kur dëshironi saktësisht një host, përdorni adresën e hostit me një maskë 255.255.255.255. Janë çiftet e përziera aty ku kjo shkon keq, jo përdorimi i një adrese hosti si i tillë. Një /32 e ndërtuar nga një adresë është rrugë legjitime; një /24 e ndërtuar nga një adresë është gabim.
Thirrja zëvendëson listën, dhe emri është fjalë për fjalë
Dy sjellje i befasojnë njerëzit në provën e parë. Komanda vendos të gjithë listën e rrugëve shtesë në vend që të shtojë, kështu që një thirrje që shton një prefiks heq në heshtje të tjerat që ishin aty më parë. Ndërtoni të gjithë grupin në një thirrje të vetme.
As emri i shërbimit nuk është etiketa që shpikët ju. Lexojeni nga mjeti dhe kopjojeni saktësisht, duke përfshirë prapashtesën e llojit:
networksetup -listallnetworkservices
Një emër që ndryshon nga një karakter nuk prodhon as gabim që ia vlen të lexohet, as rrugë. Kopjimi dhe ngjitja është teknika e duhur këtu, jo rishkrimi nga kujtesa.
Kur profili kërkon rrugën e parazgjedhur
Rrugët e ndara humbasin ndaj një rrugë të parazgjedhur për çdo destinacion që nuk e mbulojnë në mënyrë eksplicite, dhe një profil L2TP i konfiguruar për tunel të plotë instalon pikërisht atë. Nëse profili thotë se gjithçka kalon përmes tunelit, lista e rrugëve shtesë ndryshon shumë pak. Hyrja juaj nuk është e gabuar; është thjesht e parëndësishme për destinacionet që nuk i përmend kurrë. Kontrolli për këtë zakonisht qëndron në cilësimin e profilit për të dërguar gjithë trafikun, jo në ndonjë komandë rrugë.
Vendosni cilin model dëshironi vërtet përpara se të redaktoni më shumë hyrje. Tuneli i plotë me përjashtime është një konfigurim tjetër nga tuneli i ndarë me prefikse të caktuara, dhe përzierja e të dyjave prodhon një tabelë që askush nuk mund ta parashikojë.
Nëse organizata kërkon tunel të plotë, ndaloni së provuari ta ndani lokalisht dhe çojeni kërkesën tek ai që zotëron politikën. Një rrugë e shtuar lokalisht që e kundërshton do të hiqet gjithsesi nga përditësimi i radhës i profilit.
Tunelet PPP kanë nevojë për një grep në vend të një çelësi
Për tunelet e bazuar në PPP, defaultroute është çelësi i profilit që krijon një rrugë të parazgjedhur; hiqeni dhe klienti ndalon së kërkuari çdo destinacion. Më pas rrugët shtohen pasi shfaqet ndërfaqja, zakonisht nga /etc/ppp/ip-up:
#!/bin/sh
/sbin/route add -net 192.168.1.0 -interface ppp0
Mbajeni skriptin në pronësi të root dhe të ekzekutueshëm, dhe shtoni një roje mbi emrin e ndërfaqes kur në makinë ekziston më shumë se një profil tuneli. Një grep që ekzekutohet për çdo lidhje PPP dhe supozon një emër pajisjeje është një gabim i vogël me jetë të gjatë.
Verifikoni ndarjen me tre kërkesa
Kapni tabelën ndërsa jeni të lidhur dhe shënoni cila ndërfaqe i shërben tunelit. Më pas kontrolloni destinacionin konkret në vend që të besoni statusin e daljes së komandës që e krijoi. Një kod daljeje raporton nëse mjeti i pranoi argumentet, jo nëse trafiku ndjek rrugën që kishit ndërmend.
Përfundoni me tre kërkesa që vërtetojnë ndarjen: një host i brendshëm sipas adresës, një emër i brendshëm përmes zgjidhësit të brendshëm dhe një faqe publike që duhet të vazhdojë të përdorë lidhjen lokale. Nëse faqja publike tani kalon edhe përmes tunelit, ndarja nuk ndodhi kurrë, çfarëdo që duket se thotë lista e rrugëve.
Rilidhuni edhe një herë dhe përsëritni kërkesën e brendshme, sepse rrugët e shtuara me dorë mund t'i mbijetojnë ndërfaqes që i bëri të vlefshme dhe ta kthejnë në heshtje trafikun në një vrimë të zezë pasi tuneli bie.