Làm thế nào để tìm cổng được sử dụng để định tuyến


45

Đây là trong môi trường unix. Tôi có nhiều tuyến trong một máy chủ (hiển thị với lệnh 'ip route show'). Nếu tôi đang ping địa chỉ, làm thế nào tôi có thể tìm ra cổng nào được sử dụng để định tuyến theo hệ số?

Tôi đã thử sử dụng lệnh traceroute, nhưng nó không hiển thị cổng ngay lập tức.

Từ đầu ra bên dưới, 10.58.227.1 là cổng mặc định của tôi.

# ip r l
10.58.227.0/24 dev front_eth1  proto kernel  scope link  src 10.58.227.231
169.254.0.0/17 dev bond0  proto kernel  scope link  src 169.254.0.4
default via 10.58.227.1 dev front_eth1  proto gated

Khi tôi thực hiện theo dõi đến một địa chỉ bên ngoài, cổng được sử dụng (cổng mặc định 10.58.227.1) không được hiển thị trong đầu ra.

# traceroute -n -I 10.63.21.118
traceroute to 10.63.21.118 (10.63.21.118), 30 hops max, 40 byte packets
 1  10.58.112.1  0.507 ms  1.008 ms  1.017 ms
 2  10.63.21.118  0.228 ms  0.233 ms  0.234 ms

Có tùy chọn nào để xem cùng thông tin như được đưa ra bởi lệnh traceroute, bao gồm cả cổng được sử dụng để định tuyến không?

Câu trả lời:


73

Bạn có thể sử dụng ip route get <address>lệnh để yêu cầu kernel báo cáo tuyến đường mà nó sẽ sử dụng để gửi một gói đến địa chỉ được chỉ định:

$ ip route get 4.2.2.1
4.2.2.1 via 192.168.0.1 dev eth0  src 192.168.0.121 
    cache 
$ 

192.168.0.1là tuyến đường mặc định của tôi. Nếu tôi yêu cầu một địa chỉ không đi qua tuyến đường mặc định:

$ ip route get 192.168.0.116
192.168.0.116 dev eth0  src 192.168.0.121 
    cache 
$ 

Thaks rất nhiều. :) Điều đó giải quyết vấn đề.

Câu hỏi phụ ngẫu nhiên - Nếu 192.168.0.1là "tuyến đường mặc định" hoặc "cổng" ... tên nào sẽ được sử dụng để chỉ 192.168.0.121? Chỉ là "nguồn"?
dtmland

@sarnold, vui lòng xác nhận xem nó có cần internet trên máy chủ đó không.
kd12

@ kd12 bạn chỉ cần kết nối Internet trên máy chủ đó nếu bạn muốn định tuyến các gói tới Internet. Bạn có thể thiết lập mạng IP mà không cần kết nối Internet nếu muốn; các bảng định tuyến không biết và không quan tâm, tất cả đều hoạt động như nhau. :)
sarnold
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.