centos上实现动态路由和NAT功能

分类:CentOS教程 阅读:12369 次

一、服务器配置:

1、CPU:core 4内存:8G硬盘:146G*4硬盘(raid5)

二、系统环境配置:

1、系统版本:Centos6.5 64位

2、安装环境:最小化安装,只装基本包

3、安全加固:禁用root直接远程ssh、改变ssh端口为22909、禁用ctrl+atl+del重启

关闭selinux、host.allow只允许内网访问

三、服务配置:

1、安装并且配置quagga实现动态路由功能

(1)安装quagga:

#yum –y install quagga telnet yum安装动态路由软件和telnet客户端

(2)配置quagga:

#cp/etc/quagga/zebra.conf{.sample,}从模板复制生成主配置文件

#cp/etc/quagga/bgpd.conf{.sample,}从模板复制生成bgp配置文件

#chkconfig bgpd on && chkconfig zebra on设成开机自起

#service zebra start启动quagga主服务

#service bgpd start启动bgp服务

(3)配置动态路由:

#telnet 127.0.0.1 2601登录路由软件

User Access Verification

Password:初始密码zebra,改用户密码命令password密码

Router>en

Password:初始密码zebra,改特权密码命令enable password密码

Router# conft 命令基本同ios,密码加密service password-encryption

Router(config)#interface eth0

Router(config-if)#ip address 192.168.1.161/24设置内网接口ip

Router(config-if)#no shutdown

Router(config-if)#exit

Router(config)#interface eth1

Router(config-if)#ip address 1.1.1.1/24设置外网接口ip

Router(config-if)#no shutdown

Router#write保存设置

#service zebra restart重启服务

# telnet127.0.0.1 2605登录BGP服务

Password:初始密码zebra

bgpd> 同思科配置bgp命令相同,不做累述了

#service bgpd restart重启bgp服务

2、配置NAT:

#iptables -t nat -A POSTROUTING -m iprange --src-range 192.168.1.161-192.168.1.168 -oeth1 -j SNAT --to 1.1.1.1 NAT转换规则,基于实验环境,生产环境时需要微调

#service iptables save 保存配置

#chkconfig iptables on确保iptables开机启动

#cat/proc/net/nf_conntrack查看NAT链接跟踪,前半为发出包,后半为期望回应的包

3、编写脚本生成NAT的log日志:

#vim nat.sh创建shell脚本

#!/bin/bash

#less /root/nf.log查看log日志格式如下

#vim /root/netlook.sh建查询脚本

#less /root/natlook.txt运行后显示如下,其中第二个dst是NAT后IP

查看当前连接总数 #cat /proc/sys/net/netfilter/nf_conntrack_count

调最大连接数 #vim /etc/sysctl.conf

net.netfilter.nf_conntrack_max = 6100000

net.netfilter.nf_conntrack_tcp_timeout_established = 1200

刷新 #sysctl -p

注:此文档基于实验,真正部署于服务器中时,shell脚本部分需要根据实际数据调整改进