Kannettavan muuttaminen reitittimeksi on suosittu tapa ratkaista väärä ongelma. Edelleenohjaus on olemassa, jotta kone voi välittää paketteja, joiden kohde se ei itse ole, eikä sillä ole mielipidettä siitä, kuinka nopeasti saman koneen selain lataa sivun. Kaksi polkua näyttävät samalta vain siksi, että molemmat lähettävät liikennettä yhden tunnelin läpi. Erota ne kerran, ja suuri osa neuvoista edelleenohjauksen käyttöönottamiseksi tai palomuurin avaamiseksi osoittautuu kuvaavan topologiaa, jota sinulla ei ole.

Kaksi pakettipolkua, jotka näyttävät työpöydältä identtisiltä

Kannettavan selain luo oman pyyntönsä. Isäntä valitsee tunnelin reitin, asiakasprosessi käärii paketin ja lähettää sen vastapuolelle, ja vastaus palaa sovellukseen. Mikään tuossa sarjassa ei ylitä edelleenohjauspäätöstä, koska tämä kone on sekä keskustelun lähde että kohde.

Aseta nyt toinen laite tarkoituksella konfiguroituun Ethernet-segmenttiin ja tee kannettavasta sen oletusyhdyskäytävä. Se laite aloittaa pyynnön, kannettava vastaanottaa muualle osoitetun paketin, ja ytimen on päätettävä, välittääkö se sen eteenpäin. Se on edelleenohjausrooli, ja se tuo mukanaan edellytyksiä, joita asiakasrooli ei koskaan tarvinnut: sallittu kauttakulkupolku, reitit molemmilla puolilla ja paluupolku, joka toimii vielä, jos käännös on osa suunnittelua.

RoleWho originates the trafficWhat has to be true
Client onlyThe laptop itselfTunnel route, working resolver, supported profile
GatewayAnother deviceForwarding enabled, permitted transit, routes both ways, return-path decision

Mitä ip_forward todella muuttaa

Ytimen IPv4 sysctl -dokumentaatio kuvaa ip_forward kytkimeksi, joka sallii isännän välittää paketteja rajapintojen välillä. Se ei ole nopea polku liikenteelle, jonka isäntä itse loi, eikä mikään kyseisen parametrin lukeminen tee paikallisesta selaimesta nopeampaa. Jos jotain, edelleenohjaus lisää tilaa ja käytäntöä koneeseen, joka teki aiemmin vähemmän työtä.

Sama dokumentaatio varoittaa, että arvon muuttaminen palauttaa muut IPv4-parametrit niiden isäntä- tai reititin oletusarvoihin. Se tekee kytkimestä konfigurointitapahtuman eikä koetuksen: viritetyt asetukset voivat palautua jalkojesi alta, ja muutos voi olla vastuussa regressiosta, jota kukaan ei tulisi ajatelleeksi laskea sen syyksi. Se tarkoittaa myös, että kytkin olisi asetettava kerran, tarkoituksella, sen toimesta, joka omistaa yhdyskäytäväroolin. Sen kääntäminen hidastumisen tutkinnan aikana on ainoa tapaus, jossa sivuvaikutus varmasti sekoitetaan oireeseen.

Kolme palomuurikysymystä, jotka eivät ole sama kysymys

VPN-kuuntelijan salliminen, kannettavan ajamien palveluiden salliminen ja liikenteen salliminen kulkea kannettavan läpi ovat kolme erillistä lupaa. Ensimmäinen päästää vastapuolen daemoniin, toinen paljastaa jotain paikallista, ja kolmas tekee koneesta kauttakulun jollekin toiselle. Jokaisella on eri laajuus, ja viimeinen on paljon laajempi kuin vastaukset, joita tavallinen lähtevä sovellus tarvitsee.

Kun tietty virtaus on estetty, nimeä sen lähde, kohde, suunta ja käytännön omistaja ennen säännön muokkaamista. Kapea sääntö kyseiselle virtaukselle on korjaus; kaiken hyväksyminen tunnelirajapinnalla on käytännön muutos, joka sattumalta sisältää korjauksen. Selain, joka toimii sen jälkeen, todistaa, että virtaus toimii, ei sitä, että laaja sääntö oli tarpeen.

Mittaa vasta, kun polku on oikein

Mittaa samalla kohteella, samalla kuormalla ja vertailukelpoisilla olosuhteilla ja muuta yhtä muuttujaa kerrallaan. Testi, joka kokoaa edelleenohjausmuutoksen, palomuurin laajennuksen ja kopioidun salausasetuksen, tuottaa luvun eikä mitään selitystä, koska mikään siinä ei kerro, mikä kolmesta siirsi tulosta.

Pidä reitti- ja ratkaisinvirheet kokonaan suorituskykykeskustelun ulkopuolella. Hitaasti ratkeava nimi ei ole läpäisykyvyn ongelma, ja yhteen kiinteään kokoon pysähtyvä siirto on yleensä MTU-kysymys eikä nopeusraja. Kirjoita muistiin, minkä näistä kolmesta todella havaitsit, ennen kuin vertailet mitään lukuja. Muuten seuraava lukija perii mittauksen, joka mittaa väärää asiaa, ja muutoksen, jota kukaan ei voi perustella.

Kuvaile topologia, joka sinulla on, älä asiakkaan tarraa

Kannettava, joka jakaa yhteytensä, isännöi reititettyä konttiverkkoa tai kantaa liikennettä virtuaalikoneelle, on yhdyskäytävä, mitä tahansa ohjelmisto kutsuu itseään. Sana asiakas kuvaa, miten tunneli on konfiguroitu, ei sitä, välitetäänkö paketteja jollekin toiselle.

Tee roolista selvä käyttöohjeessa: mikä synnyttää liikennettä, mikä on kuljettava koneen läpi ja kummasta kahdesta nykyinen tehtävä on. Ota yhdyskäytävärooli käyttöön, kun se kuuluu tuettuun suunnitelmaan, ei selittämättömänä nopeussäätönä topologiaan, joka ei koskaan tarvinnut sellaista.

Aiheeseen liittyvät artikkelit