linux 做企业网关gw(nat)详细配置
 

最近因为公司的路由器老化导致上网时断时续,上半小时网就断一次网,为此我头疼不已,本着为公司节约成本的宗旨,决定自己弄一台centos做网关路由,于是在网上各种搜索,东拼西凑,总算是把这网关路由给搞定了。看到网上没有一篇完整说明centos做网关路由的文档,于是决定把我这次部署网关路由的经历分享给大家。

我的环境是这样的:

外网固定IP是180.159.110.130(公司官网兼邮件)、180.159.110.127(VPN)

网关路由的eth0外网口IP是180.159.110.130,eth1内网口IP是192.168.200.1,与eth1对接的是panabit网络行为管理控制设备,然后接到三层交换机上,三层交换机与centos网关路由eth1口对应的IP是192.168.200.254。Email内网IP是192.168.20.12,VPN内网IP是192.168.20.127

系统:centos6.5最小化

网卡:eth0走外网,eth1走内网

拓扑如下:

部署步骤如下:

1、配置eth0网卡,信息如下:

DEVICE=eth0

HWADDR=14:DD:A9:E4:CF:32

TYPE=Ethernet

UUID=d60cfc7d-d34b-4e87-bce6-9fa216b8aee6

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=180.159.110.130

NETMASK=255.255.255.0

GATEWAY=180.159.110.225

配置eth0:1接口,信息如下:

DEVICE=eth0:1

HWADDR=14:DD:A9:E4:CF:32

TYPE=Ethernet

UUID=d60cfc7d-d34b-4e87-bce6-9fa216b8aee6

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=180.159.110.127

NETMASK=255.255.255.0

GATEWAY=180.159.110.225

2、配置eth1网卡,信息如下:

DEVICE=eth1

HWADDR=00:E0:4C:81:23:11

TYPE=Ethernet

UUID=01b13968-0049-4778-b2ae-ae18b81b8722

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=192.168.200.1

NETMASK=255.255.255.0

3、添加路由:

编辑/etc/sysconfig/network-scripts/route-eth1文件,内容如下:

192.168.0.0/16 via 192.168.200.254

表示所有192.168.0.0网段的内网主机都通过192.168.200.254到达网关路由,因为我这里内网有很多网段,所以用的16位掩码

查看路由表

被红线画掉的是外网地址

4、启用转发和NAT,实现内外网的路由和NAT转换:

修改/etc/sysctl.conf文件,让包转发功能在系统启动时自动生效:
           # Controls IP packet forwarding
           net.ipv4.ip_forward = 1

5、配置iptables

编辑/etc/sysconfig/iptables文件:

6、设置iptables开机启动

chkconfig iptables on

reboot

到此,centos做为网关路由的工作基本完成,之后有什么其他的防火墙策略再另行添加即可。

 

linux 做gw(nat)详细配置的更多相关文章

  1. linux下安装MYSQL详细配置(转)

      #tar zxvf mysql-5.0.18.tar.gz#cd  mysql-5.0.18 #./configure --prefix=/usr/local/mysql --with-chars ...

  2. Window VNC远程控制LINUX:VNC详细配置介绍

    Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...

  3. CentOS下配置iptables防火墙 linux NAT(iptables)配置

    CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...

  4. 【Oracle RAC】Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂)

    [Oracle RAC]Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂) 2 Oracle11gR2 RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件 ...

  5. 【Oracle RAC】Linux系统Oracle12c RAC安装配置详细记录过程V2.0(图文并茂)

    [Oracle RAC]Linux系统Oracle12c RAC安装配置详细过程V2.0(图文并茂) 2 Oracle12c RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件下载3 ...

  6. Linux环境CentOS6.9安装配置Elasticsearch6.2.2最全详细教程

    Linux环境CentOS6.9安装配置Elasticsearch6.2.2最全详细教程 前言 第一步:下载Elasticsearch6.2.2 第二步:创建应用程序目录 第四步:创建Elastics ...

  7. 虚拟机Linux与本地虚拟网卡配置---NAT链接方式

    虚拟机Linux与本地虚拟网卡配置---NAT链接方式 **********这是我亲自尝试多次实践出来的结果,不是复制粘贴************************* 首先进行初始化,这样避免有 ...

  8. 【Oracle RAC】Linux系统Oracle18c RAC安装配置详细记录过程(图文并茂)

    本文Oracle 18c GI/RAC on Oracle Linux step-by-step 的安装配置步骤,同时也包含dbca 创建数据库的过程. 1. 关闭SELINUX,防火墙vi /etc ...

  9. 使用Docsify做文档网站的详细配置教程

    使用Docsify做文档网站的详细配置教程 作者:xhemj 没错,它叫Docsify. xhemj的文档中心就是用这个写的 开源地址:https://github.com/docsifyjs/doc ...

随机推荐

  1. C# 面向对象基础

    面向对象编程OOP(Object-Oriented Programming) 类和对象 类是对象的定义,对象是类的实现. [属性集信息] [类修饰符] class 类名 [:类基] //定义类的语法格 ...

  2. 03.Web大前端时代之:HTML5+CSS3入门系列~H5功能元素

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 2.功能元素 1.hgroup 对网页或区段(secti ...

  3. Angular Service和Factory应用的区别

    Service可以用来将返回同类业务的多种返回值 Factory可以用来提供对同类业务的多个方法的调用 另外:Provider可以用来封装各独立职责

  4. 细说Promise

    一.前言 JavaScript是单线程的,固,一次只能执行一个任务,当有一个任务耗时很长时,后面的任务就必须等待.那么,有什么办法,可以解决这类问题呢?(抛开WebWorker不谈),那就是让代码异步 ...

  5. Python:认识模块

    一.了解 Python 模块: -- 什么是函数: 函数是实现一项或多项功能的一段程序 模块是实现一类功能的程序块,是包含函数和其他语句的脚本文件,以".py"为后缀名 默认,C: ...

  6. 排版紧凑情况下IOS 浏览器的文字部分选中问题

    一.需求 一个每一项都是图文混排的列表页,在需要对其中的某一部分文字进行选中copy的时候,IOS个二货每次都是直接选中了整个列表项,无论怎么操作它的选框都没有办法做到部分选中. 这是我本周遇到遇到的 ...

  7. MySql Access denied for user 'root'@'localhost' (using password:YES) 解决方案

    关于昨天下午说的MySQL服务无法启动的问题,解决之后没有进入数据库,就直接关闭了电脑. 今早打开电脑,开始-运行 输入"mysql -uroot -pmyadmin"后出现以下错 ...

  8. Django模型类Meta元数据详解

    转自:https://my.oschina.net/liuyuantao/blog/751337 简介 使用内部的class Meta 定义模型的元数据,例如: from django.db impo ...

  9. Hibernate4.2.4入门(一)——环境搭建和简单例子

    一.前言 发下牢骚,这段时间要做项目,又要学框架,搞得都没时间写笔记,但是觉得这知识学过还是要记录下.进入主题了 1.1.Hibernate简介 什么是Hibernate?Hibernate有什么用? ...

  10. 了解AIDL

    1.什么是AIDL? Android Interface Definition Lauguage(android接口描述语言)是一个IDL语言. 2.AIDL的作用? 背景:在android平台 中, ...