我的一些用户需要特定范围内的 IP 才能使用某些服务,而其他一些用户则不需要。由于许多用户可以访问不同的 PC(有时他们也共享相同的 PC),Windows Server 2012 DHCP 是否可以分配基于 IP 地址的用户名?
我做了一些研究,看起来这是不可能的,因为 DHCP 地址是在用户登录之前分配的。我是对的吗?
我发现 Windows Server 中的 DHCP 策略可以基于以下一个或多个参数:
- MAC地址
- 供应商类别
- 用户类别
- 客户端标识符
- 中继代理信息
但我认为它们都与PC上安装的硬件有关。
我该如何解决这个问题?我考虑过登录后更改 IP 的登录脚本,但在这种情况下,我需要为每个用户静态分配不同的 IP。有没有办法动态实现这一点?
答案1
您想要做的是在交换机级别使用某种形式的 802.1x,并使用 NAP (Windows) 或 FreeRADIUS (*nix) 后端。当客户端最初连接时,它们都被放在“隔离”VLAN 上,除了登录外,它们无权访问任何内容。然后,根据它们的计算机证书或登录名或 AD 中的组成员身份,它们被放在交换机端口级别的正确 VLAN 上。
您无法使用 DHCP 本地执行此操作,您需要至少支持 802.1x 和 RADIUS 的交换机或类似 Cisco Clean Access 或 ISE 的交换机,但它们的功能远不止 VLAN 隔离。
答案2
没有使用任何合理的内置方法。
原因有二:
- DHCP 租约在启动时(获取 IP 地址)或租约时间过半时续订(因此,对于 7 天租约,租约在 3.5 天后续订),或者如果续订失败,则更频繁地续订。但两次续订之间至少要等待(例如)3.5 天
- 没有 DHCP 代理或服务器会将登录用户作为其请求的一部分发送(因为它不在规范中)。
我猜测如果我们挥手示意,您可以使用登录脚本来执行此操作。向您的定制 DHCP 服务器发送请求,获取定制的 DHCP 响应(对您的脚本),然后手动设置 IP 地址。或者,也许向 DHCP 服务器发送定制的请求,调整您的保留 IP 地址,然后手动触发续订,但它们都做错了TM
答案3
查看远程桌面服务 IP 虚拟化。您将能够为每个会话分配 IP。我不知道您是否可以控制将哪个 IP 分配给用户。更多信息请参阅 RDS 团队博客: