我所在的公司有两个地点,彼此相距不远,有些用户经常带着笔记本电脑在大楼之间穿梭。我们刚刚设置了 AD 环境,我正在寻找一种方法,仅当您在大楼内时,才能映射每栋大楼的打印机。
我读到过一些关于使用组策略首选项和使用 IP 地址的项目级定位来实现这一点的文章,但只有gpupdate
执行 a 时才会添加或删除打印机。因此,如果有人将笔记本电脑带入另一栋建筑,并且 PC 一直处于开机状态,除非他们重新启动,否则他们将无法使用正确的打印机。
有没有办法根据计算机的物理位置映射打印机(比如当计算机连接到网络时,根据新连接的 IP 立即映射打印机?)我们在两栋楼有单独的 IP 块,因此使用 IP 的解决方案绝对是一个选择。如果没有,我可能会只映射两栋楼的打印机,让用户决定使用哪台打印机进行打印。
编辑:更多信息:
其中一个位置有多台打印机,
其中大多数打印机都是相同型号(不是的打印机可能会使用安全组或其他方法进行映射,因为它们是特殊用途的打印机,如标签打印机。)
答案1
有一些不涉及 AD 的选项:
它们是完全相同的型号。因此,驱动程序和所有东西都相同
您可以使用 DNS 技巧为两台打印机分配相同的域名。这取决于您的 LAN DNS 服务器的功能 - 它必须不知何故从不同的站点查询时返回不同的答案。(例如,BIND9 可能通过“视图”实现这一点。)请注意,这仅在笔记本电脑使用您的内部 DNS 服务器并没有永久设置为使用 8.8.8.8 或其他。
根据网络布局,您可以使用 IP 任播或 DNAT 为两台打印机分配相同的 IP 地址,这将诱使计算机始终连接到“最近”的设备。
DNAT 应该始终有效,但要求打印机与笔记本电脑位于不同的子网中(由于常见的“NAT 环回”问题)。从专用子网中选择一个私有 IP 地址 - 即既不属于站点 A,也不属于站点 B。在每个路由器中,添加一条防火墙规则,例如ip daddr <shared_IP> dnat to <printer_IP>
指向最近设备的规则。(我正在使用不育系语法。)然后将所有客户端配置为通过该共享 IP 地址进行打印。
任播不能保证一定有效(打印机并非真正的服务器),但只要打印机支持同时拥有两个 IP 地址,它就可能有效:第一个 IP 地址是唯一的(与往常完全一样),第二个 IP 地址在所有打印机上相同(并且属于既不是站点 A 也不是站点 B 的子网)。然后,您的每个 LAN 路由器都需要一个路由,例如dst <shared_IP> via <unique_IP>
,将数据包路由到最合适的设备。