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

一、服务器配置:

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链接跟踪,前半为发出包,后半为期望回应的包

ipv4    2 icmp     1 5 src=192.168.1.168dst=1.1.1.2 type=8 code=0 id=39946 src=1.1.1.2 dst=1.1.1.1 type=0 code=0id=39946 mark=0 secmark=0 use=2

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

#vim nat.sh      创建shell脚本

#!/bin/bash

while :
do echo "`date +'%F  %T'` `cat /proc/net/nf_conntrack |sed -n '/E/!p'`" >> /root/nf.logsleep 10
done

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

2014-09-10  14:33:21 ipv4     2 icmp     1 18 src=192.168.1.168 dst=1.1.1.2 type=8code=0 id=28175 src=1.1.1.2 dst=1.1.1.1 type=0 code=0 id=28175 mark=0 secmark=0use=2

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

  #!/bin/bash
cat/root/nf.log |awk '{print $1,$2,$5,$7,$8,$9,$10,$14,$15}' > natlook.txt

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

2014-09-1014:33:11 icmp 28 src=192.168.1.168 dst=1.1.1.2 type=8 dst=1.1.1.1 type=0

查看当前连接总数   #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脚本部分需要根据实际数据调整改进

转载于:https://blog.51cto.com/sw5720/1609677

centos上实现动态路由和NAT功能相关推荐

  1. 来自一枚rookie的项目开发——vue3.0+typescript+element-plus+vue-router4+Pinia之动态路由(上)

    动态路由(上) 配合动态路由的菜单(理论上可无限递归) <!-- 父组件 --> <template><div class="menu">< ...

  2. python组件的react实现_React-Router动态路由设计最佳实践

    写在前面 随着单页应用(SPA)概念的日趋火热,React框架在设计和实践中同样也围绕着SPA的概念来打造自己的技术栈体系,其中路由模块便是非常重要的一个组成部分.它承载着应用功能分区,复杂模块组织, ...

  3. Cisco PT模拟实验(14) 路由器OSPF动态路由的配置

    Cisco PT模拟实验(14) 路由器OSPF动态路由的配置 实验目的: 掌握OSPF动态路由选择协议的配置方法 掌握路由选择表中的OSPF路由描述 熟悉路由选择和分组转发的原理及过程 实验背景: ...

  4. SpringCloud系列——Zuul 动态路由

    前言 Zuul 是在Spring Cloud Netflix平台上提供动态路由,监控,弹性,安全等边缘服务的框架,是Netflix基于jvm的路由器和服务器端负载均衡器,相当于是设备和 Netflix ...

  5. 玩转华为数据中心交换机系列 | 配置动态路由接入M-LAG

    素材来源:华为数据中心交换机配置指南 一边学习一边整理试验笔记,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:玩转华为数据中心交换机系列 | 汇总_COCOgsta的博客-CSDN博客 组网需求 如 ...

  6. 16、配置路由器的动态路由(OSPF协议)

    1.相关知识 什么是路由器 路由器(Router)是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备.它能够理解不同的协议,例如某个 ...

  7. 15、配置路由器的动态路由(RIP协议)

    1.相关知识 什么是路由器 路由器(Router)是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备.它能够理解不同的协议,例如某个 ...

  8. Vue 增加动态路由功能 【在原有系统上增加】

    目录 遇到问题 1. 修改router/index.js 2. 修改 store文件夹下的 2.1 增加 modules/permission.js 2.2 增加modules/tagsViews.j ...

  9. eNSP配置(直连/静态/动态路由,DHCP,单臂路由,ACL,NAT,链路聚合,负载均衡,WLAN,备份路由)

    目录 常见问题: 一.同/不同网段与网关之间通信 二.以太网基本VLAN 三.静态路由 四.动态路由 (1)OSPF(开放最短优先路径) 适用于大型网络结构 (补充DR BDR) 单区域 多区域 (2 ...

最新文章

  1. php引用数据库实例,PHP单例模式实例,连接数据库对类的引用
  2. 【ZOJ - 4029】Now Loading!!!(整除分块,思维,二分,前缀和)
  3. IDEA自动勾选显示类型(specify type)
  4. Python:Python程序设计思维、计算生态、用户体验、程序设计模式
  5. 通用权限系统快速开发框架
  6. Atitit. 资深高级软件工程师and 普通的区别 高度金字塔 深度 广度 1. 高度金字塔 深度 广度 1 1.1. 角色差异高度金字塔 使用者 维修者 制造者 1 1.2. 广度圈 1 1
  7. .Net Core Win2008R2 运行环境问题 502.5
  8. 2022新版UI聚合支付系统四方系统源码+修复漏洞完美版
  9. 互联网黑暗森林法则:想活?别喘气儿!
  10. Centos 7 内网安装 DzzOffice
  11. QT之Button插入图片
  12. 关于我用iVX沉浸式体验了一把0代码创建电影院购票小程序这件事
  13. python画喜羊羊_PYTHON养成日记 DAY-8
  14. 高斯过程动态模型(GPDM)简析
  15. 面试答案-简单回答k8s容器启动的过程
  16. java大小端字节流解析_记录一个如何解决java与C++socket通信的大小端问题
  17. UE4中使用真实天空插件——TrueSky
  18. Java并发包中那些值得学习的并发工具类(空谈误国,实干兴邦,代码示范,抛砖引玉)
  19. 习题8-6 删除字符(多种方法详解)
  20. MySQL 和 Oracle 大数据量分页查询方法及其优化

热门文章

  1. python3扫雷代码_python3 命令行 扫雷
  2. python构建知识库_使用Mediawiki构建个人知识库
  3. c字段和属性的区别_如何将唯一属性类字段设置为不允许重复?
  4. 玉林中专计算机专业,玉林最好的中专学校有哪些 十大中专学校排名
  5. WebSocket不同版本的三种握手方式以及一个Netty实现JAVA类
  6. 《天天数学》连载28:一月二十八日
  7. 统计学基础学习笔记:正态分布
  8. 【BZOJ1433】【codevs2347】假期的宿舍,最大流
  9. 使用will和would来提出请求_42
  10. 正确使用招呼语、称呼语_5