Làm thế nào để ping biết rằng các gói của tôi được lọc?


20

Tôi là khách hàng của một ISP Ailen, eircom, đã bắt đầu kiểm duyệt vịnh cướp biển.

Khi tôi cố gắng ping 194.71.107.15địa chỉ IP của thepiratebay.com, tôi nhận được kết quả này:

PING 194.71.107.15 (194.71.107.15) 56(84) bytes of data.
From 159.134.124.176 icmp_seq=1 Packet filtered
From 159.134.124.176 icmp_seq=2 Packet filtered
From 159.134.124.176 icmp_seq=3 Packet filtered

Làm thế nào để ping biết rằng nó được lọc? Làm thế nào tôi có thể tìm hiểu thêm về cách nó được lọc. Foo ping / nmap của tôi là yếu.

Câu trả lời:


14

Ping xác định tin nhắn được in của nó tùy thuộc vào tin nhắn điều khiển ICMP mà nó nhận được để đáp ứng yêu cầu tiếng vang.

Theo phỏng đoán, tôi sẽ tưởng tượng rằng bất kỳ thiết bị lọc nào mà Eircom đang sử dụng để chặn quyền truy cập vào The Pirate Bay đều tạo ra các tin nhắn ICMP Loại 3, Mã 9 (mạng bị cấm hành chính) hoặc Loại 3, Mã 10 (máy chủ bị cấm hành chính) để phản hồi lưu lượng truy cập hướng đến địa chỉ IP của The Pirate Bay.

Để xác nhận, tôi khuyên bạn nên chạy một gói chụp (sử dụng Wireshark hoặc tương tự) và xem xét các gói phản hồi ICMP mà bạn đang nhận lại từ 159.134.124.176.


29

Sau khi nhìn vào

ping.c từ gói etch iputils-ping, tôi thấy:

 
 / *
 *
 * pr_icmph -
 * In một chuỗi mô tả về tiêu đề ICMP.
 * /
void pr_icmph (loại __ u8, mã __u8, thông tin __u32, struct icmphdr * icp)
{

...
                trường hợp ICMP_PKT_FILTERED:
                        printf ("Gói được lọc \ n");
                        phá vỡ;
...

Có vẻ như iptables từ chối thêm điều này trong phản hồi, xem

http://tomoyo.sourceforge.jp/cgi-bin/lxr/source/net/ipv4/netfilter/ipt_RE DỰ.c

và tìm kiếm "ICMP_PKT_FILTERED", mặc dù đó có thể không phải là trường hợp duy nhất có thể trả lời ping với thông báo như vậy.


5
+1 cho lặn nguồn.
RainyRat

1
Chắc chắn rồi.
squillman

Một thứ khác có thể gây ra điều này là các gói "riêng tư" (sử dụng IP riêng / nội bộ) làm cho nó ra thế giới. Tôi đã thấy điều này khi kết nối VPN bị rớt và các gói đến ngày 10.11.12.13 bắt đầu nhận được phản hồi "gói được lọc" từ một hệ thống bên ngoài mà họ không bao giờ nên đến ở nơi đầu tiên. Xem thêm en.wikipedia.org/wiki/IP_address#IPv4_private_addresses
hàng rào

4

Điều đó có nghĩa là thiết bị 159.134.124.176 đang chặn các gói ICMP (Ping) và trả lời bạn với thông tin đó. Các câu trả lời ICMP có thể được liệt kê trong bài viết Wiki này .


1

ping nhận được ICMP_DEST_UNREACH và tùy thuộc vào loại gói icmp được trả về, ping biết rằng nó đã được lọc.


1

Tôi nghĩ điều đó có nghĩa là 159.134.124.176 không cho phép ping của bạn đạt 194.71.107.15, nghĩa là, nó lọc (ít nhất là) ICMP. Khi tôi làm điều tương tự, tôi nhận được:

\# ping 194.71.107.15
PING 194.71.107.15 (194.71.107.15) 56(84) bytes of data.
64 bytes from 194.71.107.15: icmp_seq=1 ttl=50 time=43.0 ms
64 bytes from 194.71.107.15: icmp_seq=2 ttl=50 time=42.0 ms
64 bytes from 194.71.107.15: icmp_seq=3 ttl=50 time=42.1 ms

... Và một WHOIS nhanh chóng nói với tôi rằng 159.134.124.176 thực sự là thứ thuộc sở hữu của Eircom.


2
Câu hỏi là "làm thế nào" ping biết, tôi nghĩ rằng tác giả biết rằng ICMP đang được lọc. Có lẽ anh ta nghĩ rằng được lọc có nghĩa là lọc kiểu lỗ đen, không có gì được trả lại và điều đó đặt ra câu hỏi về ping "kỳ diệu" khi biết trường hợp nào.
Karolis T.

1

Ý tưởng cơ bản (và hy vọng ai đó có thể giúp tôi điền một số chi tiết vì tôi không phải là chuyên gia Linux) là ping của bạn đang gửi yêu cầu tiếng vang ICMP nhưng không nhận được phản hồi tiếng vang tiêu chuẩn từ máy chủ đích. Thay vào đó, nó đã được trả lời bởi 159.134.124.176, có thể với một số dạng phản hồi đích ICMP không thể truy cập được. Điều đó và thực tế là 159.134.124.176 không phải là mục tiêu ban đầu ngụ ý rằng các gói được lọc.

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.