ICMP 和 ping
Coddy 使用终端进行网络通信 课程的第 15 课,共 47 课。
ping 回答一个问题:那台机器在吗?它会发送一条称为 回显请求 的小消息,并等待 回显应答。这些消息不是 HTTP,也没有端口。它们属于一种名为 ICMP 的独立协议,其作用是在机器之间传递控制和错误消息。
这就是为什么 ping 无法告诉你网站的情况。它与机器通信,而不是与运行在机器上的任何程序通信。
ping -c2 127.0.0.1-c2 会恰好发送两次,然后停止。不加它,ping 会一直运行,直到你中断它。在真实的终端中这样没问题,但在脚本中毫无用处。
最后的摘要最值得看:发送了多少条消息,返回了多少条消息,以及数据包丢失百分比。丢失率为 0,表示每条消息都完成了往返。
挑战
简单发送两条消息,并确认它们都成功到达。
向 127.0.0.1 恰好发送两次 ping,并且只打印摘要中的丢包率。预期输出:
0% packet loss
grep -o只打印匹配的文本,而不是整行。
亲手试试
终端
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
使用终端进行网络通信中的所有课
自己练习: Terminal 在线编辑器