Điểm truy cập VPN cầu nối: điện thoại dùng tuyến mặc định nào?
Tuyến mặc định của Pi không phải cổng của điện thoại. Hãy tách hai quyết định, giữ uplink ngoài cầu nối và kiểm tra lease trước khi kiểm tra đường hầm.
Điện thoại trên điểm truy cập cầu nối của bạn nhận địa chỉ và cổng từ đâu đó, và đó không phải tuyến mặc định của Pi. Đổi tuyến mặc định của Pi sẽ đổi nơi Pi gửi lưu lượng của chính nó. Điện thoại vẫn dùng cổng mà nó được cho biết, và khi cổng đó nằm trên LAN từ xa, các khung của nó chỉ đơn giản đi qua cầu nối. Hai đối tượng tiêu thụ, hai quyết định. Tách chúng ra giải thích phần lớn báo cáo về điểm truy cập không có internet trong khi bản thân Pi vẫn ổn.
Hai thiết bị, hai quyết định cổng khác nhau
Pi có ngăn xếp IP và tuyến mặc định của riêng nó. Điện thoại có ngăn xếp IP và tuyến mặc định của riêng nó.
| Consumer | Who chooses its gateway | What carries the traffic |
|---|---|---|
| Phone on the bridged AP | The remote LAN router, delivered in its client configuration | An Ethernet frame toward that router crosses the AP and TAP bridge |
| Pi's encrypted connection | The travel uplink's route toward the VPN peer | The Pi sends its own outer transport packets over the underlay |
Bảng đó là toàn bộ mô hình. Cổng của điện thoại là một địa chỉ trên LAN từ xa, và các khung của nó được chuyển tiếp ở lớp 2 về phía bộ định tuyến đó. Tuyến mặc định của Pi liên quan đến vận chuyển bên ngoài của chính Pi, phải đến được đối tác VPN qua uplink di chuyển.
Cầu nối chuyển tiếp khung, nó không định tuyến gói
Cầu nối Linux chuyển tiếp khung Ethernet theo MAC đích, và đó là tất cả những gì nó làm giữa các cổng của mình. Khung của điện thoại gửi tới MAC của bộ định tuyến từ xa được chuyển sang cổng TAP và đi qua đường hầm mà không chạm vào bảng định tuyến của Pi. Đó là lý do một tuyến mặc định hỏng của Pi có thể để điện thoại vẫn hoạt động, và là lý do một tuyến đúng không thể sửa một điện thoại đã nhận sai cổng.
TAP mang khung Ethernet và có thể là cổng của cầu nối. TUN mang gói IP và không thể. Nếu thiết kế của bạn thay cái này bằng cái kia thì cầu nối không phải cầu nối và phần còn lại ở đây không áp dụng.
Quyết định ai cấp lease cho điện thoại
Tùy chọn 3 của DHCP là tùy chọn bộ định tuyến, và nó cho máy khách biết dùng cổng nào cho mạng con của mình. Khi máy chủ DHCP của LAN từ xa là nhà cấp phát duy nhất, điện thoại nhận cổng từ xa và thiết kế nhất quán. Khi thứ khác ở phía di chuyển trả lời trước, điện thoại nhận cổng cục bộ, lưu lượng internet của nó đi ra qua uplink di chuyển, và lưu lượng tới LAN từ xa không có đường nào cả.
Chạy một nhà cấp phát duy nhất cho miền quảng bá đó, và ghi lại những gì nó cấp.
Pi là trường hợp riêng, ngay cả khi nhận địa chỉ từ cùng lease. Hãy quyết định có chủ đích xem nó có nên cài các tuyến mà lease cung cấp hay không, vì một tuyến mặc định từ xa được nhập vào có thể kéo vận chuyển VPN của chính Pi vào đường hầm mà nó đang cố giữ sống. Với systemd-networkd quyết định đó là UseRoutes= trong phần DHCP; với dhclient đó là tùy chọn routers trong danh sách yêu cầu.
Giữ uplink ngoài LAN cầu nối
Giao diện mang kết nối VPN bên ngoài của Pi không được trở thành cổng của cầu nối. Nếu trở thành, vận chuyển mã hóa được chuyển vào LAN mở rộng và đường hầm cuối cùng mang các gói bên ngoài của chính nó, điều này thất bại theo cách trông giống mất gói hơn là vòng lặp. Cũng giữ rõ ràng khả năng AP và hỗ trợ cầu nối. Giao diện không dây ở chế độ station thường không thể là cổng cầu nối, vì tiêu đề 802.11 không có chỗ cho địa chỉ MAC thứ hai mà cầu nối cần.
Xác định miền quảng bá mở rộng, một kế hoạch địa chỉ, và việc lọc khung mà bạn thực sự muốn. Cho phép trình nghe VPN trên Pi không cấp cho mọi máy khách cầu nối quyền truy cập dịch vụ quản lý của Pi. Đó là các quy tắc riêng, và coi chúng là một chính là cách một điểm truy cập lặng lẽ trở thành cửa mở.
Kiểm tra bốn thứ riêng biệt khi nó hỏng
Khi điện thoại không đến được LAN từ xa, bốn quan sát tách các nguyên nhân. Chạy chúng theo thứ tự này và dừng ở cái đầu tiên thất bại.
ip route show default
bridge link show
ip -4 neigh show dev br0
tcpdump -ni br0 arp or icmpBắt đầu với lease: điện thoại có địa chỉ và cổng trên mạng con từ xa không? Sau đó xem cầu nối, và xác nhận cả cổng AP và cổng TAP đều chuyển tiếp. Sau đó đọc bảng lân cận, vì một mục chưa phân giải cho bộ định tuyến từ xa nghĩa là khung đi ra mà không có gì trả lời. Cuối cùng quan sát khung trên cầu nối trong khi điện thoại ping, điều này cho bạn biết lỗi có nằm dưới IP hay không.
Ghi lại thiết bị nào sở hữu từng tuyến mặc định khi bạn xong. Một dòng tài liệu biến việc ra ngoài cục bộ so với từ xa thành quyết định có chủ đích của máy khách, và tham chiếu cầu nối đáng để giữ bên cạnh.