Skip to content

... (Previous content)

6. 客户端如何获取 IP (Client Side)

...

6.3 Linux 服务器

通常修改网卡配置文件(如 /etc/netplan//etc/sysconfig/network-scripts/),将 BOOTPROTO 改为 dhcp

7. IP Unnumbered (借用 IP 地址)

在广域网连接中,为了节省珍贵的公网 IPv4 地址,我们可以配置接口不配置自己的 IP,而是借用路由器上其他接口(通常是 Loopback 接口)的 IP 地址。

这在 PPP 链路中非常常见。

bash
# 1. 配置 Loopback 接口 (作为被借用的源)
interface LoopBack 0
 ip address 1.1.1.1 32

# 2. 在串行接口上借用 Loopback 0 的地址
interface Serial 1/0/0
 link-protocol ppp
 ip address unnumbered interface LoopBack 0
  • 原理:PPP 的路由是基于直连路由和对端主机路由的,不需要同网段也能通信(依靠 NCP 互推 32 位主机路由)。

8. DHCP 配置场景详解

8.1 基于接口部署 (Interface Mode)

  • 适用场景:中小型网络,Server 和 Client 在同一个网段。
  • 特点:Server 接口 IP 就是 Client 的网关。
  • 配置
    bash
    [AR] dhcp enable
    [AR] interface g0/0/0
    [AR-g0/0/0] ip address 192.168.1.1 24
    [AR-g0/0/0] dhcp select interface
    [AR-g0/0/0] dhcp server lease day 2  # 修改租期
    [AR-g0/0/0] dhcp server excluded-ip-address 192.168.1.200 192.168.1.254 # 排除地址
    [AR-g0/0/0] dhcp server static-bind ip-address 192.168.1.100 mac-address xxxx-xxxx-xxxx # 静态绑定

8.2 基于全局部署 (Global Mode)

  • 适用场景:中大型网络,Server 集中管理多个网段。
  • 特点:使用 ip pool 命令创建全局地址池。
  • 配置
    bash
    [AR] ip pool PoolA
    [AR-ip-pool-PoolA] network 192.168.1.0 mask 24
    [AR-ip-pool-PoolA] gateway-list 192.168.1.1
    [AR-ip-pool-PoolA] dns-list 8.8.8.8
    [AR] interface g0/0/0
    [AR-g0/0/0] dhcp select global

8.3 DHCP 中继 (Relay)

  • 适用场景:Server 和 Client 跨网段(跨路由器)。
  • 原理:路由器将 DHCP 广播包(Discover)转换为单播包(源IP=接口IP,目的IP=Server IP)发送给远端 Server。
  • 关键点:Server 必须有去往 Relay 接口网段的路由!
  • 配置
    bash
    [Relay-Router] interface g0/0/0 (连接 Client)
    [Relay-Router-g0/0/0] dhcp select relay
    [Relay-Router-g0/0/0] dhcp relay server-ip 10.0.0.1 (Server 地址)

9. 常见故障排查

  • Relay 场景下无法获取 IP
    • 路由问题 (最常见):DHCP 服务器收到中继包后,要把 Offer 回给 PC。服务器的路由表里有去往 PC 网段 (即 Relay 接口所在网段) 的路由吗?没有路由,服务器会丢包。
    • 检查命令display ip routing-table (在 Server 上查)。
  • PC 获取不到 IP (169.254.x.x)
    • 检查 dhcp enable 开了吗?
    • 接口选对模式了吗?(dhcp select ...)
    • 地址池里的 IP 是不是发完了?(看 Total 和 Used)
  • 获取到 IP 但上不了网
    • 检查网关 (gateway-list) 配置是否正确。
    • 检查 DNS。