WireGuard партнер излази кроз погрешан WAN: пет провера по реду
На мрежном пролазу са више узводних веза, руковање и прослеђени ток могу кренути различитим путевима. Прођите кроз правило, ознаку, превод и одговор тим редом.
Две узводне везе, један мрежни пролаз и WireGuard партнер чији се саобраћај стално појављује на резервној линији. Руковање остаје здраво све време. Зато је симптом лако погрешно прочитати као квар WireGuard-а, а не као проблем усмеравања.
Извршите провере испод по реду. Свака има услов за заустављање, а прескакање напред обично даје самоуверен погрешан одговор.
Одвојте руковање од прослеђеног тока
Шифрована размена са партнером има руту до јавне адресе сервера. Прослеђени клијентски саобраћај има другу дестинацију и може бити изабран ознакама или правилима политике. То су две одлуке усмеравања које деле један интерфејс. Третирати једну као доказ о другој је прва грешка.
Зауставите се чим се ухватите да закључујете из руковања. Оно је доказ само о путу до крајње тачке.
Читајте правило политике, не подразумевану табелу
Подразумевана табела показује шта се дешава када ниједно правило политике не одговара. На пролазу који усмерава по извору, ознаци или дестинацији, одлучујуће правило живи на другом месту. Обична табела може изгледати потпуно разумно док се прави избор доноси изнад ње.
ip rule show
ip route show table main
ip -4 route get 203.0.113.9 from 10.30.8.2
Прочитајте правила политике и табеле на које она упућују. Затим потврдите које правило одговара вашем тест току. Правило које упућује на интерфејс који више не носи жељену узводну везу је налаз, а не детаљ. Тражење руте на крају показује одговор много брже од читања табеле и нагађања.
Проверите ознаку и превод заједно
Усмеравање по политици ослања се на ознаку пакета постављену раније у ланцу. Ако правило означавања промаши ваш саобраћај, ток пада у главну табелу и излази кроз оно што је тамо подразумевано. Прослеђени пакети често прескачу ланце написане за локално генерисан саобраћај.
nft list chain inet filter prerouting
conntrack -L -s 10.30.8.2 2>/dev/null | head
ip -s link show dev eth1
Превод мора да се слаже са узводном везом која носи ток. Правило које преводи на примарну адресу док пакет излази кроз резервну линију ствара одговоре адресиране на интерфејс који ток никада није користио. Проверите сопствени услов интерфејса правила превода. Безусловно правило ради док се не употреби друга узводна веза, а затим отказује на начин који изгледа повремено.
Обратите пажњу који интерфејс носи одговор
Снимите на обе узводне везе док један захтев траје. Забележите који интерфејс носи захтев, а који одговор. Асиметрични путеви се много лакше виде него предвиђају.
Ако одговор стигне кроз погрешну узводну везу, проблем се преселио са WireGuard-а на праћење веза или превод. Никаква промена конфигурације партнера то неће поправити.
Промените једну ствар са путем назад
Задржите приступ преко конзоле или ван опсега пре уређивања правила политике на пролазу. Направите једну промену, тестирајте исту дозвољену дестинацију, затим се поново повежите и потврдите да руковање још користи жељени пут до крајње тачке. Додајте нумерички тест на другу фамилију адреса, јер политика само за v4 оставља исту грешку доступном.
Забележите коју је узводну везу користио сваки ток. Тај запис претвара следећи извештај у двоминутну проверу уместо целог поподнева. белешке WireGuard-а о именима простора и усмеравању описују како намерно одвојити пут до крајње тачке од тунелираног саобраћаја, што је обично чистије од копирања заобилазног решења са подразумеваном рутом.