Körpülü hotspot-unuzdakı telefon ünvanını və gateway-ini haradansa alır və bu, Pi-nin default route-u deyil. Pi-nin default-unu dəyişmək, Pi-nin öz trafikini hara göndərdiyini dəyişir. Telefon ona bildirilən gateway-dən istifadə etməyə davam edir və həmin gateway uzaq LAN-da yerləşdikdə onun frame-ləri sadəcə körpüdən keçir. İki istehlakçı, iki qərar. Onları ayırmaq, Pi özü yaxşı olduğu halda interneti olmayan hotspot barədə hesabatların çoxunu izah edir.

İki cihaz, iki fərqli gateway qərarı

Pi-nin öz IP stack-i və öz default route-u var. Telefonun öz IP stack-i və öz default route-u var.

ConsumerWho chooses its gatewayWhat carries the traffic
Phone on the bridged APThe remote LAN router, delivered in its client configurationAn Ethernet frame toward that router crosses the AP and TAP bridge
Pi's encrypted connectionThe travel uplink's route toward the VPN peerThe Pi sends its own outer transport packets over the underlay

Bu cədvəl bütün modeldir. Telefonun gateway-i uzaq LAN-dakı bir ünvandır və onun frame-ləri layer 2-də həmin routerə yönəldilir. Pi-nin default route-u Pi-nin öz outer transport-una aiddir və bu, VPN peer-inə travel uplink üzərindən çatmalıdır.

Körpü frame-ləri ötürür, paketləri route etmir

Linux körpüsü Ethernet frame-lərini təyinat MAC ünvanına görə ötürür və portları arasında etdiyi yalnız budur. Telefonun uzaq router-in MAC ünvanına ünvanlanmış frame-i TAP portuna keçirilir və Pi-nin routing cədvəlinə toxunmadan tunnel-dən keçir. Buna görə xarab Pi default route-u telefonu işlək saxlaya bilər və buna görə düzgün biri səhv gateway verilmiş telefonu düzəldə bilməz.

TAP Ethernet frame-ləri daşıyır və körpü portu ola bilər. TUN IP paketlərini daşıyır və ola bilməz. Əgər dizaynınız birini digəri ilə əvəz edibsə, körpü körpü deyil və bunun qalanı tətbiq olunmur.

Telefonun lease-ini kimin payladığını qərar verin

DHCP seçimi 3 router seçimidir və müştəriyə subnet-i üçün hansı gateway-dən istifadə edəcəyini deyir. Uzaq LAN-ın DHCP serveri yeganə paylayıcı olduqda, telefon uzaq gateway alır və dizayn ardıcıldır. Travel tərəfində başqa bir şey əvvəl cavab verdikdə, telefon lokal gateway alır, internet trafiki travel uplink-dən çıxır və uzaq LAN trafikinin heç bir yolu qalmır.

Həmin broadcast domain üçün bir paylayıcı işlədin və verdiklərini qeyd edin.

Pi, hətta eyni lease-dən ünvan aldıqda da ayrı bir haldır. Lease-in təklif etdiyi route-ları quraşdırmalı olub-olmadığını qəsdən qərar verin, çünki idxal olunmuş uzaq default, Pi-nin öz VPN transport-unu saxlamağa çalışdığı tunnel-ə çəkə bilər. systemd-networkd ilə bu qərar DHCP bölməsi altında UseRoutes= olur; dhclient ilə bu, sorğu siyahısındakı routers seçimidir.

Uplink-i körpülü LAN-dan kənarda saxlayın

Pi-nin outer VPN bağlantısını daşıyan interfeys körpü portu olmamalıdır. Əgər olarsa, şifrələnmiş transport genişləndirilmiş LAN-a keçirilir və tunnel öz outer paketlərini daşımağa başlayır, bu da loop deyil, paket itkisi kimi görünən şəkildə uğursuz olur. AP qabiliyyətini və körpü dəstəyini də açıq saxlayın. Station rejimində simsiz interfeys adətən körpü portu ola bilməz, çünki 802.11 başlığında körpünün lazım olan ikinci MAC ünvanı üçün yer yoxdur.

Müəyyən edin genişləndirilmiş broadcast domain-i, bir ünvan planı və həqiqətən istədiyiniz frame filtrləməsini. Pi-də VPN listener-ə icazə vermək hər körpülü müştəriyə Pi-nin idarəetmə xidmətlərinə giriş vermir. Bunlar ayrı qaydalardır və onları bir hesab etmək hotspot-un səssizcə açıq qapıya çevrilmə üsuludur.

Pozulanda dörd şeyi ayrıca yoxlayın

Telefon uzaq LAN-a çata bilmədikdə, dörd müşahidə səbəbləri ayırır. Onları bu ardıcıllıqla işlədin və ilk uğursuz olanda dayanın.

ip route show default
bridge link show
ip -4 neigh show dev br0
tcpdump -ni br0 arp or icmp

Lease ilə başlayın: telefon uzaq subnet-də ünvan və gateway saxlayırmı? Sonra körpüyə baxın və AP portu ilə TAP portunun hər ikisinin forward etdiyini təsdiqləyin. Sonra neighbour cədvəlini oxuyun, çünki uzaq router üçün həll olunmamış giriş frame-lərin çıxdığını və heç nəyin cavab vermədiyini bildirir. Nəhayət, telefon ping edərkən körpüdə frame-lərə baxın, bu sizə nasazlığın ümumiyyətlə IP-dən aşağıda olub-olmadığını deyir.

Bitirdikdə hər default-un hansı cihaza aid olduğunu qeyd edin. Bir sətir sənədləşdirmə lokal və uzaq egress-i qəsdən verilmiş müştəri qərarına çevirir və körpü arayışı onun yanında saxlamağa dəyər.

Əlaqəli məqalələr