Tôi cần tạo kết nối VXLAN giữa hai máy tính A (trên Debian với IP 192.168.30.1) và B (trên archlinux với IP 192.168.30.3)
Đối với điều đó, tôi đã làm:
Sudo ip link add vxlan1 type vxlan id 1 nolearning remote 192.168.30.3 dstport 33333 dev ens4
liên kết sudo ip thiết lập vxlan1 lên
Sudo ip addr add 10.0.0.106/24 dev vxlan1
Sudo ip link add vxlan2 type vxlan id 1 nolearning remote 111.111.111.111 dstport 33333 dev ens3
liên kết sudo ip thiết lập vxlan2 lên
Sudo ip addr add 10.0.0.107/24 dev vxlan2
Hơn nữa, trên PC B, tôi tạo quy tắc DNAT:
Sudo iptables -w -t nat -A OUTPUT -s 192.168.30.3 -d 111.111.111.111 -p udp --dport 33333 -j DNAT --to-destination 192.168.30.1:33333
Sau đó, tôi đã làm:
- Trên máy tính A:
ping 10.0.0.107
. Điều này hoạt động như mong đợi với ping trả lời.
- Trên máy tính B:
ping 10.0.0.106
. Điều này hoạt động như mong đợi với ping trả lời.
- Trên máy tính A:
nc -u -lp 12345
. Trên máy tính B: nc -u 10.0.0.106 12345
. Tôi dự kiến sẽ đọc dữ liệu trên ứng dụng netcat trên PC A khi gửi dữ liệu bằng lệnh netcat từ PC B. Tuy nhiên tôi không đọc được gì.
Vấn đề của tôi sau đó là ở điểm cuối cùng. Tại sao trình nghe netcat của tôi không nhận được gì.
Bằng cách sử dụng Wireshark trên PC A, tôi nhận được:
[
Một số thông tin bổ sung
PC A chạy với 'Linux debian 4.19.0-16-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 GNU/Linux' (đây là kết quả của uname -a
chỉ huy)
PC A IP trên ens4 là 192.168.30.1/24
PC B chạy với 'Linux archlinux 5.13.9-arch1-1 #1 SMP PREEMPT Sun, 08 Tháng 8 năm 2021 11:25:35 +0000 x86_64 GNU/Linux' (đây là kết quả của uname -a
chỉ huy)
PC B IP trên ens3 là 192.168.30.3/24
hai máy là máy ảo Qemu bắt đầu với GNS3
bảng nat và filter của netfilter trên PC A trống:
seb@debian:~$ Sudo iptables -t nat -L ; Sudo iptables -t bộ lọc -L
PREROUTING chuỗi (CHẤP NHẬN chính sách)
đích prot opt nguồn đích
ĐẦU VÀO chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
Chuỗi POSTROUTING (CHẤP NHẬN chính sách)
đích prot opt nguồn đích
ĐẦU RA chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
ĐẦU VÀO chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
Chuỗi FORWARD (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
ĐẦU RA chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
- Trên PC B, tôi chỉ có quy tắc DNAT và quy tắc hủy gói ICMP thuộc loại 'không thể truy cập cổng' (Đây là quy tắc tôi đã thêm cho mục đích khác):
[seb@archlinux vxlan]$ sudo iptables -t nat -L -n ; Sudo iptables -t bộ lọc -L -n
PREROUTING chuỗi (CHẤP NHẬN chính sách)
đích prot opt nguồn đích
ĐẦU VÀO chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
ĐẦU RA chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
DNAT udp -- 192.168.30.3 111.111.111.111 udp dpt:33333 tới:192.168.30.1:33333
Chuỗi POSTROUTING (CHẤP NHẬN chính sách)
đích prot opt nguồn đích
ĐẦU VÀO chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
Chuỗi FORWARD (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
ĐẦU RA chuỗi (chính sách CHẤP NHẬN)
đích prot opt nguồn đích
DROP icmp -- 0.0.0.0/0 0.0.0.0/0 icmptype 3