Кол алышуу бар, дарек жок: WireGuard'дун үч абалы
Жаңы кол алышуу каршы тарап жооп бергенин далилдейт, интерфейс өз дарегин сактап турганын же кийинки пакет көздөлгөн жогорку канал аркылуу кетээрин эмес.
WireGuard бир эле учурда жаңы кол алышууга ээ болуп, дареги жок болушу мүмкүн, жана бул абал карама-каршы эмес, ырааттуу. Кол алышуу каршы тараптын окуясы, дарек интерфейске таандык, ал эми маршрут пакеттин кайсы жогорку канал аркылуу чыгарын чечет. Үч катмар, үч ээ, жана калган экөө соо көрүнгөндө да ар бири иштен кетиши мүмкүн.
Аларды бир статус катары окуу эки мүнөттүк диагностиканы кызматтарды кайра баштоо менен өткөн жарым күнгө айландырган нерсе.
Кол алышуу каршы тараптын окуясы, дарек берүү окуясы эмес
WireGuard'дун кол алышуусу конфигурацияланган каршы тараптын жарактуу ачкыч менен жооп бергенин жана сессия ачкычтарынын учурда экенин далилдейт. Ал интерфейстеги жергиликтүү дарек жөнүндө эч нерсе айтпайт, жана ага кандайдыр бир маршрут көрсөтөбү же жокпу тууралуу да. Даректи жардамчы же тармак менеджери ыйгарат, ал эми протоколдун конфигурациясы каршы тараптарды жана ачкычтарды гана атайт. Ушул экөөнү чаташтыруу соо кол алышууну иштеп жаткан туннель катары окуунун себеби.
Ошондуктан wg show колдонмодон бир да пакетти кабыл ала албаган интерфейсте секунддук кол алышууну билдире алат.
Интерфейсти кайра түзгөн менеджер каршы тараптын конфигурациясына тийбестен даректи таштай алат, жана кийинки кол алышуу дароо ийгиликтүү болот, анткени ачкычтар эч качан өзгөргөн эмес. Ийгиликтүү кол алышуу тууралуу журнал сабы так жана бузулууга тиешеси жок.
| Observation | Which layer it belongs to | Wrong conclusion it invites |
|---|---|---|
| Handshake a few seconds old | Peer and keys | The tunnel is usable for application traffic |
Address present on wg0 | Interface configuration | Traffic actually egresses through it |
Route points at wg0 | Forwarding table | The outer packet uses the intended uplink |
Интерфейстин дарегинин өз ээси бар
Туннель түзмөгүндөгү дарек жардамчынын Address сабынан, интерфейсте иштеп жаткан DHCP кардарынан, же туташуу учурунда аны түзгөн башкаруу демонунан келиши мүмкүн. Кандай болбосун, ошол компонент дарекке ээ жана өз логикасына ылайык аны калыбына келтирет же келтирбейт. Даректи ээсин атабастан окуу сизди эмне үчүн жоголгонун түшүндүрө албай калтырат.
Бир интерфейсте эки ээ классикалык бузулуу. Бир түзмөктө жардамчы менен иш тактасынын тармак менеджерин иштетүү бири экинчиси жаңы конфигурациялаган нерсени өчүргөн жарыш жаратат, ал эми акыркы чекит ушунун баарында жооп берип турат.
Бир ээни тандап, экинчи куралга башкаруунун ордуна байкоого уруксат бериңиз. Бул чечимди жазып коюуга татыктуу, анткени симптом жумалар өткөндөн кийин пайда болот жана даректин кокустан жоголушуна окшош.
Жогорку каналды маршрут тандайт, интерфейс эмес
wg0 ке көрсөткөн ички маршрут трафиктин туннелге киришин чечет. Өзүнчө чечим шифрленген сырткы пакеттерди каршы тарапка жөнөтөт, ал эми бир нече жогорку каналы бар хостто бул чечим жиберүү таблицасынан жана саясат эрежелеринен келет. Wi-Fi роуминги ички дарекке тийбестен сырткы жолду өзгөртө алат.
Ошентип, иштеп жаткан туннель менен жетүүгө мүмкүн болбогон каршы тарап шайкеш абалдар, ошондой эле туура каршы тарап менен бузулган ички маршрут да. Үч байкоону бирге, бир эле учурда алуу керек, болбосо салыштыруунун мааниси жок.
Үч абалды бир өтүүдө салыштырыңыз
Окууга гана арналган үч буйрук үч суроого бузулууну эң тез бөлүп чыгарган тартипте жооп берет. Алардын ортосунда эч нерсени өзгөртпөстөн иштетиңиз.
ip address show dev wg0
ip route get 10.80.0.1
wg show wg0 latest-handshakes transfer
Биринчиси интерфейстин дареги бар-жогун көрсөтөт, экинчиси белгилүү бир багыт азыр кайсы түзмөктү колдонорун көрсөтөт. Үчүнчүсү акыркы кол алышуу убактысын жана байт эсептегичтерин билдирет, жана үчөөнүн ичинен жергиликтүү хостту эмес, каршы тарапты сүрөттөгөн жалгыз ошол.
Эсептегичтерди да, убакыт белгисин да окуңуз. Өткөрүү тегиз турганда тынымсыз жаңырып турган кол алышуу каршы тарап жооп берип жатканын, бирок пайдалуу эч нерсе өтпөй жатканын билдирет, бул ачкычтарга эмес, маршруттоого же ACL ге көрсөтөт. Дарек бар кезде алдыга жылууну токтоткон убакыт белгиси тескерисинче жогору жакты көрсөтөт. Эки окуу тең чыгарылыштын бир эле сабынан келет, жана кол алышуу бар-жогун гана текшерсеңиз, экөөнүн бири да көрүнбөйт.
Туура эмес болгон конкреттүү абалды оңдоп, анан туннелди эмес, колдонмону кайра сынаңыз. Жаңы кол алышуу каршы тарап жөнүндө далил, ал эми каршы тарап жөнүндө далил браузериңиздин кийинки суроосу дарек, маршрут жана иштеп жаткан жогорку канал табаарына далил эмес. wg-quick колдонмосу алардын кайсынысын жардамчы орнотуп, кайсынысы протоколго таандык экенин ачык айтат.