Điểm:1

Chỉ định mỗi NIC một dải ip hoặc mạng con

lá cờ in

Tôi có một máy chủ linux manjaro có ít nhất hai bộ điều khiển giao diện mạng (NIC) và muốn định tuyến tất cả lưu lượng truy cập đến các dải địa chỉ IP hoặc mạng con nhất định trên một và mọi thứ khác trên một trong các mạng con khác.

Cho đến nay tôi đã cấu hình các mạng thông qua nmcli, nhưng tôi chỉ nắm bắt sơ sài về chủ đề này.

Lý tưởng nhất là giải pháp sẽ hoạt động thông qua dòng lệnh, kiên trì và không phụ thuộc nhiều vào bản phân phối được sử dụng.

Chỉnh sửa: Theo Định tuyến lưu lượng IP bằng nmcli/Centos 7 một cái gì đó dọc theo dòng của

sửa đổi kết nối nmcli "Kết nối có dây 1" +ipv4.routes "10.0.0.0/16"

sẽ hoạt động, tuy nhiên các gói dường như không được định tuyến qua đúng mạng.

vidarlo avatar
lá cờ ar
Bạn có thể mô tả chi tiết hơn về cách bố trí mạng của mình không? Mỗi giao diện có một bộ định tuyến kèm theo mà bạn muốn chuyển tiếp các gói tới không?
djdomi avatar
lá cờ za
tại sao không sử dụng `ip route` cơ bản?
lá cờ in
cảm ơn @djdomi. Có vẻ như tuyến đường ip là những gì tôi cần. Bây giờ tôi chỉ cần tìm ra những tuyến đường chính xác trông như thế nào.
djdomi avatar
lá cờ za
@danba vì oyu không cho biết chính xác vấn đề là gì, hiện tại tôi không thể giúp được (Vấn đề X và Y)
Điểm:2
lá cờ za

Thông tin trước chung về câu trả lời này

Tôi cho rằng các Câu trả lời của mình trong phần Nói chung dựa trên Kiến thức của tôi dựa trên Hệ thống Debian, tuy nhiên trong phần này, tôi bỏ qua Phần Trình quản lý Mạng do dù sao thì tôi cũng không sử dụng nó và theo suy nghĩ cá nhân của tôi, nó chỉ khiến nó trở nên phức tạp.

Bạn đã hỏi và trong Nhận xét có vẻ như gần như rõ ràng rằng bạn muốn định tuyến 10.0.0.0/16 sang một card mạng khác.

Bạn đã cung cấp "Kết nối có dây 1" +ipv4.routes "10.0.0.0/16"

-- tên thiết bị nào là đúng, có thể tìm hiểu qua địa chỉ IP hoặc ifconfig -- Thông thường bạn không yên tâm, hãy rút cáp card ra và tìm đến dmesg hoặc /var/log/syslog

Vì vậy, trong Ví dụ của tôi, giả sử như sau:

  • "Kết nối có dây 1" = eth0
  • "10.0.0.0/16" hoặc 10.0.0.0/255.255.0.0 (hoặc 10.0.0.0-10.0.255.255) phải được chuyển đến eth0

Cách ngắn để thử nghiệm hoặc đặt trước, không liên tục:

tuyến ip thêm 10.0.0.0/16 dev eth0

Phần khó khăn bây giờ là làm cho nó bền bỉ.

Trên RHEL/CentOS/Fedora/Hệ thống dựa trên khoa học,

  • chỉnh sửa /etc/sysconfig/network-scripts/route-eth0

Thêm vào đây

 10.0.0.0/16 qua 10.0.0.1

Trong đó Đầu tiên là Mạng bạn muốn khớp, thứ hai là IP của Bộ định tuyến. Trong ví dụ của tôi, 10.0.0.1

Sử dụng Cách Debian. (Các hệ thống cơ sở Debian, như Ubuntu)

trên một số Hệ thống, /etc/network/interfaces có vẻ trống. Trong trường hợp đó, bạn phải xem xét vi /etc/network/interfaces.d, nhưng chúng tôi cho rằng tệp /etc/network/interfaces cơ bản sẽ được sử dụng.

  • chỉnh sửa/etc/mạng/giao diện

Tìm Giao diện của bạn eth0

iface eth0 inet tĩnh
        địa chỉ 10.0.0.2
        mặt nạ mạng 255.0.0.0

Sửa đổi, nó trông giống như

iface eth0 inet tĩnh
        địa chỉ 10.0.0.2
        mặt nạ mạng 255.0.0.0
###HOẶC với Cổng
#post-up route add -net 10.0.0.0 netmask 255.255.0.0 gw 10.0.0.1 dev eth0
#post-down route del -net 10.0.0.0 netmask 255.255.0.0 gw 10.0.0.1 dev eth0

###hoặc không có Cổng
#post-up route add -net 10.0.0.0 netmask 255.255.0.0 dev eth0
#post-down route del -net 10.0.0.0 netmask 255.255.0.0 dev eth0

Cách chung, tĩnh (Có thể đã lỗi thời trên các hệ thống hỗ trợ Systemd)

Chỉnh sửa /etc/rc.d/rc.local hoặc /etc/rc.local

cộng

  • tuyến ip thêm 10.0.0.0/16 dev eth0

Câu trả lời này có nghĩa là để giải quyết nó nói chung.

djdomi avatar
lá cờ za
@danba sẽ thật tuyệt nếu bạn có thể chấp nhận câu trả lời nếu nó giúp ích cho bạn hoặc cho tôi biết trong trường hợp nếu không thì tôi có thể điều chỉnh câu trả lời của mình
lá cờ in
Cảm ơn các câu trả lời chi tiết. Cuối cùng, tôi phải chỉ định thông qua cho tuyến đường để nhận bất kỳ gói nào đi qua nó. `ip route add 10.0.0.0/8 qua 10.39.0.1 dev eth0`. Ngoài ra, tôi nhận ra rằng mình có nhiều tuyến mặc định (một cho mỗi thiết bị) và tôi chỉ muốn một thiết bị được sử dụng làm phương án dự phòng trong trường hợp không có tuyến cụ thể nào khác, vì vậy tôi đã xóa các mặc định thừa bằng `ip route flush default qua 10.39 .0.1 dev eth0`.
djdomi avatar
lá cờ za
Được rồi, một điểm cho bạn, tôi quên mặc định tuôn ra :)

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