Articles of 路由

解决一个不对称的高可用性防火墙/路由器

我有一个旧的Linux HA防火墙/路由器设置,从来没有工作。 由于从来没有投入到真正的生产(只是testing和演示),我总是必须有一个防火墙closures,使其路由。 现在我们正在计划将其投入生产,我需要做这个工作。 所以我想要做的就是在HA故障切换模式下,使其最终正常工作。 我有两台Linux服务器作为防火墙/路由器。 它们分别直接馈入10G光纤和点对点/ 30networking。 他们运行BGP。 而他们路由LAN端的Infiniband这就解释了为什么我不使用普通路由器,而是使用服务器来达到这个目的。 这些10G安装时,我相信被称为多供应商或相似,但就我而言,他们来自同一个提供商,他们有很多上游的HA。 看看那里的每一个HA设置,公共和私人都有一个浮动的IP。 我认为这是为了确保在使用conntrackd时可以正确地将stream量复制到备份机器。 通常,keepalived在Linux上用于在连接的WAN和LAN侧提供浮动IP。 像这样的东西: 而不是详细解释旧的设置,没有工作。 我要求提供一些关于如何使这项工作正确的指针,因为我没有公开的10G端的开关。 不过我在两台路由器之间直接连接eth2。 另一个通过交换机连接在一起的eth3链路。 我想我想要尝试和避免的是不对称的路由,stream量进入一台服务器,然后走出去。 理想情况下,它会进入活动服务器。 所提到的networking范围是由BGP提供的,是/ 25。 我想知道我是否能用Linux来完成类似下面的事情: https://networkengineering.stackexchange.com/questions/5183/vrfs-to-address-asymmetric-routing-with-stateful-inspection 我可以使用eth2networking作为一种交换机,如果一个数据包进入了备份服务器,它可以通过eth2,然后从主机到局域网进入另一台服务器? 这会工作吗? 我一直在想的另一件事情是局域网上有两个默认路由,忘记浮动IP。 但是我认为这可能是有问题的吗? 我将如何确保每个服务器1个会话。 我无法弄清楚Linux中的策略路由。 顺便说一下:我的防火墙后面没有windows服务器。 它只会提供Linux服务器。 事实上,马克提醒我,我确实早就求助了,但在回应时我不想做任何事情。大家都忙着忘了。 我find了电子邮件。 答复是: 你好,对不起,迟到的答复。 大多数情况下,您将能够使用HA,同时有两个防火墙同时工作,但在这里是不可能的。 我在这里要做的是使用路线图将交通引导到一侧。 在路由器上,您不需要stream量,您可以预先input您发送给我们的路由。 这使得这个设备的path更长,所以我们的路由器走另一条path。 route-map Net:Out set as-path prepend 65007 65007 router bgp 65007 neighbor <Net IP> route-map […]

伸出DHCP中继主机

我有一个主服务器(DHCP)和一个辅助(DHCP-RELAY)。 大多数的主机是从主(无线)服务,但是有一些(有线的)从次要的IP。 二级中继所有DHCPstream量到主要,主要产生IP address ,将其发送回到次要,然后IP被提供给主机。 isc-dhcp-[relay|server] : __________ ___________ ___________ | DHCP |<—-rel.req—-| DHCP-RELAY|<=====ip.req====| Host | |172.16.1.1|-{172.16.1.50}->|172.16.1.12|={172.16.1.50}=>|172.16.1.50| ¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯ DHCP服务器 : # ip route | grep 172 172.16.1.0/24 dev wlan5 proto kernel scope link src 172.16.1.1 172.16.1.50 via 172.16.1.12 dev wlan5 DHCP-RELAY : # ip addr | grep inet | grep 172 inet 172.16.1.254/24 […]

如何通过基于OS X中的TCP端口的两个不同的networking适配器来分割stream量

我有一个场景,我们将使用Mac将video内容stream式传输到RTMP服务器。 此RMTP服务提供2个摄取URL,以便您可以两次上传相同的video内容,并在连接出现问题时提供冗余。 但是,两个RTMP摄取URL是相同的,唯一的区别是它们的TCP端口号,例如: { "rtmp1": "rtmp://xxx.xxx.com:1935/id1", "rtmp2": "rtmp://xxx.xxx.com:1936/id1" } 我想要做的是以下几点: Mac上有两个networking接口(每个使用不同的networking提供商,以实现冗余)。 让OS X使用其中一个networking接口将内容stream式传输到第一个URL,然后使用第二个networking接口stream式传输到第二个URL 我不知道如何通过OS X中的不同networking接口将stream量分stream到同一个主机(但是不同的端口)。我已经find了这些链接( 这里和这里 ),但他们解决了不同的问题。 有谁知道如何在OS X中使用iptables,nat,主机或任何服务组合来实现我正在寻找的这个分割? UPDATE 经过一番研究,我相信这应该可以用PF来实现。 我已经创build了下面的规则集,并使用此规则加载了pf。 但是,所有stream量都被阻塞,应该允许出站和正确路由的实际rtmpstream量也被阻止。 似乎我有一个语法问题,让PF与我configuration的规则匹配的RTMPstream量: ext_if1 = "en0" ext_if1_gwt = "192.168.1.1" ext_if2 = "en5" ext_if2_gwt = "192.168.1.1" rtmp_ip = "104.46.55.96" rtmp_port1 = "1935" rtmp_port2 = "1936" pass in on $ext-if1 route-to ($ext_if1 $ext_if1_gwt) proto tcp from […]

局域网和VPN的奇怪路由问题

