Liệu thứ tự của các mục trong bảng định tuyến có vấn đề?


20

Thứ tự định tuyến có vấn đề:

> route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
123.x.x.151     0.0.0.0         255.255.255.255 UH    0      0        0 vmbr0
123.x.x.154     0.0.0.0         255.255.255.255 UH    0      0        0 vmbr0
123.x.x.128     0.0.0.0         255.255.255.224 U     0      0        0 vmbr0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 vmbr1
0.0.0.0         123.x.x.129     0.0.0.0         UG    0      0        0 vmbr0

nó có giống như:

> route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
123.x.x.128     0.0.0.0         255.255.255.224 U     0      0        0 vmbr0
123.x.x.151     0.0.0.0         255.255.255.255 UH    0      0        0 vmbr0
123.x.x.154     0.0.0.0         255.255.255.255 UH    0      0        0 vmbr0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 vmbr1
0.0.0.0         123.x.x.129     0.0.0.0         UG    0      0        0 vmbr0

?

sự khác biệt là ở đâu

123.x.x.128     123.x.x.129         255.255.255.224 U     0      0        0 vmbr0

là thứ tự cao hơn

123.x.x.151     0.0.0.0         255.255.255.255 UH    0      0        0 vmbr0

Vì vậy, nếu tôi gửi đến 123.x.x.151nơi nó sẽ đi:

- the routed way over `123.x.x.129`, because it matches the `123.x.x.128` rule, or
- the direct way using the arp table, because it matches the `123.x.x.151` rule

?

Câu trả lời:


25

Thứ tự trong bảng không quan trọng; các tuyến đường có tiền tố dài hơn luôn được ưu tiên. Nếu bạn ngừng bám vào netmasks và xem xét độ dài tiền tố thay vào đó ( ip routehiển thị), bạn có 123.x.x.128/27123.x.x.151/32, tuyến sau - cụ thể hơn - sẽ ưu tiên hơn tuyến trước (chung chung hơn).


2
Điều gì xảy ra nếu có mặt nạ cỡ eqal? Ví dụ: 10.0.0.0/24 và 192.168.0.0/24.
ManuelSchneid3r

3
@ ManuelSchneid3r: Không có gì xảy ra. Các tuyến đường chỉ được xem xét nếu họ thực sự phù hợp với các điểm đến, và một địa chỉ IP rõ ràng là không thể bắt đầu với 10.192.cùng một lúc, vì vậy nó sẽ chỉ phù hợp với một trong những mặt nạ ở nơi đầu tiên.
grawity

1
Nếu bạn có hai giao diện trên cùng một không gian IP thì sao?
MikeSool

@MikeSool: Sau đó, tham số 'số liệu' của cả hai tuyến được sử dụng. (Hệ điều hành thường sẽ từ chối thêm hai tuyến đường có tiền tố giống hệt nhau, tiền tố giống hệt nhau số liệu giống hệt nhau hoặc có thể hợp nhất chúng vào tuyến đường cân bằng tải ECMP.)
grawity

5

Đặt hàng chỉ quan trọng nếu bạn có các tuyến trùng lặp. Đừng làm vậy.

Ví dụ: nếu hai giao diện có cùng đích, netmask và gateway là 0,0.0.0, giao diện đầu tiên sẽ lấy tất cả lưu lượng truy cập cho mạng đó.

Hơn nữa, tôi đã tìm thấy một số hệ thống sẽ sắp xếp lại ngẫu nhiên khi khởi động cái nào đến trước. Nếu chỉ có một hoạt động hoặc chỉ một có bộ cổng bộ định tuyến, điều này có thể dẫn đến mất quyền truy cập vào mạng đó khi khởi động lại.


Nếu bạn có các tuyến trùng lặp, thì bạn nên thêm Khoảng cách quản trị (AD) cao hơn cho tuyến ít được ưu tiên hơn. Tuyến đường được sử dụng sẽ luôn là tuyến có AD thấp hơn. Nếu đường dẫn đó đi xuống, thì đường dẫn có AD cao hơn sẽ tự động thay thế nó trong bảng định tuyến.
kojow7
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.