内网通过转发外网上网
A服务器有两块网卡,一块接外网一块接内网,其他内网服务器通过这台服务器访问外网的实现,此作为网关服务器
1.A服务器配置两块网卡,
eth0网卡:
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
USERCTL=no
PEERDNS=yes
IPV6INIT=no
eth1网卡:
cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.12.32
HWADDR=00:0c:29:05:6d:94
NETMASK=255.255.255.0
USERCTL=no
PEERDNS=yes
IPV6INIT=no
注:一定不需要设置网关
重启网卡
2.其他内网的服务器的配置:
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.12.222
HWADDR=00:0c:29:73:d4:82
NETMASK=255.255.255.0
USERCTL=no
PEERDNS=yes
IPV6INIT=no
GATEWAY=192.168.12.32 #此处一定是网关服务器的内网ip地址
DNS1=8.8.8.8
DNS2=8.8.4.4
重启网卡
3.在网关(A)服务器上进行iptables转发
分为两种情况:
一、适合于固定外网地址:
iptables -t nat -A POSTROUTING -s 192.168.12.0/24 -o eth0 -j SNAT --to-source 192.168.1.224
二、适合变化的外网地址:
iptables -t nat -A POSTROUTING -s 192.168.12.0/24 -o eth0 -j MASQUERADE(伪装)
伪装的意思是选择最合适的。
把外部ip地址及端口映射到内部服务器地址及端口