我有两个用户,alpha(uid 500)和beta(uid 501),以及两个分配为eth0和eth0:1的IP地址。 我希望所有由用户alpha启动的进程发出的数据包都标记为eth0的源IP地址,而来自用户beta进程的所有数据包都将标记为eth0:1的源IP地址。 从search这个论坛和其他地方的可用答案,我发现我应该这样做: # mark packets with 11 or 12 depending which user they came from: iptables -A OUTPUT -m owner –uid-owner 500 -j MARK –set-mark 11 iptables -A OUTPUT -m owner –uid-owner 501 -j MARK –set-mark 12 # now, for a packet having mark 11 (or 12), set source IP to 192.168.1.1 […]
我有一个ipsec隧道工作,可以访问192.168.4.0/24局域网。 它工作正常,我可以访问没有问题的另一边的主机: # from fw and lan hosts: # ping 192.168.4.44 PING 192.168.4.44 (192.168.4.44) 56(84) bytes of data. 64 bytes from 192.168.4.44: icmp_req=1 ttl=127 time=4.41 ms 但是当我尝试将公共IP地址上的一个端口转发到另一端的主机时,它不会路由stream量: # from wan side: # telnet xxxx 33901 telnet: Unable to connect to remote host: No route to host 在防火墙上执行telnet(wan)的tcpdump捕获: # tcpdump -n -i eth0.20 host 37.15.173.52 10:09:48.312840 […]
我试图让我的路由工作在3个nics和3个子网的RHEL 7上。 我有以下几点 DEVICE=eth0 BOOTPROTO=sttic ONBOOT=yes TYPE=Ethernet USERCTL=yes PEERDNS=yes IPADDR=10.241.78.5 NETMASK=255.255.254.0 IPV6INIT=no DEVICE=eth1 BOOTPROTO=static IPADDR=10.241.74.5 NETMASK=255.255.254.0 ONBOOT=yes TYPE=Ethernet USERCTL=yes PEERDNS=yes IPV6INIT=no DEVICE=eth2 BOOTPROTO=static IPADDR=10.241.76.5 NETMASK=255.255.254.0 ONBOOT=yes TYPE=Ethernet USERCTL=yes PEERDNS=yes IPV6INIT=no ip route show 10.241.74.0/23 dev eth1 proto kernel scope link src 10.241.74.5 10.241.78.0/23 dev eth0 proto kernel scope link src 10.241.78.5 10.241.76.0/23 dev eth2 proto […]
我的问题似乎很简单,但我不能把我的头围绕。 我的设置是这样的: 运行RHEL 6.4的服务器 它有两个networking接口: ib0:infinibandnetworking(请不要问为什么:) 192.168.1.0/24,大部分的服务器都在这里。 IP:192.168.1.51 eth0:以太网networking192.168.3.0/24,最终用户在这里(和几个服务器)。 IP:192.168.3.51。 该服务器充当服务器和用户之间的网关。 它有一个标准的IP转发function: net.ipv4.ip_forward = 1 …没有别的。 它工作得很好,在这里没有抱怨。 所以现在我需要做以下工作:来自192.168.3.0networking的用户和来自192.168.1.0networking的服务器都需要访问外部networking1.0.0.0/16。 这个networking由另一个部门pipe理 – 他们已经部署了一个路由器,为我提供了一个物理链路。 他们的路由器有一个IP 192.168.3.250。 所以,我在我的网关服务器上设置了一个静态路由: ip route add 1.0.0.0/16 via 192.168.3.250 …和我的最终用户从192.168.3.0networking能够访问1.0.0.0。 但是,来自192.168.1.0networking的服务器无法访问它。 一般来说,我并不擅长路由和networking,所以我怀疑我应该为192.168.1.0networking(?)启用NAT,但是当我正在阅读iptables手册时,我的头开始变得非常糟糕。另外,问题是,这个服务器应该继续充当infiniband和以太网之间的网关,最好是尽可能less的开销。 所以问题是:我该怎么做?
我在家里用dynamicIP运行我自己的邮件服务器。 dynamicIP经常被列入黑名单,所以我现在通过提供商的中继发送邮件。 我想改变这个直接发送邮件,为此目的有一个虚拟服务器在某个固定的IP地方。 虚拟服务器通过openvpn连接到我的本地服务器。 我想使用openvpn隧道将(只)发送邮件路由到“世界”。 所有其他交通将采取正常路线。 虚拟服务器(eth0上的公共IP)运行openvpn服务器IP 10.20.0.1。 邮件服务器(本地IP 192.168.168.100)运行openvpn客户端IP 10.20.0.6。 邮件服务器IP路由与openvpnbuild立: # route default 192.168.168.1 0.0.0.0 UG 0 0 0 eth0 10.20.0.1 10.9.0.5 255.255.255.255 UGH 0 0 0 tun1 10.20.0.5 * 255.255.255.255 UH 0 0 0 tun1 192.168.168.0 * 255.255.255.0 U 0 0 0 eth0 从我的研究中,我明白,正确的做法应该是标记传出邮件数据包并将其路由到虚拟服务器。 所以我试图在邮件服务器上: echo 201 mail.out >>/etc/iproute2/rt_tables ip rule add […]
我想创build我的虚拟机的桥梁。 而且我想通过我的虚拟桥接进入互联网。 我做了什么: DEVICE=br1 TYPE=Bridge ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.1 NETMASK=255.255.255.0 我在我的networking(通过dhcp)桥接,与eth0链接: br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.110.14 netmask 255.255.255.0 broadcast 192.168.110.255 BR0: DEVICE=br0 TYPE=Bridge ONBOOT=yes BOOTPROTO=dhcp 为eth0: TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes PEERDNS=yes PEERROUTES=yes NAME=eth0 DEVICE=eth0 ONBOOT=yes BRIDGE=br0 iptables命令: iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT –to-source 192.168.110.14 但它不工作。 ping -I br1 8.8.8.8 PING 8.8.8.8 (8.8.8.8) […]
我可以在我的路由器和电缆调制解调器之间放置一个集线器/非L3交换机来利用其他IP吗? 我有兴趣使用其中一个IP进行直接访问。 谢谢
我有一个Ubuntu 16.04服务器运行多个以太网卡都连接到互联网与不同的IP地址。 我想configuration特定的用户使用特定的卡,以便他们将有不同的IP公开。 我怎么设置呢? 我能find的最接近的是做SourceBasedRouting,但我不知道我是否在正确的轨道上。
我有几个Linux的盒子,每个2x网卡连接到同一个networking10.0.0.0/8但每个都有一个其他的网关。 我希望能够使用NIC和IP进行通信,所以如果应用程序X绑定到IP .187,那么应该使用eth0。 如果应用程序Y绑定到IP .189,则应使用eth1。 现在只有.187正在回应请求。 (如果我将默认路由更改为eth1 .189,则出站stream量正确使用eth1) 特定 Box 1: eth0 = 10.5.68.187/31 eth0_gw = 10.5.68.186/31 eth1 = 10.5.68.189/31 eth1_gw = 10.5.68.188/31 途径 基于我的研究, 在这里 ,我在这里创build了一个bash脚本,它应该添加路由,所以可以通过两个nics进行通信。 #/bin/bash # My Vars with IP and GW for eth0 eth0_ip=$(ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) eth0_gw=$(ip route list dev […]
编辑1/3/10 22:00格林尼治标准时间 – 重写了一些后,进一步调查 我看了IPtables已经有一段时间了,我似乎比以前更糟,因为我似乎无法让我的networking服务器在线。 以下是我在运行访问networking的DHCP服务器的网关服务器上的防火墙规则。 networking服务器位于我的networking中的静态IP(192.168.0.98,默认端口)。 当我使用Nmap或GRC.com时,我看到端口80在网关服务器上是打开的,但是当我浏览到它时(通过公共URL http://www.houseofhawkins.com ),它总是失败并且出现连接错误。 nmap无法连接并找出Web服务器是什么)。 我可以映射networking服务器,并通过我的networking内的相同的IP浏览到它。 我相信这是我的IPTable规则,不让它通过。 在内部,我可以路由所有的请求。 每台机器都可以浏览到该网站,交通运作良好。 我可以MSTSC / ssh内部所有的networking服务器,他们可以连接到networking。 IPTABLE: **编辑 – 增加了新的防火墙规则2/3/10 ** #!/bin/sh iptables="/sbin/iptables" modprobe="/sbin/modprobe" depmod="/sbin/depmod" EXTIF="eth2" INTIF="eth1" load () { $depmod -a $modprobe ip_tables $modprobe ip_conntrack $modprobe ip_conntrack_ftp $modprobe ip_conntrack_irc $modprobe iptable_nat $modprobe ip_nat_ftp echo "enable forwarding.." echo "1" > /proc/sys/net/ipv4/ip_forward echo "enable […]