Điểm:0

Wireguard không hoạt động với enpoint có trong AllowedIps

lá cờ cn

Tôi chạy một enpoint wireguard dưới dạng bộ chứa docker trên máy chủ của mình với các máy khách roadwarrior kết nối với nó qua LTE:

sơ đồ mạng lưới bảo vệ

Địa chỉ máy chủ thực là một IP công cộng tĩnh. Cấu hình máy khách như sau (loại trừ các phần không liên quan):

[Giao diện]
Địa chỉ = 10.254.99.2

[Ngang nhau]
Ips được phép = 10.254.99.1/32
Điểm cuối = 192.168.5.55

Điều này hoạt động tốt nếu tôi ping ứng dụng khách từ bên trong vùng chứa docker. Nhưng vì tôi cũng muốn tiếp cận máy khách từ máy chủ docker, nên tôi thêm một tuyến trên máy chủ:

tuyến ip thêm 10.254.99.0/24 qua 172.17.0.2 dev docker0 src 192.168.5.55

Theo đó, tôi bổ sung src địa chỉ vào danh sách AllowedIps trên máy chủ:

[Ngang nhau]
Ips được phép = 10.254.99.1/32, 192.168.5.55/32

Và với điều này, mọi thứ ngừng hoạt động. Tôi không thể ping máy khách, từ máy chủ cũng như từ bên trong vùng chứa nữa. Thay vào đó, nếu tôi cho phép tất cả Ips trên máy khách, mọi thứ sẽ hoạt động như mong đợi:

[Ngang nhau]
Ips được phép = 0.0.0.0/0

Nhưng tôi không muốn định tuyến tất cả lưu lượng truy cập qua đường hầm. cách thích hợp để làm điều này là gì?

A.B avatar
lá cờ cl
A.B
nhiều vấn đề cùng một lúc. `Điểm cuối = 192.168.5.55`.Điều đó có nghĩa là bạn đang cố gắng tạo đường hầm 192.168.5.55 bên trong đường hầm được bao bọc trong 192.168.5.55?
lá cờ cn
Tôi không có ý định nhưng tôi đoán đó là những gì tôi đang làm. Tôi chỉ muốn cho phép lưu lượng truy cập bắt nguồn từ 192.168.5.55 đến wg. Tuy nhiên, không chắc tại sao điều này hoạt động với 0.0.0.0/0 trong các IP được phép.
Điểm:2
lá cờ cn

Bạn không thể sử dụng cùng một địa chỉ trong địa chỉ của khách hàng điểm cuốiIP được phép cài đặt*. điểm cuối phải là địa chỉ của máy chủ ở ngoài đường hầm và IP được phép nên bao gồm tất cả các địa chỉ bạn muốn có quyền truy cập phía trong đường hầm.

Để khắc phục, hãy loại bỏ src cài đặt trên tuyến đường bạn đã thêm vào máy chủ, để tuyến đường sẽ chỉ sử dụng địa chỉ của máy chủ docker0 giao diện:

tuyến ip thêm 10.254.99.0/24 qua 172.17.0.2 dev docker0

Sau đó thay đổi ứng dụng khách WireGuard IP được phép cài đặt để bao gồm địa chỉ của máy chủ docker0 giao diện (172.17.0.1):

Ips được phép = 10.254.99.1/32, 172.17.0.1/32

Máy chủ của bạn bây giờ sẽ sử dụng nó docker0 địa chỉ giao diện (172.17.0.1) làm nguồn gói mà nó gửi qua mạng WireGuard của bạn.


Tuy nhiên, thay vì thêm lớp định tuyến bổ sung đó trên máy chủ của bạn, điều đơn giản nhất cần làm là chạy bộ chứa WireGuard ở chế độ mạng "máy chủ" (sử dụng --mạng=máy chủ cờ với docker chạy, hoặc là network_mode: máy chủ thiết lập với soạn thảo docker).Điều đó sẽ làm lộ bộ chứa WireGuard wg0 giao diện trực tiếp với máy chủ, vì vậy bạn sẽ không cần các quy tắc định tuyến bổ sung trên máy chủ và bạn sẽ không cần bổ sung thêm IP được phép cho khách hàng.

Trong trường hợp đó, máy chủ sẽ chỉ sử dụng giao diện riêng của giao diện WireGuard 10.254.99.1 địa chỉ làm nguồn của các gói mà nó gửi qua mạng WireGuard của bạn.


* trừ khi bạn thiết lập một số quy tắc định tuyến/lọc gói ưa thích trên máy khách của mình thay vì sử dụng các giá trị mặc định mà máy khách WireGuard thiết lập cho bạn

lá cờ us
"Bạn không thể sử dụng cùng một địa chỉ trong cài đặt Điểm cuối và IP được phép của máy khách." Tại sao nó hoạt động khi AllowedIPs=0.0.0.0/0? CIDR đó bao gồm Điểm cuối.
lá cờ cn
`AllowedIPs = 0.0.0.0/0` hoạt động vì các trường hợp đặc biệt của máy khách WireGuard `/0` để thiết lập một số quy tắc định tuyến/lọc gói ưa thích cho bạn. Bắt đầu tại đây để được giải thích về cách wg-quick xử lý việc này trên Linux: https://stackoverflow.com/a/70827884/149050

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.