IP、路由与 IPv6
Mac 使用了自分配 IP 地址
如果 Mac 没有收到 DHCP 服务器的响应,就会从 169.254.0.0/16 中给自己分配一个链路本地地址。这个地址无法访问互联网。
症状
- 网络设置显示该服务使用的是自分配 IP 地址。
- IP 地址以 169.254 开头。
- Mac 已连接 Wi-Fi 或以太网,但无法上网。
可能的原因
- DHCP 没有响应。路由器或 DHCP 服务器没有响应。ipconfig 的 man 手册页说明,此时 macOS 可能会分配链路本地地址。
- DHCP 地址池已满。路由器没有空闲的地址可以分配。
- 网线、转换器或 Wi-Fi 链路故障。DHCP 请求没有到达路由器。
- 防火墙或过滤器。安全软件可能会拦截 DHCP 请求或响应。
如何检查
找到每个网络端口的设备名称,例如 Wi-Fi 是
en0。networksetup -listallhardwareports显示该接口的 IPv4 地址。
ipconfig getifaddr en0显示 Mac 接受的 DHCP 数据包。没有输出表示 DHCP 没有成功。
ipconfig getpacket en0显示该服务的设置。要自动获取地址,“配置 IPv4”必须是“使用 DHCP”。
networksetup -getinfo Wi-Fi
如何修复
续租 DHCP 租约。选取苹果菜单 >“系统设置”>“网络”。点按该服务,然后点按“详细信息”。
点按“TCP/IP”,然后点按“续租 DHCP 租约”。点按“好”。
如果“配置 IPv4”是“手动”,把它设为“使用 DHCP”,或使用这个命令。
networksetup -setdhcp Wi-Fi需要管理员密码。
重启路由器,然后再次续租。
对于以太网,换一根网线、一个端口或一个转换器试试。
暂时关闭安全软件做个测试。如果之后 DHCP 正常,就检查它的设置。
使用 Kilobat
kilobat diagnose会检查路由器和互联网,并在路由器没有响应时给出建议。kilobat diagnose
常见问题
169.254 地址一定是坏事吗?
不一定。用一根网线相连的两台 Mac 可以通过链路本地地址通信,但这样无法访问互联网。
Mac 会自己重新尝试 DHCP 吗?
会,它会一直尝试。续租可以让它立即重试。
参考资料
- ipconfig(8),macOS 27.2 自带的 man 手册页
- Apple 支持:在 Mac 上从 DHCP 服务器续租 IP 地址
- Apple 支持:在 Mac 上更改 TCP/IP 设置
- RFC 3927:IPv4 链路本地地址的动态配置
参考资料核查于 2026年10月29日。man 手册页为 macOS 自带版本;在“终端”中用 man <name> 打开。