linux – 在不同的子网上正确配置两个eth接口
任何在
Linux和网络方面具有沉重背景的人都可以帮助我吗?我已经在互联网上寻找一个明确的答案,我甚至比较了一个我可以访问的盒子和相同的设置,我无法让我的盒子工作.
基本情况是这样的: =========================== RHEL 6 Linux机箱有两个以太网接口: eth0 = 10.10.5.10/24 eth1 = 10.10.6.10/24 [root@box ~]# netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 10.10.5.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 10.10.6.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 10.10.5.254 0.0.0.0 UG 0 0 0 eth0 ip forwarding已启用且处于活动状态. 问题: 与eth1或10.10.6.x网络位于同一子网的客户端可以ping并telnet到此框上eth1上运行的资源. 但是,任何其他子网上的客户端都不能.所以从我的工作站我可以整天ping和盒子的eth0上的资源,但是没有关于eth1的内容……什么给出了什么? 将此设置与我环境中具有类似性质的另一个盒子进行比较,显示没有明显的差异. 这是一些文件: # cat ifcfg-eth0 DEVICE="eth0" BOOTPROTO="none" HWADDR="Omitted" IPADDR="10.10.5.10" NETMASK="255.255.255.0" NETWORK="10.10.5.0" ONBOOT="yes" TYPE="Ethernet" USERCTL="no" # cat ifcfg-eth1 DEVICE="eth1" BOOTPROTO="none" HWADDR="omitted" IPADDR="10.10.6.10" NETMASK="255.255.255.0" NETWORK="10.10.6.0" ONBOOT="yes" TYPE="Ethernet" USERCTL="no" # cat route-eth0 default via 10.10.5.254 dev eth0 # cat /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=box GATEWAY=10.10.5.254 NOZEROCONF=yes 您将提供的任何帮助将不胜感激! 谢谢. 添加更多信息,但简洁包括: # ip addr 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000 inet 10.10.5.10/24 brd 10.10.5.255 scope global eth0 3: eth1: <BROADCAST,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000 inet 10.10.6.10/24 brd 10.10.6.255 scope global eth1 解决方法
使用您当前显示的设置:
>你有两面: > eth1方面(10.10.6.10接口,10.10.6.0/24 lan) >因此 >在eth1方面: > [必备] 10.10.6.0/24中的任何机器都应该能够与10.10.6.10(以及彼此之间)通信(我假设没有防火墙问题) >在eth0方面: > [必备] 10.10.5.0/24上的任何机器应该看到10.10.5.10(eth0)并且可以与它(以及彼此)通信. 用文字说话会变得复杂…… 什么会有所帮助:告诉我们网络列表()和每个网络的通道. 现在我猜我试着: [everything other machines (even internet,via the exterior internet gateway)] | |(links via switch(s) for 10.x.y.0/24 network,for example. | If you have such an additionnal LAN. | Maybe it's even "the Internet",and therefore not in 10.x anything,| but this is just an example.) | | (10.x.y.z?) | [---------------] (or Internet?)ethZ[some router/box]ethW(10.10.5.254) [---------------] | | |(links via switch(s) for 10.10.5.0/24 network) | [-------] | (10.10.6.10)eth1[yourbox]eth0(10.10.5.10) | [-------] | |(links via switch(s) for 10.10.5.0/24 network) | | [---------------------------] ethx[any machine in 10.10.6.0/24] [---------------------------] 调试设置的一般方法: >假设您是IP数据包:您有源IP,目标IP. > ex1(非常简单):10.10.6.10试图发送到10.10.5.10:step1你在eth1(10.10.6.10).那台机器的路线说“10.10.5.0/24就在这里,在eth0上”. Ipforwarding允许您从eth1跳到eth0.继续eth0. step2:你现在是(相同的IP包)在eth0上.事实证明这是你的目的地:好.步骤2b:回复包:反向源/目的地:你现在是一个数据包(10.10.5.10 – > 10.10.6.10 =):感谢上帝,本地路由告诉你下一跳是在eth1上. step4:没有eth1:你在目的地.好.> ex2(有点长ex :)你是来自“any_machine”,10.10.6.12(在eth1方面)的数据包.你试图达到destinatino谷歌(例如8.8.8.8).所以你是“10.10.6.12 – > 8.8.8.8”,首先你坐在10.10.6.12界面(比方说,eth3). “any_machine”上的本地路由告诉您(因为它是上面的先决条件):“default gw = 10.10.6.10”,所以你跳到“yourbox”,然后到达eth1一侧. step2:你现在正在使用“yourbox / eth1”:现在本地路由告诉你“你需要去默认gw:10.10.5.254,通过eth0”(而“yourbox”上的ipforward允许你从eth1跳到eth0).现在你到达eth0,并按照默认的gw路线,稍后到达ethW的“somerouter”(10.10.5.254).等……(不要忘记检查回路) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |