Menu
CoddyTech

名称回顾

Coddy 使用终端进行网络通信 课程的第 9 课,共 47 课。

在建立任何连接之前,名称必须先转换为地址,而有两种方式可以回答这个问题。

你的机器会先检查 /etc/hosts。无论在那里找到什么,都会直接采用,不会查询 DNS。只有名称不存在时,机器才会向 DNS 解析器发起查询。解析器通常会从缓存中回复,因此你会经常看到熟悉的非权威标签。

cat /etc/hosts        # 优先检查这个文件,并以其内容为准
nslookup example.com  # 文件里没有记录时,再查询 DNS

记录分为不同类型:A 和 AAAA 用于地址,CNAME 用于别名,MX 用于邮件,TXT 用于自由文本。每条记录都有一个 TTL,用于决定它可以缓存多久。

值得养成的习惯:解析和连接是两个独立的步骤,知道哪一步失败了,就完成了大部分诊断工作。

challenge icon

挑战

中等

反过来读取 hosts 文件给出的答案。

在上一个挑战中,你输出了名称对应的地址。现在,从 /etc/hosts 中以该地址开头的第一行,输出 127.0.0.1 对应的名称。预期输出必须完全如下:

localhost

在 grep 模式中,^ 表示“在行首”,这样就不会匹配到只是包含这些数字的地址。

亲手试试

终端
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

使用终端进行网络通信中的所有课

自己练习: Terminal 在线编辑器