Articles of NAT

使用iptables保护NAT设置

我有一个需要充当互联网网关的Debian运行设备。 最重要的是,我想提供的防火墙,不仅阻止入站stream量,而且出站stream量。 而且我认为iptables应该能够完成这项工作。 问题:我已经正确地configuration了NAT(我想?),但是一旦我将默认策略设置为DROP并添加规则以允许来自LAN内部的HTTP通信,则HTTP将不会通过。 所以基本上我的规则似乎没有工作。 以下是我用于iptables的初始化脚本。 该设备有两个NIC,分别是eth0(WAN接口)和eth1(LAN接口)。 echo 1 > /proc/sys/net/ipv4/ip_forward # Flush tables iptables -F iptables -t nat -F # Set policies iptables -P INPUT DROP iptables -P OUTPUT DROP # NAT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i eth0 -o eth1 -m state –state RELATED,ESTABLISHED -j ACCEPT […]

当应用于本地目的地stream量时,DNAT和REDIRECT是否等同?

在设置我们的OpenStack环境时,遇到了阻止实例联系在主机上运行的服务器的问题。 元数据服务(暴露HTTP API)在主机上的端口8775上运行,OpenStacknetworking代码添加以下DNAT规则,通过端口80上的特殊地址授予访问权限: -A PREROUTING -d 169.254.169.254/32 -p tcp -m tcp –dport 80 -j DNAT –to-destination 127.0.0.1:8775 实例通过本地桥接设备连接到主机,并将169.254.169.254分配给lo 。 虽然这条规则成功地匹配来自试图访问http://169.254.168.254/的访客实例的数据包,但是他们从未到达侦听服务。 用一个基本上等效的REDIRECT来replace这个DNAT规则会使所有事情都正常工作: -A PREROUTING -d 169.254.169.254/32 -p tcp -m tcp –dport 80 -j REDIRECT –to-ports 8775 我试图理解为什么REDIRECT工作和DNAT失败。 从iptables文档中不清楚DNAT规则是否适用于本地目的地stream量。 我希望这里有人可以提供一个权威的答案,理想的文件备份,或者可以build议什么可能是我的configuration错误,阻止DNAT规则按预期工作。

如何通过IPSEC VPN路由公共IP范围?

所以,我有一个build立的IPSec站点到站点隧道。 站点A有一个SonicWall,站点B有一个EdgeRouter。 第一条隧道由Site A的NATed ips到Site B的NATed ips组成。 一切都按预期工作。 接下来,我有一个公共的IP范围,站点B需要访问,但是请求需要看起来像是来自站点A.当我build立这个隧道时,我只能看到网关的stream量下降。 我无法访问这些ips。 由于它在局域网到局域网的configuration工作正常,我相信这可能是一个NAT问题 – 但我不确定,也不知道如何进一步诊断。 这可能是一个红鲱鱼,因为我不是很有信心…我曾尝试在VPN> WAN / WAN> VPN中放入“允许所有”规则,然后过滤到一个单独的IP,然后从站点B ping它。我看到丢包。 任何人都可以提供任何build议吗?

NATreflection或分裂DNS?

我正在进行一个networking重组,它有三个地理位置,但将共享一些服务。 其中两个地点有工作站,一个只有服务器(在CoLo设施中)。 我们将运行PfSense防火墙,几台主机将在局域网内提供服务,并通过端口转发到互联网。 在绑定中运行4个不同的DNS视图似乎并不值得麻烦,但是听起来好像PfSense中使用NATreflection的负载和configuration开销是相当大的。 每个方面有哪些警告,还是有其他的select?

在具有IPv6和FQDN的不同服务器上运行多个服务

NAT在过去的十年中允许我们做的事情之一是将物理服务分离到不同的服务器上,同时隐藏在单个接口后面。 例如,我在192.0.2.10上的NAT后面有example.com 。 我端口转发:80和:443到我的networking服务器。 我也端口:25到我的邮件服务器,和:3389到terminal服务器和:8080到我的电脑的networking界面,下载山洪,故事继续。 所以我有5个端口转发到example.com上的4个不同的计算机。 然后,我去拿一些整齐的IPv6。 我为example.com分配了2001:db8:88:200::10的IPv6地址。 这对我的网站来说很好,但我想去example.com:8080find我的种子,或者example:3389login到我的terminal服务器。 我怎样才能做到这一点与IPv6,因为没有NAT。 当然,我可以为每个新服务创build一堆新的DNS条目,但是我必须更新所有习惯于inputexample.com客户端,以便访问网站或terminal服务器。 我的用户是两个砖块,所以他们不会记得连接到rdp.example.com 。 我有什么select来保持IPv6的NAT风格function? 如果你还没有弄明白,上述情况对我或者其他任何人来说都不是一个真实的场景,但最终肯定会发生。 你知道,与devops和所有。

什么是最好的方式来适应多个设备都想要使用相同的固定IP地址到同一个局域网?

