IP : 动态地址分配和解析

使用一个DHCP 服务器用于语音和数据网络

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

在优化的 IP 电话网络中,电话和 PC 的 IP 地址必须设置在不同的网段中。如果使用动态主机配置协议 (DHCP) 分配地址,则通常每个网段都要有一台 DHCP 服务器。但是,如果您的路由器能够在 IP 网络中进行 DHCP 中继,则可使用单个 DHCP 服务器来分配两个范围的地址。本文说明了将单个服务器同时用于语音和数据IP地址的方式及其原因。

注意: 如果您的网络是完全交换网络,或者您没有支持路由的设备,则本文档中的信息不适用。在这些情况下,为电话和 PC 分配不同的 IP 地址只有两种做法:要么有带两块网络接口卡的 DHCP 服务器,要么有两台 DHCP 服务器。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

问题

如果安装 IP 电话网络,则必须为不同网段中的电话和 PC 分配 IP 地址。这些地址分配要求每个网段都有一台 DHCP 服务器。但您只有一台 DHCP 服务器。

解决方案

为了能够使用当前的 DHCP 服务器为两个 VLAN 分配地址,您的网络中必须有可以执行 VLAN 间路由的第 3 层 (L3) 设备。

本文档通过两个示例介绍如何使用一台 DHCP 服务器分配语音和数据两个 IP 地址。

网络设置

现有一个使用 Cisco Catalyst 6000 或 Catalyst 3524-XL-PWR 建立的网络。其中,将 VLAN 10 配置为 PC 和服务器使用的数据 VLAN。在同一个 VLAN 中,还有一台运行 Windows 2000 的 DHCP 服务器,用于提供 10.10.10.20 到 10.10.10.200 范围的地址。该 DHCP 服务器的 IP 地址为 10.10.10.2。

dhcp-multintwk-1.gif

在此网络中添加IP电话,将IP电话插入Catalyst端口的后面(与PC相连)。

Catalyst 6000 与 MSFC 连接示例

在此方案中,有一个带有 Multilayer Switch Feature Card (MSFC) 的 Cisco Catalyst 6000 作为支持路由的设备。

/image/gif/paws/19580/dhcp-multintwk-2.gif

要允许 PC 和电话使用同一个 Catalyst 端口,需要使用新的语音 VLAN 110 配置 auxiliaryVLAN 命令,如下所示:

cat6k-access> (enable) set VLAN 110 name 11.1.1.0_voice
cat6k-access> (enable) set VLAN 10 5/1-48
cat6k-access> (enable) set port auxiliaryVLAN 5/1-48 110

要允许使用数据 VLAN 10 中的当前 DHCP 服务器为电话分配 IP 地址,请执行以下步骤:

  1. 在 MSFC 上为每个 VLAN、数据和语音创建一个接口。

  2. 在 VLAN 中为每个接口配置一个有效地址。

  3. 在接口 VLAN 110 中,添加一个 ip helper-address 命令

    此命令允许将语音 VLAN 110上的DHCP广播信息包作为单播信息包,发送到数据VLAN 10中的DHCP服务器。

    MSFC 中的配置应为:

    cat6k-msfc(config)#interface vlan10
    cat6k-msfc(config-if)#ip address 10.10.10.19
    cat6k-msfc(config-if)#<description of data VLAN for PCs and where the DHCP
     server is located>
    
    cat6k-msfc(config)#interface vlan110
    cat6k-msfc(config-if)#ip address 11.1.1.19
    cat6k-msfc(config-if)#ip helper-address 10.10.10.2
    cat6k-msfc(config-if)#<description VLAN for voice>
    

    Cisco Catalyst 6000 的配置保持不变。

  4. 采用语音VLAN 110中的新的电话地址范围(11.1.1.1.X),配置DHCP服务器。

    如果 DHCP 服务器没有与中继代理 IP 地址匹配的范围,则 DHCP 请求失败。您需要在该范围添加选项150,将TFTP服务器地址提供给电话。有关为电话配置 DHCP 服务器的分步说明,请参阅为 Cisco CallManager 配置 Windows 2000 DHCP 服务器

Catalyst 3524-XL 与外部路由器连接示例

在此方案中,有一台 Cisco Catalyst 3524-XL-PWR 和一台用作路由支持设备的外部路由器,每个 VLAN 配有一个接口。

/image/gif/paws/19580/dhcp-multintwk-3.gif

要允许 PC 和电话使用同一个 Catalyst 端口,请使用新语音 VLAN 110 配置中继,如下所示:

interface FastEthernet0/13
description phone and PC
switchport mode trunk
switchport trunk encapsulation dot1q
switchport voice vlan 110
switchport trunk native vlan 10

重复Catalyst上的所有端口配置,在这种配置中,将PC插入电话,您便连接上了某部电话。

