Tải bản đầy đủ (.doc) (3 trang)

Tìm hiểu về "Ping" potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (63.87 KB, 3 trang )

Tìm hiểu về "Ping"
trang này đã được đọc lần
Ping là gì?
Ping là một chương trình cho phép bạn xác định một host
còn hoạt động(alive) hay không?
Một ví dụ về Ping!
C:\> ping www.aqnet.com
Pinging www.aqnet.com
[209.54.218.119] with 32 bytes of
data:
Reply from 209.54.218.119: bytes=32
time<10ms TTL=128
Reply from 209.54.218.119: bytes=32
time<10ms TTL=128
Reply from 209.54.218.119: bytes=32
time<10ms TTL=128
Reply from 209.54.218.119: bytes=32
time<10ms TTL=128
Ping statistics for 209.54.218.119:
Packets: Sent = 4, Received = 4, Lost
= 0 (0% loss),
Approximate round trip times in milli-
seconds:
Minimum = 0ms, Maximum = 0ms,
Average = 0ms
C:\>
www.aqnet.com(209.54.218.119) -> alive!
Nếu bạn nhận được thông báo "Host Alive", điều này có
nghĩa là host không còn hoạt động!
Ping hoạt động ra sao?
Ping gởi một ICMP message "echo request" đến host. Nếu


nhận được một ICMP message "echo reply" của host, ping
sẽ thông báo host còn hoạt động. Nếu không nhận được
ICMP message "echo reply" của host, ping sẽ thông báo host
này đã ngừng hoạt động!
Format của ICMP "echo request" và "echo reply" có dạng
như sau:
0 7 8 15 16 31
+ + + +
| Type (0 or 8) | Code (0) | 16-bit Checksum |
+ + + +
| Indentifier | sequence number |
+ + + +
| |
| (Optional Data) |
| |
+ +
Bất cứ lúc nào host nhận được một ICMP request message,
nó sẽ phản hồi trở lại với một identifier và số sequence
number. Trong hầu hết các hệ thống Unix, trường indentifier
được đặt số Process ID của tiến trình gởi gói packet đi. Vì
vậy, nếu bạn ping cùng một lúc nhiều lần đến một hệ thống
Unix, giá trị indentifier mà bạn nhận được trong mỗi lần ping
sẽ khác nhau!
Trường sequence number có giá trị mặc định là 0. Giá trị
này sẽ được tăng một sau mỗi lần hệ thống phản hồi ICMP
request message của chương trình ping. Ping sẽ in ra giá trị
sequence number của mỗi lần nhận packet, điều này cho
chúng ta biết được các gói packet có gặp lỗi hay không?!
(Để biết chi tiết về các trường khác, bạn hãy tham khảo các
bài viết về giao thức TCP-IP!)

Bây giờ chúng ta hãy xem qua ví dụ cuối cùng:
# ping hackingtruths.box.sk
Pinging hackingtruths.box.sk
[194.x.yyy.227] with 32 bytes of data:
32 bytes from 194.x.yyy.227:
icmp_seq=0 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=1 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=2 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=3 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=4 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=5 ttl=225 time=0 ms
32 bytes from 194.x.yyy.227:
icmp_seq=6 ttl=225 time=0 ms

Ở dòng đầu tiên, ping phân tích hostname ra địa chỉ ip. Bạn
có nhận thấy giá trị icmp_seq tăng dần từ 0 sau mỗi lần ping
nhận được ICMP message "echo reply" từ host không? Như
vậy là các gói packet mà chúng ta nhận điều không gặp lỗi
gì hết! Ping còn cho chúng ta biết thời gian TTL(Time To
Live) nữa! Ping lưu thời gian mỗi lần gởi ICMP message
"echo request". Khi nhận được ICMP message "echo reply"
từ host, Ping sẽ lấy thời gian hiện tại trừ đi giá trị này sẽ ra
TTL!
Okay, bây giờ thì bạn biết Ping làm việc như thế nào rồi
đó!

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×