假设我有一个具有硬件编码IP地址的以太网设备。 我有可以与设备一起工作的软件,它可以configuration为使用设备的几乎任何IP地址,但如前所述,设备始终使用相同的固定地址。 现在是这个问题:假设我想在我的networking中使用多个这些设备。 两个足以说明问题的例子。 很显然,知识产权冲突是直接的。 我可以运行这个软件的两个实例,但是没有办法去消除哪个软件实例应该关联到哪个设备。 我认为可能的工作是使用支持3层的设备来实现networking地址转换,但是我不需要像整个大多数商品路由器那样对整个局域网进行NAT转换。 我真正想做的是在每个端口上应用静态NAT。 我想告诉路由器(?),“你看到这个设备插入端口2,认为它是10.1.1.1?看起来像192.168.1.2,而另一个插入端口3, 也认为它是10.1.1.1 – 使这个看起来像192.168.1.3“..等等。 (当然假设我的局域网的其余部分是192.168.1 / 24) 我使用了一个可以完成VLAN和路由域的“交换机”,但似乎没有能力在VLAN之间转换地址。 空间和成本限制排除了将具有NATfunction的整个路由器专用于每个设备。 那么这种事情是可能的吗? 如果是这样,需要什么样的设备来获得它? 哎呀,也许我正在使用的开关可以做到这一点,我只是不知道该找什么而且不认识它! 但是如果没有完成,我会交替地想知道为什么不这样做,弄清楚我思考的缺陷在哪里。 虽然看起来不可能。

Yum更新不适用于CentOS 6.2最小安装

注意:这是我在堆栈交换networking上的第一个问题,请给予怜悯,并在需要时提供指导。 我已经安装了一个CentOS 6.2 KVM guest,并且遇到了问题。 这是我第一次与CentOS合作,所以我觉得这是一个设置,我失踪,但找不到使用谷歌。 这是我的步骤; 下载CentOS-6.2-x86_64-minimal.iso,启动,并通过默认的步骤(只有问题问在哪里键盘,时区,根密码和使用整个硬盘) 重新启动,login,ping google.com无济于事 设置以下设置; vi /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4 vi / etc / sysconfig / network-scripts / ifcfg-eth0 DEVICE="eth0" HWADDR="52:54:00:42:1B:4A" #NM_CONTROLLED="yes" BOOTPROTO=none ONBOOT="yes" NETMASK=255.255.255.0 IPADDR=192.168.122.151 TYPE=Ethernet vi / etc / sysconfig / network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=server3.example.com GATEWAY=192.168.122.1 我现在可以ping google.com 平google.com PING google.com (173.194.70.139) 56(84) bytes of data. […]

ELB是否也在AWS中路由出站回复stream量

我一直在试图了解在具有公共/私有子网的AWS VPC中工作路由的方式。 我有一个由亚马逊推荐的设置,公共子网中的ELB和NAT以及私有子网中的networking服务器。 我有安全组(SG)根据http://blogs.aws.amazon.com/security/blog/tag/NAT进行configuration,并且都按预期工作。 大! 我不明白的是如何在上述体系结构中的Web服务器实例返回HTTP答复。 所以一个networking请求通过HTTP从公共互联网进入,80个点击ELB和ELB把它带到networking服务器的私有IP,很酷。 现在networking服务器必须回复。 据我所知,答复将通过不同的更高的TCP端口(1024-65535)。 NAT SG只允许通过端口80和443的出站stream量。那么这个回复如何回到公共互联网。 它不能通过NAT。 这是否意味着通过ELB回复。 亚马逊图不会将ELBstream量方向箭头指示为双向,ELB文档也不会将ELBperformance为有状态的NAT。 可以?

无法使用公共IP地址在同一LAN上的主机上连接natted服务器

我有一个服务器静态NAT'd使用注册的IP地址,它可以从外部访问。 问题是我无法从内部使用与我的服务器连接在同一LAN上的主机注册的IP地址访问我的服务器。 我试图去激活ACL和CBAC,我也试图创build一些路线图,但是我不能使它工作。 我是新来的思科,现在我开始想这可能是一个想要的行为,所以我需要知道是否有可能,但也是一个坏主意,从我的NAT'd服务器上使用公共地址。 谢谢。 PS我没有任何问题连接到服务器使用其私人地址。

NAT作为防火墙

networking地址转换(Network Address Translation,NAT)似乎是对后面主机的防火墙,因为它们不可用。 虽然我永远不会依赖这个作为我的防火墙,但它作为防火墙的失败是什么? 我正在问这个我称之为“学术”的原因。 我知道NAT不会保护人们进入防火墙设备本身,而且更多层次的安全性更好。 我更感兴趣的是如果NAT被用于这个目的,NAT本身如何被利用。 更新,例如: 一个公共IP:10.10.10.10 一个局域网:192.168.1.1/24 如果所有来自局域网的传出通信都具有去往10.10.10.10的传出NAT,并且唯一的其他NAT映射是10.10.10.10端口80映射到192.168.1.100。 如何访问192.168.1.50端口22?