我相当肯定,这是一个NAT或路由问题,但这是一个不断让我难住。 硬件是Checkpoint Safe @ Office防火墙。 默认的操作模式是有线客户端在192.168.10.xnetworking上,而WiFi客户端在192.168.252.x上,并且彼此被防火墙隔离。 有线端的一台电脑就是一台networking服务器。 为我的商业网站的“开发”子域服务。 它是从外部和内部访问和一切正常工作。 然而,我需要有线和无线networking能够因为其他原因彼此交谈。 去做这个; 您可以将设备设置为“网桥模式”,因此有线和WiFi客户端都将以192.168.10.x的IP地址结束,并且可以自由通信。 不幸的是,以这种方式桥接的事情严重阻碍了networking服务器的性能,使其从networking内部无法使用 – 它在外部仍然很好。 如果我从networking内部ping dev.mydomain.com,它会parsing到我的公共IP地址 – 而我之前的所有尝试(并使用googlesearch)都可以使这个configuration正常工作,这表明因为请求是出站的,所以返回到networking中, “double natting”或类似的东西,导致路由器不确定如何处理它。 有没有办法解决这个问题? 我发现其他人也遇到同样的问题(跨越不同的设备),但还没有看到有效的解决scheme。 Updated 31/03/2013: 我相当确信,第一个回答者是在正确的轨道上使用NAT规则redirectstream量。 起初,我认为硬件没有工作 – 但我已经能够通过成功地将所有出站networkingstream量从一个设备redirect到虚无确认,它按预期工作。 所以现在的问题是 – 什么NAT规则(S)需要发挥作用,以确保stream量属性路由到内部networking? 我试过了最明显的一点: 何时:源是内部networking ,目标是我的公共IP ,服务是Web服务器 那么:不要更改源,将目标更改为我的内部服务器IP,并且不要更改服务。 这不起作用,但我觉得好像应该。 更新#2 我正在使用Microsoftnetworking监视器尝试和观察数据包,看看是否提供了任何见解。 首先,这提出了一个关于NAT转换如何工作的问题 – 因为即使规则已经到位,我也会看到请求发送到dev.mydomain.com,而在数据包内部,目的地仍然是我的公有IP 。 如果翻译实际上是改变目的地,还是应该默默地redirect? 其次,这也证实了这个问题。 如果我在捕获数据包的同时查看真实的网站,则模式看起来与您所期望的相似 – 首先,DNS查找出现并返回,然后发出大量请求(可能与所有标准文件,JS,CSS等等,以及HTML本身),每一个都几乎立即回答与数据包。 如果我看着我的开发。 子域; 这是非常片面的。 有或没有NAT规则,我所看到的是请求消失,并且初始响应回来,然后HTTP GET请求出去,并返回(实际上包含页面的HTML) – […]
我们有一个专用局域网连接到一个带有多个公网IP的防火墙用于SNAT,以避免单个IP上的端口过载。 但是,我们有一个要求,允许某些工作站可以在他们托pipe服务器的预定义端口上进行外部访问。 在下面的例子中,机器A先前已经向B发送了203.0.113.1:7045上可用的资源。 但是,当机器B启动到A的连接时,它可能会收到一个不同于它所期望的源IP(由于SNAT循环)的响应。 我认为这一定是机器B的问题,因为它不能正确地关联数据包来build立连接。 什么是最好的解决scheme? iptables -t NAT -A POSTROUTING -s 10.8.4.0/24 -o eth1 -j SNAT –to-source 203.0.113.1-203.0.113-3 iptables -t NAT -A PREROUTING -i eth1 -m multiport –dports 7045:7059 -j DNAT –to-destination 10.8.4.2
我想使用iptables使CentOS成为端口转发NAT机器。 这是我第一次尝试这个,我想我可能需要一点帮助。 这是我试图实现的configuration。 我试图通过端口5500上的CentOS机器build立一个远程桌面连接,并让CentOS连接到端口3389上的服务器。 192.168.21.11是通过连接到端口5500上的192.168.21.10(CentOS)连接到192.168.9.120上的端口3389的客户端。 CentOS eth0是192.168.9.20/24 CentOS eth1是192.168.21.10/24 我到目前为止所尝试的是: 禁用SELINUX 在/etc/sysctl.conf中启用IPv4转发 /etc/sysctl.conf net.ipv4.ip_forward = 1 运行下面的iptables命令 iptables -t nat -A PREROUTING -p tcp -d 192.168.21.10 –dport 5500 -j DNAT –to 192.168.9.120:3389 iptables -A INPUT -i eth1 -p tcp –dport 5500 -m state –state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp –sport […]
我刚刚configuration了一个Ubuntu服务器作为NAT / PAT路由器,我正在尝试做以下事情: 我为一所将其networking划分成由路由器连接的小型networking的学校工作。 我需要在一个房间的内部networking上创build一个可以转发所有stream量到一个外部IP地址的IP地址。 解释一下,这是configuration: NAT外部:eth1 – 192.168.1.254/24 NAT里面:br0 – 192.168.2.10,伪装启用 我需要创build一个像192.168.2.1这样的地址,对于br0也是如此,它将把所有的stream量转发到ip 192.168.1.1,并且看起来好像这个IP直接连接到networking上,但是不会在它上面启用伪装。 基本思路是将br0的路由器地址设置为192.168.2.10,另外br0有另一个不伪装的地址,并将所有stream量转发到192.168.1.1,即主路由器的地址。 原因是br0是物理networking和VPN之间的一个桥梁,可以通过与目的地NAT IP地址(192.168.1.1)相同的地址从路由器后面访问。 由于我不能保证客户端总是可以发出“路由添加”命令,所以我需要一种方法来规避这种情况。 我发现如何configurationbr0的辅助IP地址,并且我已经将br0:1configuration为192.168.2.1,但我似乎无法将所有通信转发到192.168.1.1。 我事先感谢您的帮助。
如果ALGfunction被禁用(最终禁用H323stream量检测function),您可以NAT H323stream量,还是NATfunction需要这种stream量?
我在主服务器上有3个接口,第一个用于本地networking,第二个和第三个是互联网连接(每个都有自己的IP路由表): eth0 192.168.0.1 eth1 9.9.9.9 eth2 7.7.7.7 本地网主机192.168.0.2上有邮件服务器。 Iptables通过DNAT规则将数据包转换为主机9.9.9.9和7.7.7.7到192.168.0.2:25的25个端口。 还有我的主要服务器,这是由邮件服务器通过使用具体的路由表T1 ip rule add from 192.168.0.2 lookup T1 但是表T1只使用一个默认路由: default via 7.7.7.6 dev eth2 src 7.7.7.7 如果数据包来自我的第一个提供商到接口9.9.9.9,当192.168.0.2发回请求给发送者时,它使用第二个提供者的默认网关,并且发送者不能build立连接。 我能做什么? 我的eth1和eth2是DNS上的mxlogging,他们必须都在工作。
TL; DR我应该使用什么技术将内部地址(192.168.1.10)转换为另一个内部地址(192.168.1.11)? 所以当我访问第一个时,我被redirect到另一个? 长篇故事我有一个pbx框,我需要从一个位置移动到另一个位置。 pbx盒子的ip是192.168.1.160,所有的电话都指向那个地址。 当pbx框被移动时,它将驻留在192.168.2.160处。 由于现在两个不同的子网是通过站点到站点的连接来连接的,这意味着你可以从192.168.1.0/24内访问192.168.2.0/24没有问题。 (这就是为什么我之前提到他们都是内部的) 我的问题是,这一举措将需要一些时间,我将不得不手动configuration所有电话的新位置192.168.2.160。 因此我需要把这个任务分成两部分。 天一/移动服务器,nat(或不是)从地址a到地址b。 第二天/手机一个接一个手动configuration,然后删除natting(或者什么不是) 就我所见,没有人会受此举影响 但是我的问题是:我需要申请一个自然规则吗? 设置: 192.168.2.0/24 – > pfsense – > WAN(站点到站点)<-pfsense < – 192.168.1.0/24
使用Microsoft Server 2012核心: 什么是等效的核心/ Powershell命令来启用和configurationNAT。 我使用以下GUI步骤在服务器上configuration了NAT: 服务器pipe理器,工具,路由和远程访问,右键单击“configuration和启用路由和远程访问” select“networking地址转换(NAT)”单选框, select公共界面。 我发现“Install-RemoteAccess”,但我坚持在ConnectToAddress的提示。 它需要是公开的或什么的,但GUI似乎没有这个要求。 谢谢,凯文 转自http://social.msdn.microsoft.com/Forums/windowsserver/en-US/b1b35cf2-f9bb-4a74-8d6d-73a0044d4799/how-to-configure-and-enable-nat-with-server-core-安装
我试图执行iptables转发规则,以便内部redirect通过特定端口的数据包。 我的机器正在Ubuntu Server 12.04.3下运行,包含UFW和所有最新的更新。 到目前为止,我能够build立一个部分工作的设置,如下所示: iptables -A PREROUTING -t nat -p tcp –dport 40591 -j DNAT –to 192.168.0.100:40591 iptables -A ufw-user-forward -p tcp -d 192.168.0.100 –dport 40591 -j ACCEPT iptables -t nat -A POSTROUTING -j MASQUERADE iptables -A ufw-user-forward -m state –state RELATED,ESTABLISHED -j ACCEPT 如块所示,目标收件人是192.168.0.100和端口40591 。 然而,不久之后就出现了问题,我注意到我的apache2服务正在输出很多错误; 我的PHP脚本不能再通过127.0.0.1连接到我的数据库,因为连接据称是从它的LAN地址(192.168.0.10 )开始的。 为了确认问题的根源,我曾尝试过: 把我的PHP脚本整理一下,但是除了确认我已经知道的东西(即连接在本地启动并魔法偏转到服务器的本地地址( 192.168.0.10 ))之外没有确凿的信息被吐出 使用命令tcpdump […]
3最喜欢的 我在我的服务器设置中有一个奇怪的行为。 看起来像这样 client1 192.168.11.2/24 192.168.11.7/24(br1 / vlan1)服务器192.168.21.1/24(br21 / vlan21)<—> 192.168.21.101/24 client2 在服务器上,我已经将DNAT设置为两个端口到另一个目的地。 〜> sudo iptables -t nat -nL -v链PREROUTING(策略ACCEPT 3631数据包,220K字节)pkts字节目标protselect输出目标 5332 320K DNAT tcp – * * 0.0.0.0/0 192.168.11.7多端口端口5308,21至:192.168.2.19 〜> ip r通过192.168.11.1获得192.168.2.19 192.168.2.19 dev br1 src 192.168.11.7 这从两个客户端工作了一段时间,但在未指定的时间之后,只有来自客户端2的数据包被转发了。 当我尝试从client1连接但是没有NAT时,数据包计数器增加。 有时几个小时后它又开始工作了。 防火墙中没有任何内容被阻塞,因为所有的策略都在接受状态,没有规则设置。 conntrack也不满。 我已经尝试了rp_filter等多个东西,但这应该是没有问题的这些设置。 当我将br1设置为promisc模式时,它开始工作,但我想了解为什么接口不接受没有promisc模式的数据包。 希望有人有一个想法。