优化内核
echo 'net.ipv4.ip_forward = 1' >>/etc/sysctl.conf
echo 'net.ipv4.tcp_tw_recycle=1' >>/etc/sysctl.conf
echo 'net.ipv4.tcp_tw_reuse=1' >>/etc/sysctl.conf
ifdown eth0/1关闭网卡,
ifup eth0/1 开启网卡
1.指定外网服务器:
管理机m01 外网ip eth0 10.0.0.61 内网 eth1 172.16.1.61
2.内网服务器:
nfs01共享存储服务器 内网 eth1 172.16.1.31
backup备份服务器 内网 eth1 172.16.1.41
数据库db01/db02数据库 内网 eth1 172.16.1.51/52
2.在可以上网的服务器上执行此命令(m01)
iptables -t nat -A POSTROUTING -o eth0 -s 172.16.1.0/24 -j SNAT --to 10.0.0.61
-s 172.16.1.0/24
#172.16.1.0/24网段都通过10.0.0.61上外网
#-s 172.16.1.41 指定单个单个ip上外网
--to 10.0.0.61
#指定上外网的服务器ip
2.查看防火墙规则
iptables -L -n -t nat
[root@m01 /etc/ansible]# iptables -L -n -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- 10.8.0.0/24 !10.8.0.0/24 to:10.0.0.61
SNAT all -- 172.16.1.0/24 0.0.0.0/0 to:10.0.0.61
3.在内网服务器上添加路由条目
指定上外网的服务器的内网ip
backu服务器:
[root@backup ~]# route add default gw 172.16.1.61
[root@backup ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.1.61 255.255.255.0 UG 0 0 0 eth1
...
nfs01服务器:
[root@nfs01 ~]# route add default gw 172.16.1.61
[root@nfs01 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.1.61 255.255.255.0 UG 0 0 0 eth1
db01数据库:
[root@db01 ~]# route add default gw 172.16.1.61
[root@db01 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.1.61 255.255.255.0 UG 0 0 0 eth1
4.如果环境中有外网网卡,现在将它关闭掉
ifdown eth0 #外网网卡
5.添加开机自启动
第一种方法:给内网服务器的/etc/rc.d/rc.local添加执行权限并将route条目加入开机自启
#每一台内网服务器都添加执行权限
chmod +x /etc/rc.d/rc.local
#每一台内网服务器追路由条目到自启动
echo "/sbin/route add default gw 172.16.1.61" /etc/rc.d/rc.local
第二种方法:为内网网卡配置文件中添加网关
看清内网网卡是eth0还是eth1
echo 'GATEWAY=172.16.1.61' >>/etc/sysconfig/network-scripts/ifcfg-eth1
5.xshell远程是连接不上的,我们可以用管理机通过ssh协议连接
如果在练习阶段懒得配置单张内网网卡的服务器,可以先把/sbin/fidown eth0放到/etc/rc.d/rc.local中
[root@m01 ~]# ssh 172.16.1.31
Last login: Mon Jun 24 11:09:24 2019 from 172.16.1.61
[11:12 root@nfs01 ~]#
[root@m01 /etc/ansible]# ssh 172.16.1.41
Last login: Mon Jun 24 11:09:08 2019 from 172.16.1.61
[11:12 root@backup ~]#
[root@m01 ~]# ssh 172.16.1.51
Last login: Mon Jun 24 11:09:32 2019 from 172.16.1.61
[11:12 root@db01 ~]#
backup备份服务器可以上外网了
给nfs
给db01数据库