要允许使用数据 VLAN 10 中的当前 DHCP 服务器为电话分配 IP 地址,请执行以下步骤:

  1. 将两个路由器接口连接到 Cisco Catalyst 3524-XL 上的两个端口,一个在 VLAN 10 中,另一个在 VLAN 110 中。

  2. 在路由器一端,在每个 VLAN 中分配一个有效地址。

    注意: 在配置中继后,您还可以用从Catalyst 3524-XL连接到路由器的单个端口,来达到此目的。

  3. 在连接到语音 VLAN 110 的路由器接口中发出 ip helper-address 命令

    这允许将接口上收到的DHCP广播信息包作为单播信息包,发送到数据VLAN 10中的DHCP服务器上。

    路由器中的配置应如下所示:

    router(config)#interface FastEthernet0/0 
    router(config-if)#ip address 10.10.10.19 255.255.255.0 
    
    router(config-if)#<description connected to catalyst port 0/10 
     data VLAN for PCs and DHCP server>
     
    router(config)#interface FastEthernet0/1
    router(config-if)#IP address 11.1.1.19 255.255.255.0 
    router(config-if)#IP helper-address 10.10.10.2 
    router(config-if)#<description connected to catalyst port 0/11 voice VLAN>
    
    

    Cisco Catalyst 3524-XL 中的配置应为:

    router(config)interface FastEthernet0/10
    router(config-if)#switchport access vlan 10
    router(config-if)#<description port on data VLAN going to the router FE0/0>
    
    router(config)interface FastEthernet0/11
    router(config-if)#switchport access vlan 110
    router(config-if)#<description port on voice VLAN going to the router FE0/1>
    
  4. 采用语音VLAN 110中的新的电话地址范围(11.1.1.1.X)配置DHCP服务器。

    如果 DHCP 服务器没有与中继代理 IP 地址匹配的范围,则 DHCP 请求失败。您需要在该范围添加选项150,将TFTP服务器地址提供给电话。有关为电话配置 DHCP 服务器的分步说明,请参阅为 Cisco CallManager 配置 Windows 2000 DHCP 服务器

该解决方案如何运作

根据DHCP数据包的中继代理字段的使用,DHCP服务器能够为两个VLAN提供适当的地址范围。中继代理负责将通过电话发送的广播 DHCP 数据包转换成发送到 DHCP 服务器的单播数据包。该Agent还将从DHCP服务器发出的单播DHCP包转换成在电话网上发送的广播包。在此示例中,中继代理是用 ip helper-address 命令在 MSFC 上配置的 VLAN 110 接口。

当 DHCP 服务器在中继代理域中的当前 IP 地址收到 DHCP 发现消息时,它将使用该地址来匹配适当地址范围,并从中分配 IP 地址。在 RFC 3046 中可以看到此协议的详细信息。leavingcisco.com

在本例中交换的 DHCP 数据包如下所示:

/image/gif/paws/19580/dhcp-multintwk-4.gif

蓝线显示发送到和从 IP 电话发送的 DHCP 数据包。如果DHCP服务器和电话在同一个以太网网络中,则只会出现这些信息包。

黑线表示中继代理从 DHCP 服务器输入/输出的 DHCP 单播数据包。

下表显示此示例中的数据包的详细信息。有关 DHCP 协议和字段的详细信息,请参阅 RFC 1541leavingcisco.com

1 DHCP 发现 2 DHCP 发现
IP Source Address = [0.0.0.0] 
IP Destination Address = [255.255.255.255] 

DHCP Client IP Address = [0.0.0.0] 
DHCP Relay Agent = [0.0.0.0] 
Client Hardware Address = 00070EEA5449 
Message Type = 1 (DHCP Discover) 
Parameter Request List:
...
    150= Unknown Option 
... 
IP Source Address = [11.1.1.19] 
IP Destination Address =[10.10.10.2]

DHCP Client IP Address = [0.0.0.0]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449 
Message Type = 1 (DHCP Discover)
Parameter Request List:
...
    150= Unknown Option 
...
4 DHCP 提供 3 DHCP 提供
IP Source Address = [10.10.10.2]
IP Destination Address = [255.255.255.255]

DHCP Client IP Address = [11.1.1.25]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449
Message Type = 2 (DHCP Offer)
....
Address Renewel Interval = 216000 (seconds)
TFTF Server = "11.1.1.10"
...
IP Source Address = [10.10.10.2]
IP Destination Address = [11.1.1.19]

DHCP Client IP Address = [11.1.1.25]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449 
Message Type = 2 (DHCP Offer)
....
Address Renewel Interval = 216000 (seconds)
TFTF Server = "11.1.1.10"
...
5 DHCP 请求 6 DHCP 请求
IP Source Address = [0.0.0.0] 
IP Destination Address = [255.255.255.255]

DHCP Client IP Address = [0.0.0.0]
DHCP Relay Agent = [0.0.0.0]
Client Hardware Address = 00070EEA5449 
Message Type = 3 (DHCP Request)
Request Specific IP Address = [11.1.1.25]
Parameter Request List:
...
    150= Unknown Option 
...
IP Source Address = [11.1.1.19] 
IP Destination Address = [10.10.10.2]

DHCP Client IP Address =  [0.0.0.0]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449 
Message Type = 3 (DHCP Request)
Request Specific IP Address = [11.1.1.25]
Parameter Request List:
...
    150= Unknown Option 
...
8 DHCP 确认 7 DHCP 确认
IP Source Address = [10.10.10.2]
IP Destination Address = [255.255.255.255]

DHCP Client IP Address = [11.1.1.25]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449
Message Type = 5 (DHCP Ack)
....
Address Renewel Interval = 216000 (seconds)
TFTF Server = "11.1.1.10"
...
IP Source Address = [10.10.10.2] 
IP Destination Address = [11.1.1.19]

DHCP Client IP Address = [11.1.1.25]
DHCP Relay Agent = [11.1.1.19]
Client Hardware Address = 00070EEA5449 
Message Type = 5 (DHCP Ack)
....
Address Renewel Interval = 216000 (seconds)
TFTF Server = "11.1.1.10"
...

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 19580