我有以下configuration: vlan123@eth0 – range 1.2.3.0/24, with 1.2.3.4 assigned to it br2000 – range 10.2.3.0/24 在ip route我看到: 10.2.3.0/24 dev br2000 proto kernel scope link src 10.2.3.1 在iptables中,我重写传入数据包的目的地(表nat ): -A PREROUTING -d 1.2.3.4/32 -j DNAT –to-destination 10.2.3.4 如果我现在尝试ping地址1.2.3.4 ,我不希望转发,我不幸的是, ip route get 10.2.3.4 from 2.3.4.5 iif vlan123返回: RTNETLINK answers: Invalid cross-device link 这似乎证实,正确的路由不在那里。 可能是什么问题呢? IP转发在sysctl中启用,我也禁用了rp_filter进行testing。
我有3个接口。 我将用10.xxx eth0replacepublic ips: ips: 10.1.1.64-10.1.1.70 mask: 255.255.255.0 gateway: 10.1.1.1 ip route table: gw1a eth1的: ip: 10.1.1.71 mask: 255.255.255.0 gateway: 10.1.1.1 ip route table: gw1b ETH2 ip: 10.2.2.135 mask:255.255.255.192 gateway: 10.2.2.129 ip route table: gw2 eth3 – 将在极less数情况下使用。 大部分时间下来。 用来设置他人 ip: 192.168.51.69 netmask: 255.255.255.0 gateway: 192.168.51.254 ip route table: office 当我设置服务器时,我从192.168.51.50连接。 我已经做了下面的脚本来build立路线。 我需要数据包使用他们的接口从外面出去。 主表中的默认网关当前是192.168.51.254。 我稍后会将其更改为eth0的网关。 […]
我有两个有问题的Linux服务器。 当一个服务器发起对另一个服务器具有的特定IP地址的请求时,我希望发起服务器将请求路由回自己的IP地址。 这可怎么办? iptables的? iproute2的? 我对这两个人都是新手,并且对他们的select有点困惑。 如果任何一个人都可以这样做,我很乐意看到每个例子,所以我可以学习一点额外!
为了理解PAT,我已经设置了下面的设置,我有一个从内部接口masquerades外部的Linux路由器 。 因此,这两个客户端都能够与在Linux路由器PC中发生IP转换的外部服务器通话。 +—————+ | client 1 | | src port 4567 |–+ +—————+ | +——–+ +————–+ +-| Linux |—–| Server listen| +-| Router | | on port 9584 | +—————+ | +——–+ +————–+ | client 2 | | | src port 4567 |–+ +—————+ 我使用客户机1和客户机2的 nc给服务器PC做了一个简单的回声调用,注意到数据包的源端口实际上是4567 。 当我用两个客户端的相同src端口号运行nc时,一个连接导致另一个连接断开! (客户端是不同的计算机btw)所以我有iproute隐藏端口号的假设,并做一些翻译很像IP映射。 这个问题是否可以解决?
编辑:我已经编辑的问题和标题带来更多的清晰度,希望有人能够指出我在正确的方向。 ************************* * Internet Modem/Router * * 192.168.1.1 * ************************* * * * 192.168.1.2(eth0) ************************* * Linux Firewall * ************************* * 192.168.2.1(eth1) , 192.168.3.1(eth1:0) <— (Virtual Interface) * * * ************************* *********** * Switch * * * * * Router ********** 192.168.0.x network. ************************* *********** * * 10.0.0.200 * * * * * * * […]
我需要通过VPN服务器路由到Internet上的某些主机。 组态: 电脑:ubuntu-12.04 eth0 – xxxx / 24 tun0 – inet addr:10.8.0.6 PtP:10.8.0.5掩码:255.255.255.255 有OpenVPN服务器(亚马逊): Ubuntu的12.04 eth0 – yyyy / 24 tun0 – inet addr:10.8.0.1 PtP:10.8.0.2掩码:255.255.255.255 互联网上有主机:qqqq 我想stream量到qqqq去扔OpenVPN服务器。 为此我做: iptables的: 我在表格中标记数据包: sudo iptables -t mangle -A OUTPUT -d qqqq -j MARK –set-mark 2 我发送stream量到qqqq扔tun0: sudo iptables -t nat -A POSTROUTING -d qqqq -j SNAT –to-source 10.8.0.6 […]
我已经包含了一个绘图,所以你知道它是如何工作的。 (红色= LDAP连接,蓝色= HTTP / AJP在后端) 问题:我们希望将客户应用程序服务器连接到客户的LDAP(或者让他们这样做)。 现在,如果我们用应用程序服务器的公共接口来做到这一点,那么我们希望随着时间的推移禁用这个接口。 我们希望将所有需要的stream量路由到代理,并将数据包传送到目的地。 现在这也将用于其他服务,但主要的是LDAP(如果我们有LDAP的话,configuration额外的服务并不那么困难)。 我们不想redirect所有的stream量,因为我们仍然需要stream量来到我们的后端服务(数据库等)。 解决scheme将是: 从应用程序服务器启动LDAP请求。 将所有LDAP请求+stream量从应用程序服务器发送到eth1到代理eth1 将所有来自eth1的LDAP通信redirect到eth0(代理),以便能够访问Internet。 我想知道如何用IPTABLES以最安全和可扩展的方式来解决这个问题(使之自动化)。 所以我正在寻找最好的IPTABLES解决scheme来实现我们的应用服务器和代理 编辑: 使用2个stream浪箱进行testing: 主机0 =应用程序服务器主机1 =代理 仍然与此结合。 但是我越来越近了。 我的所有LDAPstream量正在发送到代理服务器,但我只是得到[S]和[S.]回来,没有连接。 这是我做的。 应用服务器: iptables -t mangle -A OUTPUT -p tcp –dport 389 -j MARK –set-mark 0x1 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE $echo 1 LDAP >> /etc/iproute2/rt_tables $ip […]
我最近有这个问题。 iproute2工具不能添加一个ipv6地址 /sbin/ip -6 addr add 2001:0db8:0:f101::1/64 dev eth0 RTNETLINK answers: Invalid argument 该ip只是从我在网上find的例子复制 在一个fedora(20)机器工作障碍,但在这centos6似乎没有工作 cat /proc/sys/net/ipv6/conf/default/disable_ipv6 0 cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0 我需要一个模块吗? 我也试过用ifconfig,结果是一样的
我有一个小问题。 在我的设置(Linux,内核3.10.17),我有一个以太网端口和多个WWAN接口; 每个WWAN都有自己的VPN已经激活。 VPN通过OpenVPN连接到同一台服务器。 现在我有这四个VPN(我select使用tun界面,但如果你认为点击更好,我可以改变)。 让我们叫他们tun1 .. tun4 。 现在,我希望从以太网端口进入的所有stream量都通过VPN,因此我添加了一个表(第ta 55 ),并将从以太网传入的所有stream量redirect到它: ip rule add iif eth0 table 55 现在我想将stream量路由到vpn。 现在,如果我写 ip ro add ta 55 default nexthop dev tun1 weight 256 所以桌子变成这样: root@mypc:~# ip ro sh ta 55 default dev tun1 那么一切正常。 如果我改变它到另一个VPN它仍然工作,所以VPNs工作。 另一方面,如果我尝试使用该命令启用到所有vpn的路由 ip ro add ta 55 default scope global nexthop dev […]
我有两个上游提供商的多宿主设置。 我想限制一些连接只使用一个提供者 – 本地传出连接。 所以,我做了一个自定义的路由表,它具有直接连接的networking路由和默认路由: $ ip route show table 2 default via 5.1.0.1 dev upstream_b 5.1.0.0/16 dev upstream_b scope link src 5.1.0.2 接下来,我在iptables中使用select器来添加fwmark到一些连接和ip-rule来覆盖路由表select: # for output traffic # restore packet mark from connection mark iptables –table mangle –append OUTPUT -j CONNMARK –restore-mark # for !0 packet marks bail out iptables –table mangle –append OUTPUT […]