Tôi có một PC Linux có hai NIC:
Tên thứ nhất là ens192, ip là 192.168.0.2/24 gw là 192.168.0.1 cũng là route mặc định, NIC chính
Tên thứ 2 là ens256, ip là 192.168.1.50/24 gw là 192.168.1.1 và với các lệnh định tuyến chính sách sau:
tuyến ip thêm mặc định qua 192.168.1.1 dev ens256 bảng 1000
thêm quy tắc ip từ bảng 192.168.1.50 1000
BÂY GIỜ, mọi người kết nối (PING) 192.168.1.50 là OK, bên dưới là từ 192.168.4.2 (Tôi có mạng 192.168.0.0/16 trong bộ định tuyến và 192.168.xxx.1 là gw mặc định cho mỗi mạng con)
PING 192.168.1.50 (192.168.1.50) 56(84) byte dữ liệu.
64 byte từ 192.168.1.50: icmp_seq=1 ttl=63 time=0,560 ms
64 byte từ 192.168.1.50: icmp_seq=2 ttl=63 time=0,517 ms
64 byte từ 192.168.1.50: icmp_seq=3 ttl=63 time=0,678 ms
--- Thống kê ping 192.168.1.50 ---
Truyền 3 gói, nhận 3 gói, mất gói 0%, thời gian 2050ms
rtt tối thiểu/trung bình/tối đa/mdev = 0,517/0,585/0,678/0,068 ms
ttl=63 được mong đợi.
VẤN ĐỀ LÀ: Trong cùng mạng con 192.168.1.0/24, ip máy tính là 192.168.1.70 ping 192.168.1.50 có giá trị ttl sai, xem đầu ra:
$ping 192.168.1.50 -c 3
PING 192.168.1.50 (192.168.1.50): 56 byte dữ liệu
64 byte từ 192.168.1.50: seq=0 ttl=63 time=0,619 ms
64 byte từ 192.168.1.50: seq=1 ttl=63 time=0,512 ms
64 byte từ 192.168.1.50: seq=2 ttl=63 time=0,593 ms
--- Thống kê ping 192.168.1.50 ---
Truyền 3 gói, nhận 3 gói, mất gói 0%
khứ hồi tối thiểu/trung bình/tối đa = 0,512/0,574/0,619 mili giây
ttl=64 được mong đợi, nhưng có 63!!!
Tôi đã nhận được pcap trong Wireshark:
192.168.1.70 -> 192.168.1.50
192.168.1.50 -> 192.168.1.70
Chúng ta có thể thấy PC 1.50 trả lời ICMP cho gw
Câu hỏi của tôi là: làm thế nào để sửa ttl trong cùng một mạng con? ai đó giúp với ???