Làm cách nào để định tuyến chỉ mạng con cụ thể (ip nguồn) đến một giao diện cụ thể?


31

Làm cách nào để định tuyến chỉ mạng con cụ thể (ip nguồn) đến một giao diện cụ thể?
HĐH: Linux

Tôi biết tôi có thể thực hiện dễ dàng bằng IP đích bằng cách sử dụng một cái gì đó như

route add 1.2.3.4/24 dev eth4

nhưng tôi không thấy cách định tuyến dựa trên IP nguồn.

Câu trả lời:


30

Bạn cần sử dụng định tuyến dựa trên chính sách. Một cái gì đó giống như

ip rule add from <source>/<mask> table <name>
ip route add 1.2.3.4/24 via <router> dev eth4 table <name>

<name>là tên bảng được chỉ định trong /etc/iproute2/rt_tableshoặc bạn có thể sử dụng id số ...

Điều này khá nhiều nói rằng, tất cả lưu lượng truy cập từ 1.2.3.4/24sẽ được định tuyến bằng bảng định tuyến <name>. IIRC nó không sử dụng bảng mặc định sau khi trải qua điều này, vì vậy nếu bạn cần các tuyến khác (ví dụ: cổng mặc định), bạn cũng cần thêm chúng vào bảng.


1
một điều chỉnh (nhưng không chắc là lệnh của bạn cũng sẽ hoạt động hay không. Đối với lệnh thứ hai: ip route add default dev eth4 table <name>( lệnh tablenày sẽ đi vào cuối tôi nghĩ, giống như trong lệnh đầu tiên ... cũng defaultcó thể được thay thế bằng mạng con, giống như trong ví dụ của bạn )
Alex

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.