nac*_*chi 6 networking dhcp linux ubuntu vlan
可能的重复:
我可以在一个网络上有多个 DHCP 服务器吗?
我猜这是一个非常古老的问题。在这个论坛本身,它已经在多个 VLAN、多个子网、单个 DHCP 服务器中得到了回答?.这是使用 Cisco 路由器的 Helper 选项完成的。但就我而言,我们没有使用 Cisco 路由器。
在我的 ubuntu 机器上,我设置了 3 个 VLAN,id 为 3、4、5。我想通过 dhcp 服务器为它们提供 IP 地址。但是我对概念和实现有疑问。通常 dhcp 服务器会配置一个接口(比如 eth0 ),具有一个特定的 IP 地址,比如 192.168.0.100。所以如果客户端需要 IP,它将向该服务器发送 dhcp 请求,并且服务器还识别该请求来自该子网,并提供来自同一子网的适当 IP。(比如 192.168.0.20)
但是如果有很多 VLAN 接口并且请求 IP 地址,服务器将如何区分 dhcp 请求来自这个特定的 VLAN 并提供来自相应子网范围的 IP。
我听说我们应该在 dhcp-server 上创建 VLAN。任何人都可以对方法、概念和实现有所了解吗?
如果您的 linux 路由器具有到带有标记 vlan 的交换机的中继接口,您可以毫无问题地做到这一点。
首先在 /etc/network/interfaces 中定义每个 vlan 例如:
auto eth0.200
iface eth0.200 inet static
address 10.0.1.1
netmask 255.255.255.0
iface eth0.201 inet6 static
address 10.0.2.1
netmask 255.255.255.0
iface eth0.202 inet6 static
address 10.0.3.1
netmask 255.255.255.0
Run Code Online (Sandbox Code Playgroud)
然后告诉 dhcp 守护进程通过编辑 /etc/default/isc-dhcp-server [或 dhcpd] 并将变量 INTERFACES 更改为“eth0.200 eth0.201 eth0.202”来侦听某些/所有这些子网
并将单独的子网添加到 /etc/dhcp/dhcpd.conf
subnet 10.0.1.0 netmask 255.255.255.0 {
range 10.0.1.10 10.0.1.20;
# you might point some other address
# within that subnet that should be advertised as router
# it does not have to be your linux box
option routers 10.0.1.1;
option broadcast-address 10.0.1.255;
authoritative;
}
Run Code Online (Sandbox Code Playgroud)
其余子网依此类推。
要在服务器上创建多个 VLAN,您需要一台启用 802.1q(Cisco 术语中的 VLAN 标记或中继)的交换机或多个物理接口。DHCP 服务器将侦听每个接口上的请求。您可以为每个接口定义分布式地址。
客户端连接在一个 VLAN 上,广播 IP 请求。您的服务器接收请求,然后对为此 VLAN 定义的范围做出答复。
您有支持 802.1q 的交换机吗?或者您的服务器上有多个接口吗?
| 归档时间: |
|
| 查看次数: |
30410 次 |
| 最近记录: |