Articles of NAT

iptables和DNAT。 快速的问题

所以我有一个单一界面的机器。 它有2个IP地址(eth0:192.168.2.3,eth0:1 192.168.2.4)。 我想采取任何stream量进来192.168.2.4和NAT到外部IP地址。 尽我所能告诉我已经做了一切必要的工作,但它并不是我错过了一些东西。 / proc / sys / net / ipv4 / ip_forward设置为1 我的iptables都设置为默认的ACCEPT,这里是我的DNAT规则: iptables -t nat -A PREROUTING -d 192.168.2.4 -j DNAT – 到目的地192.1.1.2 该机器有一个到192.1.1.2的路由,通过一个可从eth0访问的网关:192.1.1.2 192.168.2.248 255.255.255.0 UG 0 0 0 eth0 DNAT规则似乎实际上没有做任何types的NAT /redirect。 我错过了什么?

kvm,不能从外部主机访问guest

在kvm上的Ubuntu的指南,我有一个testing服务器,并在这个IP地址192.168.0.210(networking掩码255.255.255.0)运行。 虚拟机(与主机ubuntu 11服务器相同)使用dhcp,但具有特定的ip 192.168.122.99。 主机(已经与客户桥接)可以访问客人,但对于其他节点是不可能的! 我已经在主机192.168.0.11上创build了一个新的虚拟IP,并试图将所有请求都发送到192.168.122.99(guest)到这个IP,但是失败了。 我已经按照这个指南: https : //help.ubuntu.com/community/KVM/Networking (段IP别名)。 任何人都可以帮忙 问候,贾科莫

问题NATing服务器专用接口回环(用于MySQL)

我试图将NATstream量发送到服务器的专用接口到环回(因为MySQL bind-address是在127.0.0.1 ,不能改变,但我仍然需要通过专用接口达到它)。 组态 –mysql bind-address = 127.0.0.1 使用sysctl -w net.ipv4.ip_forward=1启用IP转发 -setup iptables如下( eth0是私有接口) -P FORWARD ACCEPT -P OUTPUT ACCEPT -A INPUT -i eth0 -p tcp –dport 3306 -j ACCEPT -A INPUT -i lo –jump ACCEPT -A INPUT –match state –state ESTABLISHED,RELATED –jump ACCEPT -t nat -A PREROUTING -i eth0 -p tcp –port 3306 -j […]

ASA:如何将服务器连接到已分配的外部IP地址?

任何想法如何可以在ASA上完成? 有一个sonicwall的地方,但它只是死了,除了这个ASA,我们没有替代。 24.172.x.132是垃圾邮件filter,我无法更改IP地址。 它需要能够访问局域网中的一台服务器。

在同一台机器上转发端口?

我试图转发一个只能监听一个端口的应用程序的现有端口。 问题是程序和防火墙在同一台计算机上(Windows Server 2008 R2)。 例如,我的应用程序监听端口65000.用户可以从example.com:65000访问它。 但是我想增加用户从example.com:64000访问它的可能性。 服务器将像NAT一样工作,但在同一台机器上,将请求数据包的目标端口从64000更改为65000,并将响应数据包的始发端口从64000更改为65000。 就我所能做的而言,我只是在第一阶段成功地进入了目的地港口。 但服务器对错误地址(取决于我设置的参数,如果我保留了源地址或重写为127.0.0.1)还是错误的源端口响应。 这是与NetworkActif Autapf,但我认为我可以做到这一点与Windows防火墙… 有没有办法做到这一点? (在Windows Server 2008 R2上) 提前致谢。

不同域之间的端口路由

我有一个a.com服务器位于a.com:9254我想路由aycom:80到a.com:9254。 所以,我可以把我所有的服务放在y.com域名下。 我尝试了代理。 但是,在Apache中,它看起来所有请求来自相同的IP。 它失败了我的安全系统。 我无法改变它。 我需要一个完全透明的解决scheme 也许NAT可能是一个解决scheme,但我没有足够的知识.. 非常感谢你。

从环回的iptables DNAT

