我客户的局域网包括两个 soho 路由器,其中一个是 Cisco RV042,另一个刚刚坏了。每个路由器都连接到 ISP 提供的路由器(Cisco IAD 系列),该路由器连接到公司的 T1。
大多数工作站使用 RV042 作为网关。少数机器指向现已失效的 soho 路由器。
我并不是真的想更换旧的 soho 路由器,而是希望所有的机器都使用同一个 soho 路由器作为互联网网关。
问题在于,指向损坏的 Soho 路由器的机器都是损坏的 Windows Server 域的一部分,而该域现在没有服务器来处理身份验证。不可能在这些机器上获得管理员权限。用于处理丢失的管理密码的技术工具包程序只能在非域机器上使用。
我在这个局域网上有几个 Linux 机器,配置其中一个机器使用 iptables 伪装成损坏的网关设备并将数据包转发到唯一剩下的网关似乎不太难。这将是一个临时措施,直到我可以彻底摆脱那些 Windows 工作站。
这是一个传统网络,我正在将其转换为纯 Linux 服务器和工作站。
有人可以解释一下如何做到这一点吗?
公共网络:
xxx.xxx.xxx.37.16/255.255.255.248
私人局域网:
192.168.0.0/255.255.255.0
SOHO 路由器 - 没有坏
wan: xxx.xxx.37.17
lan: 192.168.0.1
SOHO 路由器 - 已损坏
wan: xxx.xxx.37.18
lan: 192.168.0.2
答案1
当然。
目前还不完全清楚您所谈论的是某种分层路由,还是只希望 LAN 上的所有机器都具有一般的 NAT 访问;我假设是后者(最通用和最有用的情况),因此您需要:
- 为新买的 *nix 机器上坏掉的路由器设置一个 IP(别名?)
最好的办法(也是防止事情进一步“中断”)是简单地在指向 LAN 的 Linux 机器上为内部 NIC 设置别名。这很容易:
ifconfig eth0:0 192.168.0.2 netmask 255.255.255.0
... 这会将 IP 地址绑定到 Linux 机器。如果它全程接管并且您不关心损坏的路由器再次出现,只需直接分配地址即可:
ifconfig eth0 192.168.0.2 netmask 255.255.255.0
请注意,这只是一个临时安排,重启后它将失效,因为您所做的只是在内存中重新配置网络接口。您需要找出您的特定发行版如何保存更改,并这样做以确保它在每次重启时显示出来。
- 设置 iptables 以使用 DNAT 处理数据包
有点棘手。这采用一般形式:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d ${destination-network} -j SNAT --to-source xxx.xxx.xxx.37.16
...虽然它当然可以调整。这条单线提供完全 NAT 互联网访问,就像家用路由器一样。我不太清楚你是想要这个,还是想要别的东西,所以这似乎是最通用的(适用的)答案。如果你想要“普通的 NATing”,那么它看起来像这样:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source xxx.xxx.xxx.37.16
您还需要将其保存在文件中,因为该设置也在内存中,重启后无法保留。
- 确保你的防火墙不会吞噬你新发现的路由
听起来很傻,但在某些情况下,你可能默认启用了防火墙,所以谨慎一点比较好:
iptables -I INPUT 1 -s 192.168.0.0/24 -j ACCEPT
iptables -I FORWARD 1 -s 192.168.0.0/24 -j ACCEPT
这也需要像之前的防火墙规则一样保存。
- 确保已启用 IP 转发
如果不启用 IP 转发,数据包移动部门将陷入困境。
sysctl -w net.ipv4.ip_forwarding = 1
这是暂时的,重启后将无法继续存在,请务必保存它,否则它会吃掉小猫等。
答案2
用于处理丢失的管理密码的技术工具包程序(例如 sam 程序)仅适用于非域机器。
我意识到我的回答在技术上与您的整体问题无关,但我确实想澄清一下/发表评论 - 您应该能够破解 SAM 以重置计算机上的本地管理员密码,然后以所述本地管理员身份登录并脱离域。脱离域不需要实时域控制器。您应该能够关闭计算机,除非这些计算机上实际上没有本地管理员帐户。