nftables.d guards hardcode br-lan — backend unreachable from portal side on renamed bridges (30-backend-firewall, 31-admin-board)

Đã đóng
#757 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@Amperstrand đang làm issue này rồi.

Từ ngày 8/10/2026.

  • #784 của @Amperstrand — đang mở

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go, linux
Lĩnh vực
infrastructure, networking

Hướng nghiên cứu

Start with the two nftables files named in the issue: /etc/nftables.d/30-backend-firewall.nft and 31-admin-board, where each rule hardcodes iifname "br-lan". The issue also asks for a startup check in the Go service that logs an error naming the expected bridge when the interface is missing. Done means the portal interface is derived from the NDS gatewayinterface or installed topology rather than a literal, and a missing interface produces a clear log message. The issue's design questions remain open, so confirm the approach with maintainers first.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

release:v0.6.0

Migrated from Amperstrand/tollgate-module-basic-go#101 as part of the fork retirement — OpenTollGate/tollgate-module-basic-go is the single source of truth; the fork issue carries the original discussion and any lab evidence. Retirement plan: see the tracking issue linked in the migration comment there.]

Class: silent backend loss on non-stock bridge names

/etc/nftables.d/30-backend-firewall.nft and 31-admin-board hardcode
iifname "br-lan". The 30- file's own comment acknowledges it ("operators
who rename their bridge will lose API access"), but the failure is
silent: the portal SPA cannot reach :2121, payments never arrive, and the
operator sees client-side symptoms only.

On our split-plane bench DUTs this combined with the setup-rebind issue
(#100) to blackhole the whole payment leg; it took a wire-level
reproduction to localize.

Ask

  • Derive the portal interface from the NDS gatewayinterface (or the
    installed topology) at package install/upgrade time instead of a
    compile-time literal.
  • Fail loudly: if the referenced interface does not exist at service
    start, log an error naming the expected bridge (a WARN in klog would
    have saved a full debug session).

Companion bench-side context: the same naming assumption exists in the
shipped NDS users_to_router generation ordering (bench issue: pre-auth
allowlist shadowed by catch-all drop — the "payments never reach the
backend" signature).

Ngôn ngữ chính
Go
Star
12
Fork
14
Merge trung bình
3 ngày 22 giờ
Pull request đã merge (30 ngày)
262

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của OpenTollGate/tollgate-module-basic-go

Tất cả issue của OpenTollGate/tollgate-module-basic-go

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.