Ці патрэбна ноўтбуку з VPN перасылка IP, каб працаваць хутчэй?
Перасылка перадае пакеты паміж інтэрфейсамі; яна не паскарае лакальны браўзер. Аддзяліце ролю кліента ад ролі шлюза, перш чым пашыраць правіла.
Ператварэнне ноўтбука ў маршрутызатар — папулярны спосаб вырашаць не тую праблему. Перасылка існуе для таго, каб машына магла перадаваць пакеты, пункт прызначэння якіх не яна сама, і ёй няма справы да таго, як хутка браўзер на гэтай жа машыне загружае старонку. Два шляхі выглядаюць аднолькава толькі таму, што абодва гоняць трафік праз адзін тунель. Раздзяліце іх аднойчы — і мноства парад пра ўключэнне перасылкі ці адкрыццё файрвола акажацца апісаннем тапалогіі, якой у вас няма.
Два шляхі пакетаў, якія з-за стала выглядаюць аднолькава
Браўзер на ноўтбуку стварае ўласны запыт. Хост выбірае маршрут тунеля, кліенцкі працэс абгортвае пакет і адпраўляе яго партнёру, а адказ вяртаецца ў праграму. Нішто ў гэтай паслядоўнасці не перасякае рашэнне аб перасылцы, бо гэтая машына — адначасова крыніца і пункт прызначэння размовы.
Цяпер пастаўце іншую прыладу на наўмысна наладжаны сегмент Ethernet і зрабіце ноўтбук яе шлюзам па змаўчанні. Гэтая прылада спараджае запыт, ноўтбук атрымлівае пакет, адрасаваны ў іншае месца, і ядро мусіць вырашыць, ці перадаваць яго далей. Гэта роля перасылкі, і яна прыходзіць з папярэднімі ўмовамі, якіх роля кліента ніколі не патрабавала: дазволены транзітны шлях, маршруты з абодвух бакоў і зваротны шлях, які працуе, калі трансляцыя — частка задумы.
| Role | Who originates the traffic | What has to be true |
|---|---|---|
| Client only | The laptop itself | Tunnel route, working resolver, supported profile |
| Gateway | Another device | Forwarding enabled, permitted transit, routes both ways, return-path decision |
Што насамрэч змяняе ip_forward
Дакументацыя ядра па IPv4 sysctl апісвае ip_forward як перамыкач, які дазваляе хосту перасылаць пакеты паміж інтэрфейсамі. Гэта не хуткі шлях для трафіку, створанага самым хостам, і ніякае чытанне гэтага параметра не робіць лакальны браўзер хутчэйшым. Хутчэй наадварот: перасылка дадае стан і палітыку машыне, якая раней рабіла менш працы.
Тая ж дакументацыя папярэджвае, што змена значэння скідвае іншыя параметры IPv4 да іхніх значэнняў па змаўчанні для хоста ці маршрутызатара. Гэта робіць перамыкач падзеяй канфігурацыі, а не праверкай: настроеныя параметры могуць вярнуцца назад пад вамі, і змена можа быць прычынай рэгрэсу, якую ніхто не здагадаецца ёй прыпісаць. Гэта таксама значыць, што перамыкач трэба ўсталяваць аднойчы, свядома, тым, хто валодае роляй шлюза. Пераключэнне яго падчас расследавання запаволення — адзіны выпадак, калі пабочны эфект гарантавана блытаюць з сімптомам.
Тры пытанні файрвола, якія не адно і тое ж пытанне
Дазволіць слухача VPN, дазволіць службы, якія запускае ноўтбук, і дазволіць трафіку праходзіць праз ноўтбук — гэта тры асобныя дазволы. Першы дае партнёру дасягнуць дэмана, другі адкрывае нешта лакальнае, а трэці ператварае машыну ў транзіт для кагосьці іншага. Кожны мае іншы абсяг, і апошні значна шырэйшы за адказы, якія патрэбныя звычайнай зыходнай праграме.
Калі пэўны паток заблакаваны, назвіце яго крыніцу, пункт прызначэння, кірунак і ўладальніка палітыкі, перш чым правіць правіла. Вузкае правіла для гэтага патоку — выпраўленне; прыняцце ўсяго на тунельным інтэрфейсе — змена палітыкі, якая выпадкова ўключае выпраўленне. Браўзер, які пасля гэтага працуе, даказвае, што паток працуе, а не што шырокае правіла было неабходным.
Мерайце толькі тады, калі шлях правільны
Мерайце з тым жа пунктам прызначэння, той жа нагрузкай і параўнальнымі ўмовамі, змяняючы адну зменную за раз. Тэст, які злучае змену перасылкі, пашырэнне файрвола і скапіяваную наладу шыфра, дае лік і ніякага тлумачэння, бо нішто ў ім не кажа, якая з трох зрушыла вынік.
Трымайце збоі маршрутаў і рэзалвера зусім па-за размовай пра прадукцыйнасць. Імя, якое марудна вырашаецца, — не праблема прапускной здольнасці, а перадача, якая спыняецца на адным фіксаваным памеры, звычайна пытанне MTU, а не абмежаванне хуткасці. Запішыце, якое з гэтых трох вы насамрэч назіралі, перш чым параўноўваць любыя лікі. Інакш наступны чытач атрымае ў спадчыну бенчмарк, які мерае не тое, і змену, якую ніхто не можа абгрунтаваць.
Апішыце тапалогію, якая ў вас ёсць, а не этыкетку на кліенце
Ноўтбук, які дзеліць сваё злучэнне, размяшчае маршрутызаваную сетку кантэйнераў ці нясе трафік для віртуальнай машыны, — гэта шлюз, як бы праграма сябе ні называла. Слова кліент апісвае, як наладжаны тунель, а не ці перадаюцца пакеты камусьці іншаму.
Зрабіце ролю відавочнай у інструкцыі па эксплуатацыі: што спараджае трафік, што мусіць праходзіць праз машыну і пра што з двух ідзецца ў бягучай задачы. Уключайце ролю шлюза, калі яна належыць да падтрыманага плана, а не як невытлумачаная хуткасная папраўка да тапалогіі, якой яна ніколі не патрабавалася.