我遇到traceroute一些奇怪的问题。 我之前看到过这种情况,但从来没有在我的本地networking上。 当我运行跟踪路由到一个主机,在我的局域网上一跳,这是结果.. 30跳什么都没有。 这也是我是否连接到我的VPN服务器。 traceroute to 192.168.154.115 (192.168.154.125), 30 hops max, 60 byte packets 1 * * * 2 * * * 3 * * * —etc… 24 * * * 25 * * * 26 * * * 27 * * * 28 * * * 29 * * * 30 * * […]

当接口#变化时如何为VPN添加永久路由?

在Windows中,我可以使用我的VPN连接的接口号为IP添加持久路由。 但是,当我以后重新连接到VPN时,接口号码会发生变化,这意味着我之前添加的路由不再起作用。 所以每次连接到VPN时,我都必须重新添加路由,使用VPN的当前接口号。 例如,VPN的路由号码可能是0x300003,那么当我断开并重新连接时,路由号码变成0x320003,以此类推。 有没有办法增加一个持久的路由到适用于一定范围的接口号码的表? 或者其他一些不这样做的方式,每次我连接到VPN,不得不手动find正确的接口#并重新添加路由?

Linux设备路由没有广播

我有以下设置: networking名称空间ns1 一对虚拟接口, ns_ext1和ns_int1 。 ns_ext存在于全局名称空间中, ns_int1存在于ns1 。 一个GRE设备, gre1 ,存在于ns1 。 这些设备都没有分配IP地址。 ns1的路由表如下 10.0.2.0/24 -> gre1 0.0.0.0/0 -> ns_int1 全局命名空间中的路由表包括: 10.0.2.0/24 -> ns_ext1 当我尝试从全局命名空间(即GRE隧道另一端存在的IP地址)ping通10.0.2.1 ,出现奇怪的现象。 stream量被转发到ns_ext1 。 但是,在ns1 , ns_int1不会将此stream量转发到gre1 ,正如路由表所示。 相反,它是10.0.2.1 10.0.2.1 。 我的怀疑是,通过将设备ns_ext指定为全局路由表中的10.0.2.0/24子网的下一跳,我已经让内核认为该子网直接连接到ns_ext1 。 有什么办法可以让它通过这个接口而不是ARP'ing?

OpenVPN访问服务器:远程子网无法访​​问客户端的资源

我有AWS上运行的OpenVPN访问服务器。 这里是configuration: 172.18.16.0/20 客户端(172.18.16.101)—– OpenVPN服务器(172.16.0.0/20) | | | | 私有子网(172.16.16.0/20) 客户端可以连接到OpenVPN服务器。 OpenVPN服务器可以ping和访问客户端和私有子网上的资源。 客户端也可以访问OpenVPN服务器上的所有资源以及私有子网。 另外,OpenVPN服务器也可以访问客户端上的资源。 但是,专用子网上的框似乎无法ping或访问客户端上的资源。 OpenVPN服务器networkingconfiguration: as0t0链接封装:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:172.18.0.1 PtP:172.18.0.1掩码:255.255.248.0 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500公制:1 RX数据包:18个错误:0丢弃:0超出:0帧:0 TX包:18个错误:0丢弃:0超限:0载波:0 碰撞:0 txqueuelen:200 RX字节:1223(1.2 KB)TX字节:968(968.0 B) as0t1链接封装:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:172.18.8.1 PtP:172.18.8.1掩码:255.255.248.0 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500公制:1 RX包:0个错误:0个丢弃:0个超限:0个帧:0个 TX数据包:0错误:0丢弃:0超载:0载波:0 碰撞:0 txqueuelen:200 RX字节:0(0.0 B)TX字节:0(0.0 B) eth0 […]

在Mikrotik路由器上loggingNAT映射

我正在寻找关于如何configurationMikrotik路由器loginNAT会话设置和理想的拆卸的build议。 但是,只有设置足以满足我的迫切需求。 我发现了一种方法来logging所有的数据包,我可能会减less这只loggingTCP SYN,FIN和RST数据包,但我还没有find该方法。 这不包括UDP,我也想跟踪。 对于UDP,如果会话超时并再次作为新会话再次出现,那就好了。

转发stream量到VPNnetworking

我有一台运行在Ubuntu 14.04上的云服务器,它连接着一个IPsec隧道。 服务器有一个真实的接口,公网IP xxxx和虚拟接口172.16.100.1所有到远程networking的stream量都应该通过IP 172.16.100.1的虚拟接口路由。所以我build立了一个路由条目。 这适用于在该服务器上生成的所有通信。 route add -net 172.17.1.2/21 gw 172.16.100.1 dev eth0:1 但另一个要求是,如果云服务器接收到具有特定端口的公共IP上的stream量,则该stream量也应该被转发到远程networking。 我试图通过添加一个IP表条目: iptables -t nat -A PREROUTING -p tcp –dport 45678 -j DNAT –to-destination 172.17.1.2:29871 但问题是,它以某种方式忽略了路由configuration,只是转发请求与其源IP,而不是使用172.16.xx 那configuration是正确的方法,还是我完全错了? 还有什么我必须configuration转发正确的stream量?

Ubuntu 12.04 – 以太网和键/桥之间的路由问题

我有一个有3个以太网设备和一个WiFi设备的设备。 我使用eth0作为内部networking(192.168.1.0/24),eth1,eth2和wlan0连接到外部networking(192.168.0.0/24)。 eth1和eth2在网桥中configurationbr0,br0和wlan0configuration为绑定(主动备份,br0为主设备)。 这是一个可视化的设置: +—————+ +———–+ 192.168.0.3 | | | (Router) | | +—————+ +———+——–+ +—————+ +->+ External Network +–+ 192.168.0.160 | | | 192.168.0.0/24 | +—————+ | +——————+ | +—————————————————————-+ | My Device | | +——————+ | +——+ +–+—+ +——+ +——-+ | | Internal Network +——-+ eth0 +——+ | eth1 | | eth2 | […]