理解 IP 地址
在我们开始扫描网络之前,理解 IP 地址至关重要。你可以将 IP 地址想象成你的计算机在网络中的家庭地址。就像邮递服务需要你的家庭地址来投递邮件一样,网络中的其他设备也需要你的 IP 地址来与你的计算机通信。
- IP 地址是网络中设备的唯一标识符。它通常由一系列用点分隔的数字组成,例如
192.168.1.1
。
graph LR
A[Internet] --- B[Router 192.168.1.1]
B --- C[PC 192.168.1.10]
B --- D[Laptop 192.168.1.11]
B --- E[Smartphone 192.168.1.12]
B --- F[Smart TV 192.168.1.13]
style A fill:#f9f,stroke:#333,stroke-width:4px
style B fill:#bbf,stroke:#333,stroke-width:2px
style C fill:#dfd,stroke:#333,stroke-width:2px
style D fill:#dfd,stroke:#333,stroke-width:2px
style E fill:#dfd,stroke:#333,stroke-width:2px
style F fill:#dfd,stroke:#333,stroke-width:2px
- 要查找你自己的 IP 地址,我们将使用一个显示网络接口信息的命令。输入以下命令:
ip addr show | grep inet
让我们分解一下这个命令:
ip addr show
显示所有网络接口的信息
|
(管道符)将该输出传递给下一个命令
grep inet
过滤输出,仅显示包含 "inet" 的行,这些行包含 IP 地址
你会看到类似以下的输出:
inet 127.0.0.1/8 scope host lo
inet 172.19.0.3/16 brd 172.19.255.255 scope global eth1
-
在这个输出中,你会看到几个 IP 地址。以下是它们的含义:
127.0.0.1
是“本地主机”地址。每台计算机都将自己称为 127.0.0.1
。这用于你机器内部的本地连接。
172.19.0.3
是你的机器在网络中的 IP 地址。这是其他设备用来与你的机器通信的地址。
-
记下不是 127.0.0.1
的 IP 地址(在这个例子中是 172.19.0.3
)。我们将在下一步中使用它。
IP 地址后面的 /16
称为子网掩码。它定义了网络的大小。在这个例子中,/16
表示 IP 地址的前两个数字(172.19
)定义了网络,后两个数字可以用于单个设备。
如果你对不同类型的 IP 地址感到好奇,值得注意的是,IP 协议有两个主要版本:IPv4(如 172.19.0.3
)和 IPv6(以类似 fe80::
的字符开头)。IPv6 的创建是为了解决随着更多设备连接到互联网而导致的 IPv4 地址耗尽问题。在本实验中,我们将重点介绍 IPv4 地址。