Điểm:0

internet trong linux netns không truy cập được, nexthop bị lỗi

lá cờ jp

Mình đã setup thành công 2 octoprints trong 1 armbian linux trên 2 cổng khác nhau 5000 và 5001 bằng netns. Tôi có thể kết nối với chúng dưới dạng 10.10.10.233:5000 và 10.10.10.233:5001 mà không gặp sự cố nào. Đầu tiên trong số chúng (5000) nằm trên hệ thống chính và có kết nối thành công với Internet, thứ hai (cổng 5001) không thể kết nối với internet, nó chỉ có thể kết nối với máy chủ thông qua veth.

Tất cả các thiết lập là:

Sudo ip link thêm dev virt01 gõ veth tên ngang hàng virt02

sudo ip netns add octo2
Sudo ip link set virt01 netns octo2
sudo ip netns exec octo2 ip addr add 10.1.1.1/24 dev virt01
Sudo ip addr add 10.1.1.2/24 dev virt02
sudo ip netns exec octo2 ip link set dev virt01 up
liên kết sudo ip thiết lập dev virt02 lên
sudo ip netns exec octo2 liên kết ip được thiết lập lo
Sudo ip netns exec octo2 ip route thêm mặc định qua 10.1.1.2

#cho phép chuyển tiếp
sudo ip netns exec octo2 sysctl net.ipv4.ip_forward=1
tiếng vang 1 > /proc/sys/net/ipv4/ip_forward

Tại thời điểm này trong máy chủ có:

netstat -rn
Bảng định tuyến IP hạt nhân
Cổng đích Cờ genmask Cửa sổ MSS irtt Iface
0.0.0.0 10.10.10.1 0.0.0.0 UG 0 0 0 eth0
10.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 đức hạnh02
10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0

trong mạng:

sudo ip netns exec octo2 netstat -rn
Bảng định tuyến IP hạt nhân
Cổng đích Cờ genmask Cửa sổ MSS irtt Iface
0.0.0.0 10.1.1.2 0.0.0.0 UG 0 0 0 đức hạnh01
10.1.1.0 0.0.0.0 255.255.255.0 U 0 0 0 đức hạnh01

Vì vậy, các kết nối từ máy chủ đến Internet (thông qua bộ định tuyến 10.10.10.1/24) và mạng là TỐT

campi:~$ ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) byte dữ liệu.
64 byte từ 1.1.1.1: icmp_seq=1 ttl=54 time=21,6 ms
64 byte từ 1.1.1.1: icmp_seq=2 ttl=54 time=21,4 ms

campi:~$ ping 10.1.1.1
PING 10.1.1.1 (10.1.1.1) 56(84) byte dữ liệu.
64 byte từ 10.1.1.1: icmp_seq=1 ttl=64 time=0,242 ms

Nhưng từ netns chỉ có kết nối đến máy chủ và KHÔNG CÓ INTERNET:

orangepi:~$ sudo ip netns exec octo2 ping 10.1.1.2
PING 10.1.1.2 (10.1.1.2) 56(84) byte dữ liệu.
64 byte từ 10.1.1.2: icmp_seq=1 ttl=64 time=0,250 ms

# LỖI TẠI ĐÂY , KHÔNG CÓ INTERNET TỪ NETNS:
orangepi:~$ sudo ip netns exec octo2 ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) byte dữ liệu.
^C
--- 1.1.1.1 thống kê ping ---
Truyền 2 gói, nhận 0 gói, mất gói 100%, thời gian 1017ms

orangepi:~$ sudo ip netns exec octo2 theo dõi 1.1.1.1
theo dõi thành 1.1.1.1 (1.1.1.1), tối đa 30 bước nhảy, gói 60 byte
 1 _gateway (10.1.1.2) 0,288 ms 0,094 ms 0,079 ms
 2 * * *            
 3 * * *
 4  * * *
 5 * * *
 6 *^C

iptables của máy chủ:

campi:~$ Sudo iptables -S
-P CHẤP NHẬN ĐẦU VÀO
-P CHẤP NHẬN VỀ PHÍA TRƯỚC
-P CHẤP NHẬN ĐẦU RA

orangepi:~$ Sudo iptables -S -t nat
-P CHẤP NHẬN TRƯỚC
-P CHẤP NHẬN ĐẦU VÀO
-P CHẤP NHẬN ĐẦU RA
-P SAU KHI CHẤP NHẬN

Ngoài ra một số dữ liệu:

campi:~$ ip r
mặc định qua 10.10.10.1 dev eth0 proto dhcp metric 100
10.1.1.0/24 dev virt02 liên kết phạm vi kernel proto src 10.1.1.2
10.10.10.0/24 dev eth0 liên kết phạm vi hạt nhân proto src 10.10.10.234 số liệu 100
169.254.0.0/16 dev eth0 chỉ số liên kết phạm vi 1000

orangepi:~$ sudo ip netns exec octo2 ip r
mặc định qua 10.1.1.2 dev virt01
10.1.1.0/24 dev virt01 liên kết phạm vi kernel proto src 10.1.1.1

ed@orangepizero:~$ cat /proc/sys/net/ipv4/ip_forward
1

ed@orangepizero:~$ sudo ip netns exec octo2 cat /proc/sys/net/ipv4/ip_forward
1

campi:~$ sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

orangepi:~$ sudo ip netns exec octo2 sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

Hệ thống không có ufw và tường lửa khác.

Làm cách nào để sửa lỗi và cấp quyền truy cập Internet cho netns?

Điểm:0
lá cờ jp

Bộ định tuyến, 10.10.10.1 nhận yêu cầu từ 10.1.1.1 (netns bên trong orangepi), vì vậy nó cấm truy cập vào mạng WAN vì nó không định tuyến cho nó.

Khắc phục: sử dụng NAT bên trong orangepi để 10.1.1.1 hiển thị từ bộ định tuyến là 10.10.10.234 , vì vậy nó sẽ có quyền truy cập Internet.

Đă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.