IP 地址与网络基础全面解析
一、IPv4 与 IPv6 的区别
IPv4
• 使用 32 位地址
• 表示方式:4 组十进制数字,每组范围在 0 ~ 255 之间
• 各组之间使用 .(点)隔开
• 示例:192.168.1.1
IPv6
• 使用 128 位地址
• 表示方式:8 组十六进制数字,每组之间用 :(冒号)隔开
• 示例:2001:0db8:85a3:0000:0000:8a2e:0370:7334
• 优势:地址空间巨大,有效解决 IPv4 枯竭问题
二、常见特殊 IP 地址解析
地址
含义说明
127.0.0.1
回环地址(Loopback),代表本机,用于本机内部通信测试
0.0.0.0
表示所有本地地址。监听服务绑定此地址意味着“所有网卡都可访问”
localhost
主机名,通常解析为 127.0.0.1,也是回环地址的别名
实际示例
Listen 0.0.0.0:80
表示该服务监听在所有网卡的 80 端口上,可以通过 127.0.0.1:80、192.168.x.x:80 等多种地址访问。
三、网卡名称说明(Linux环境)
网卡名称 | 类型说明 |
---|---|
lo | Loopback(回环)网卡,仅用于本机自身通信 |
eth0 / ens33 | 真实或虚拟的网络接口,用于与外界通信 |
• lo 是内置的虚拟网卡,不与外部通信
• eth0 是传统命名方式,较新系统可能采用 ens33、enp0s3 等规则命名
四、ping 命令的作用
ping 并不是底层协议,而是一个应用层小工具。它基于 ICMP 协议,通过发送“回显请求”并等待“回显响应”来判断网络是否通畅。
示例命令
ping 8.8.8.8
• 如果收到响应包,则说明网络通畅,目标地址可达
• 常用于测试本机是否能连接外网、局域网内是否可通信等
五、Host 字段与 IP / 域名访问的区别
在进行 HTTP 请求时,浏览器会自动填充请求头中的 Host 字段,具体行为如下:
• Host 字段值为域名
• 示例:
http Host: www.example.com
使用 IP 地址访问时:
• Host 字段值为该 IP
• 示例:
http Host: 192.168.0.100
判断访问方式的实用技巧:
if request.host != server_ip:# 说明是通过域名访问
else:# 是 IP 访问,可选择拒绝服务
这种方法可用于:
• 防止用户通过 IP 地址直连服务器
• 强制跳转域名以统一访问入口