我需要设置以下网络架构:
Internet
^
+-----------------+ | +------------------+
| Centos6-1 | | | Centos6-2 |
| +---- eth0 + ----+ | |
| (br0)| | | |
| +---- eth1 +----------------+ eth0 |
+-----------------+ +------------------+
( cable connection )
两个公网 IP 配置如下:
- eth0和eth1**Centos6-1 将配置为 IP1 的网桥
- Centos6-1可以通过 IP1 访问
- eth0的Centos6-2配置了IP2
- 任何发往 IP2 的请求都将流经Centos6-1
我怎样才能完成这一壮举?
第二台服务器正在运行一项服务。该服务将绑定到 IP2。会发生什么情况
编辑:
如果我在box1中执行以下操作:
brctl addbr br0
ifdown eth0
ifdown eth1
ifconfig eth0 0.0.0.0 up
ifconfig eth1 0.0.0.0 up
ifconfig br0 IP1 ****
它会满足我的要求吗?
答案1
根据这个博客,你可以在 CentOS 下按照以下方式设置网桥:
您必须添加/etc/sysconfig/network-scripts/ifcfg-br0
:
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
DNS1=192.168.0.1
GATEWAY=192.168.0.1
IPADDR=192.168.0.100
NETMASK=255.255.255.0
ONBOOT=yes
SEARCH=”example.com”
并且在ifcfg-eth0
:
DEVICE=eth0
HWADDR=00:1e:90:f3:f0:02
ONBOOT=yes
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
BRIDGE=br0
ifcfg-eth1 将类似。
HWADDR 您必须拥有 eth0 和 eth1 的 MAC 地址...
在两台服务器之间你必须有交叉以太网电缆...
答案2
这不是桥接,你想要的是简单的 NAT 转发。
iptables -t nat -A PREROUTING -i eth0 -d IP2 --to-destination internal_IP2 -j DNAT
并让盒子使用私有的 internal_IP 对 (internal_IP1, internal_IP2) 进行通信