我想了解使用iptables DNAT与回送地址的限制。 考虑我们有一个应用程序只能连接到127.0.0.1; 使服务器和客户端在不同的节点上工作的明显的解决scheme是使用NAT如下: 确保所有传出的数据包都具有主客户端主机的IP地址: iptables -t nat -A POSTROUTING -o eth0 -j SNAT –to-source <CLIENT_IP> 现在让我们试图欺骗客户和DNAT一个连接到外部世界: iptables -t nat -A OUTPUT -d 127.0.0.1/32 -p tcp -m tcp –dport <SERVICE_PORT> -j DNAT –to-destination <SERVER_IP> 不幸的是,当试图连接到127.0.0.1:<SERVICE_PORT>时,这只是不起作用127.0.0.1:<SERVICE_PORT>程序只挂在connect syscall上。 有意思的是,我看不到任何接口上的任何SYN数据包( tcpdump -qn -i any port <SERVICE_PORT> ),但是我可以看到数据包计数器增加,同时查看iptables统计信息( iptables -nvL -t nat )。 search解决scheme我find了一个内核编译选项CONFIG_IP_NF_NAT_LOCAL ,它在内核2.6.0-2.6.10中使用来解决与本地发起的连接一起使用NAT的问题。 不幸的是,当前的git内核树拥有版本2.6.11和更高版本的信息,所以我在这里死路一条。 进一步看,我已经遇到了这个线程 ,关于一些DNAT在2.6.11环回问题的修复; 其中一个补丁删除CONFIG_IP_NF_NAT_LOCAL构build选项,并无条件地启用代码( […]

VBox,NAT模式下的多个虚拟机没有响应networking请求

我正在学习虚拟化。 我一直在pipe理真正的Linux服务器一段时间,但这是我第一次虚拟化,所以很遗憾,如果我失去了一些东西。 我的设置就像一个小公司模拟:一个防火墙,一个Web服务器和一个客户端(办公室)。 一切都设置正确,所有这些都在NAT模式下工作,根据VirtualBox。 机器A:192.168.1.1(防火墙,网关)&vbox dhcp ip(用于互联网)机器B:192.168.1.2(网关是机器A)机器B:192.168.1.3(网关也是机器A) 同时运行它们,我尝试从C中ping机器B,或者从B中ping机器A,但是它们没有互相通信,这很奇怪,因为它们共享networking掩码,networking和一切。 左边说防火墙已经被禁用,现在我只是没有什么可以作为“保护”,所以它应该是其他types的问题。 任何想法可能会发生什么将不胜感激(也许另一个networking模式将为此工作?)。 谢谢!

NAT,iptables和有问题的端口

我正在用虚拟机构build一个小型办公室networking。 我的模式是这样的: 计算机A :网关,ip 1.1.1.1 ,用于NAT的iptables [eth0 =公网dhcp,dhcp; ETH1 =网关] 计算机B :使用来自计算机A的网关的客户端ip 1.1.1.2 。 NAT正在工作,而计算机B可以使用A的网关访问互联网。 我将一些传入端口从Aredirect到B(例如,如果A接收到端口80的请求,它将自动进入计算机B的Apache)。 问题是我真的不知道如何从计算机A打开/closures计算机B的端口。我知道如何closures一个端口: iptables -A INPUT -p tcp –dport 80 -j DROP 它将拒绝所有到端口80的input(不是输出)连接。但是,这对于主接口eth0是有效的。 举例来说,我试图为计算机B,端口80放入和传出连接: iptables -A FORWARD -i eth1 -o eth0 -p tcp –dport 80 -j DROP iptables -A FORWARD -i eth0 -o eth1 -p tcp –dport 80 -j DROP 但它不起作用。 […]

特殊路由和NAT要求

我有一个相当特殊的路由和NAT问题,我希望我能以某种方式解决。 在我们公司内部,我们运行一个像192.168.0.0/21(192.168.0.1 – 192.168.7.254)这样的超级networking。所有的计算机都有这个子网掩码,而不需要路由到这个网段内的任何其他计算机。 对于一些客户,我们在他们和我们的防火墙之间build立了一些IPSec隧道。 此外,某些客户仅接受来自我的专用networking内某些源IP的通过隧道的stream量。 和客户A一样,如果源位于192.168.1.1-192.168.1.10之间,它只接受到他服务器的stream量(我们必须达到例如RDP,SAPGUI等)。 另一个只接受源192.168.3.0/24等等。 到目前为止,我通过将负责范围内的IP分配给特定的客户端PC来处理这个问题。 但现在这变得非常麻烦,而且在同一天内也会变化。 用户需要在上午9点连接到客户A,并在上午11点连接到客户B. 为了更灵活,我想通过在我的局域网内部设置一些路由器来集中这一点,我告诉客户A的stream量应该通过具有所需范围的IP的接口A. 而且NATstream量为了隐藏真实的客户端源IP。 这样我就可以设置一些特定的路由来确认目的地是否通过这个路由器。 我将根据需要消除总是切换客户端源IP的需要。 但是我害怕我不能做这个工作,因为我的路由将从同一个networking重新进入同一个networking。 这不是从我的LAN到客户端局域网,这是通过后来在我的防火墙IPSec完成的,但我只需要隐藏客户端IP,如192.169.2.1/21声称是192.168.1.2/21 有任何想法吗? 我想到的Windows RRAS服务器,但这是很好的路由从一个部分到另一个。 但是在同一个networking里只需要切换IP就可以了。