Bideratze-taula vs benetako bilaketa: norantz doan VPN trafikoa
Hasi helmuga batetik eta haren iturburutik, eta egiaztatu zein arauk eta zein taulak erabakitzen duten bidea benetan. Testuinguru hori gabe taula osoaren dump-ak engainatu egiten du.
Bideratze-taula baten dump-a VPN arazoak konpontzeko diagnostikorik erabilgarriena da eta gehien itsasten dena. Berrogei lerro aurrizkik makina zerk egin zezakeen esaten dute, hutsegindako eskaerarako zer egin zuen ez. Benetan nahi duzun mekanismoa bilaketa da: iturburu hau eta helmuga hau emanda, zein arauk bat egin zuen, zein taula kontsultatu zen, eta zein interfaze eta hurrengo jauzi atera ziren. Hasi helmuga batetik eta iturburu batetik, gero irakurri taula galdera horrekin eskuan, eta irteera bera zarataren ordez froga bihurtzen da.
Taula hautagaien multzoa da, ez erabakia
Sarrera bakoitzak aurrizki bat eta harekin bat datorren trafikoari zer egin deskribatzen du: interfaze batera bidali, hurrengo jauzi bati eman edo baztertu. Zerrenda horretan ezer ez dago asmoaren arabera ordenatuta, eta giza begiarentzat zehatzena dirudien sarrera ez da beti kernelak aukeratzen duena, aukerak aurrizkirik luzeenaren bat-etortzea jarraitzen duelako eta aurrizki beren artean metrika.
Beraz, lehen urratsa kernelari galdetzea da, zerrenda irakurtzen aritu beharrean. Bilaketaren komandoak helmuga baterako erantzuten du, eta iturburu-argumentu batekin aurreratutako edo lotutako konexio batek erabiliko lukeen bikote zehatzarentzat erantzuten du:
ip route get 198.51.100.10
ip route get 198.51.100.10 from 10.80.0.25
ip -6 route get 2001:db8:10::40
Goiko helbide bakoitza dokumentazioko adibide bat da. Kontua erantzunaren forma da: interfazea, hautatutako iturburu-helbidea, atebidea eta sarrera nondik etorri zen taula. Irteera horrek espero zenuen interfazearekin bat egiten ez badu, arazoa komando bakar batekin kokatu duzu, eta taula osoa irakurtzeak ez zukeen esango zein hautagai nagusitu zen.
Bilaketak arauak zeharkatzen ditu, gero taulak
Linuxen erabakia bi fasetan egiten da. Politika-arauak lehentasun-ordenan ebaluatzen dira, eta bat egiten duen lehen arauak kontsultatzeko taula bat izendatzen du; taula horrek aurrizkirik luzeenaren bat-etortzea egiten du gero. Arau batek iturburua, helmuga, suebaki-marka, interfazea edo konbinazio bat har dezake kontuan, eta horregatik taula nagusiaren dump-a erabat zehatza eta erabat garrantzirik gabea izan daiteke ikertzen ari zaren paketearentzat.
ip rule show
ip route show table all | head -40
ip route show table 100
Arau batek zure VPN pool-eko trafikoa 100 taulara bidaltzen badu, orduan 100 taula da garrantzitsua, eta taula nagusia amua da. Hau da, halaber, bideratzaile batean iturburuan oinarritutako bideratzearen atzeko mekanismoa: helmuga berak bi erantzun desberdin izan ditzake paketea nondik etorri den arabera, eta iturburu-argumentudun bilaketak bakarrik erakusten du zein den aplikagarria.
IPv6-k bere arauak eta taulak ditu. Bi familiak exekutatzen dituen diseinu batek bi bilaketak behar ditu, eta funtzionatzen duen IPv4 erantzunak ez du ezer esaten v6 bideari buruz, dual-stack bezero batek nahiago izan dezakeena.
Zer instalatzen duen VPN bezeroak
Bezeroek normalean ez dute bide lehenetsia ordezkatzen, horrek tunelaren kanpoko bidea bera hautsiko lukeelako. Aurrizki-luzeraz irabazten duen zerbait zehatzagoa instalatzen dute: 0.0.0.0/1 eta 128.0.0.0/1 estaltzen dituzten erdi-lehenetsitako bikote bat trikimailu klasikoa da, biak 0.0.0.0/0 baino aurrizki luzeagoak baitira eta elkarrekin espazio osoa estaltzen dute. Beste batzuek aurrizki pribatu zehatzak gehi politika-arau bat instalatzen dituzte, eta batzuek marka bat gehitzen dute hautatutako trafikoa soilik harrapatzeko.
Horregatik "VPN-ak ez zuen nire bide lehenetsia aldatu" ez da hutsegitearen froga. Egiaztatu zer gehitu zuen eta ea aipatutako helmuga aurrizki horien barruan dagoen:
ip route show | grep -E 'tun|wg|ppp|ipsec'
ip route get 10.20.30.40 from 10.80.0.25
Bi erdi-bide erraz pasatzen dira oharkabean dump batean, ez baitute lehenetsitako itxurarik. Aurrizki bat sartzea ahaztu zuen split-tunnel konfigurazio batek ehizatzen ari zaren sintoma bera sortzen du: tunela erabili beharko lukeen aplikazioak bertan behera lokalki ebazten eta konektatzen du. Alderatu instalatutako aurrizkiak erabiltzaileak benetan behar dituen helmugekin, probatu zenituen helbideekin baino. Fitxategi-zerbitzaria baina haren ebazlea estaltzen ez dituen split-tunnel zerrenda batek helbide publiko batera ebazten duen eta gero autentifikazioan huts egiten duen konexioa sortzen du; hori pasahitz arazo bat dirudi eta bide arazo bat da.
Kanpoko bideak ere bizirik iraun behar du
Tunela bera trafikoa da. Kapsulatutako karga daramaten paketeak parearen helbidera joaten dira interfaze fisikoaren bidez, eta bide hori ezin da tunelera itzuli. Hori gertatzen denean, huts egite bereizgarria lortzen duzu: tunela ezartzen da eta gero trafikoa igortzeari uzten dio, tunelarentzako garraioa orain tunelaren barruan dagoelako.
Egiaztatu parearen helbidea barruko helmuga egiaztatu zenuen bezala, eta berretsi interfaze fisikoan ebazten duela, ez tunelean:
ip route get 203.0.113.10
traceroute -n -m 5 203.0.113.10
Bide errekurtsiboa, pareari heltzen dion politika-araua edo tunel osoaren bezero batek ordezkatutako bide lehenetsia dira hiru arrazoi ohikoenak. Hirurak kanpoko bilaketan ikusten dira, eta bat bera ere ez da ikusten gertakariaren ondoren hartutako taula nagusiaren dump batean.
Zer ezin dizun bideratze-irteerak esan
Bilaketa zuzenak kernelak paketea leku zentzuzkora bidaliko lukeela esan nahi du. Ez du esan nahi suebakiak baimena ematen duenik, IPsec politikak estaltzen duenik, NAT arauak itzultzen duenik edo urruneko aldeak itzulera-biderik duenik. Horietako bakoitza geroagoko etapa bat da, eta strongSwan-en birbidaltze-oharrak paketeak bi muturretan zeharkatu behar duen katea deskribatzen dute.
Ez du aplikazio-mailako lotura ere kontuan hartzen. Prozesu batek interfaze batera lotu, marka bat ezarri edo bere ebazlea erabil dezake eta probatu zenuenaz bestelakoa ebazten duen izen batekin konektatu. Bilaketa zuzena denean eta konexioak huts egiten jarraitzen duenean, hurrengo galdera da zein prozesuk egiten duen eta prozesu horrek zuk ikusten duzun taula bera ikusten duen.
Beraz, eutsi diagnostikoari ordenatzen: izendatu helmuga eta iturburua, exekutatu bilaketa, irakurri bilaketak izendatutako taula eta araua soilik, eta gero probatu hurrengo etapa. Segida horrek bideratze-ikerketak minutu gutxitan mantentzen ditu eta beste norbaitek jarrai dezakeen erregistroa uzten du, itsatsitako taula batek inoiz egiten ez duena.