服务器通过两个物理网卡连接两个独立的子网。服务器是否可以充当两个网络进行通信的网关?澄清一下,我不需要任何通信。目标只是从服务器向两个子网提供相同的 Web 服务,而不允许它以任何方式连接这两个子网。
网络 A 是典型的办公室局域网。网络 B 位于同一栋大楼内,但与外界隔绝。没有互联网接入,什么都没有。出于各种专有原因,它需要保持这种状态。开发软件的用户必须通过 N A 将其上传到 Subversion 服务器。NB 上的技术人员必须能够访问 Subversion 文件。我在两个子网上的交换机都是 Procurve 2810...我认为不支持 ACL。
答案1
正如您所描述的,您实际上并不希望服务器成为网关。IP 网关是将本地网段的流量转发到不在该网段上的其他主机的主机。只有在路由流量时,它才是网关,而您已声明您不希望它这样做。不要启用转发或桥接。
但是,您可以在两个 IP 接口上运行 Web 服务或 Subversion。只要接口的地址与客户端位于同一子网,客户端就不需要网关。您只需将 Web 服务器配置为在两个接口上进行监听。
答案2
服务器通过两个物理网卡连接两个独立的子网。服务器是否可以充当两个网络进行通信的网关?目标只是从服务器向两个子网提供相同的 Web 服务,而不允许它以任何方式连接这两个子网。
服务器不需要是网关。只需将 subversion 绑定到两个 NIC,然后让人们通过相应的服务器 NIC IP 地址连接到 subversion。
答案3
如果IP 转发未在操作系统中启用,它将不会在网络之间路由数据包。
答案4
这很容易实现:为服务器提供两个 NIC。将一个连接到子网 A,另一个连接到子网 B。然后确保该服务器上的“IP 转发”已安全禁用!除了:echo 0 >/proc/sys/net/ipv4/ip_forward 之外,您还可以将 FORWARD 链的默认规则设置为丢弃:iptables -P FORWARD DROP 查看特定操作系统的说明,了解如何实现这些。不过,通常情况下,ip_forward 中的 0 无论如何都是默认值。