一:拓扑、网络结构介绍

Eth1 外网卡的IP 地址, GW和DNS 按照提供商提供配置。配置如下:

IP:114.242.25.18

NETMASK:255.255.255.0 
GW:114.242.25.1

DNS:202106.0.20

DNS:202106.46.151

Linux 主机的 eth0 指向内网, IP 地址为: 172.100.10.1/24 。

Eth 0 
IP:172.100.10.1 
NETMASK:255.255.255.0

内部办公区 IP 地址段是 172.100.10.X/24 段的 IP , eth0 的 IP 是所有内网主机的网关,而DNS 设置为 eth1网卡配置 的 DNS,我的内网办公电脑设置如下:

172.100.10.188 
NETMASK:255.255.255.0 
GW:172.100.10.1

DNS:202106.0.20

DNS:202106.46.151

二: 配置

1.开启转发

以上配置完成后,办公终端 应该可以ping通Linux系统主机的eth0 的IP,因为他们是通过交换机链接的。但是,办公终端 ping不通Linux系统主机的eth1 的IP,应为并未开启Linux系统主机的转发功能。

开启Linux的转发功能,执行如下命令:

echo 1 > /proc/sys/net/ipv4/ip_forward

查看系统是否启用了转发功能,可以执行如下命令:

cat /proc/sys/net/ipv4/ip_forward

如果结果为1,代表已启用,0代表未启用。

开启转发后,就能ping 同ETH 1 的IP 地址和网关和DNS。

2.配置NAT规则

经过上面配置后,虽然可以ping相关的IP地址,但是此时linux 服务器是可以上网,但是内网办公电脑还是无法上网。问题在于内网主机的IP地址是无法在公网上路由。因此我们只需将内网办公终端 的IP转换成Linux系统eth1 接口的IP。

3.配置的NAT

/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT

NAT 转换:

iptables -t nat -A POSTROUTING -s 172.100.10.0/24 -o eth1 -j MASQUERADE

也可以通过使用 SNAT target 实现:

iptables -t nat -A POSTROUTING -s 10.50.10.0/24 -o eth1 -j SNAT --to-source 114.242.25.18

FORWARD 配置规则如下:

iptables -A FORWARD -i eth0 -j ACCEPT

保证所有进入 eth0 的包都被 FORWARD 点 ACCEPT 。

经过以上的配置之后, 内网办公电脑就可以正常的访问外网了。

本文出自 “康建华” 博客,请务必保留此出处http://michaelkang.blog.51cto.com/1553154/788472

Linux双网卡搭建NAT服务器之网络应用的更多相关文章

  1. Linux双网卡NAT共享上网

    linux双网卡NAT共享上网 术语字汇 私有IP地址(路由不可达地址)是一个被用于本地局域网的IP地址(在互联网中不可见). 公用IP地址(路由可达地址)是一个在互联网中可见的IP地址. IP伪装是 ...

  2. Linux 双网卡绑定

    Linux 双网卡绑定 Linux 双网卡绑定双网卡绑定的常用模式:mode1:active-backup 模式,即主备模式.mode0:round-broin 模式,即负载均衡模式(需要交换机配置聚 ...

  3. Linux 双网卡绑定技术

    bond技术是在linux2.4以后加入内核. 一般步骤是1.把bonding模块加入内核, 2 编辑要绑定的网卡设置,去除地址设定 3 添加bond设备,设置地址等配置 4  重启网络 5 在交换机 ...

  4. Linux双网卡绑定配置

    Linux双网卡绑定配置                                       环境介绍 Linux Redhat 6.5.4张网卡 需求 4张网卡两两绑定,4张网卡分别是eth ...

  5. Linux 双网卡绑定及Bridge

    Linux 双网卡绑定及Bridge 阅读(5,202) 一:linux操作系统下双网卡绑定有七种模式.现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多. ...

  6. 搭建VPN服务器之PPTP

    搭建VPN服务器之PPTP 1. 查看系统是否支持PPP 一般自己的系统支持,VPS需要验证. [root@oldboyedu ~]# cat /dev/ppp cat: /dev/ppp: No s ...

  7. Linux 双网卡双网段通信

    /********************************************************************************* * Linux 双网卡双网段通信 ...

  8. Linux双网卡绑定

    Linux双网卡绑定 作者:Eric 微信:loveoracle11g eth0和eth1绑定为bond0 [root@rac-node1 ~]# cat /etc/sysconfig/network ...

  9. Linux双网卡绑定bond详解--单网卡绑定多个IP

    Linux双网卡绑定bond详解 1 什么是bond 网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术.Kernels 2.4.12及 ...

随机推荐

  1. EL表达式得不到后台传过来的值

    两种jsp获得action传过来的值 第一种: <s:iterator value="#pagination.datas" var="supplier" ...

  2. Performance Testing 前期准备以及场景设计

    性能测试的session参加过几个,也查阅了很多相关的资料.年前被分配了测试任务,一直拖到现在,准备开始做的时候,才发现真的是不知道如何做起啊.今天和同事聊了一下,有很大启发.测试小白一枚,只分享一下 ...

  3. oracle01

    01-基本的查询语句 A:一些命令 sqlplus sys/sys@192.168.22.220:1521/orcl as sysdba; conn scott/123456@192.168.22.2 ...

  4. python_如何实现可迭代对象和迭代器对象?

    什么是可迭代对象? 列表.字符串 for循环的本质? for循环要确保in后面的对象为可迭代对象,如何确保? iter() 方法得到一个迭代器对象 不停.__next__() 方法对迭代器对象进行迭代 ...

  5. linkinFrame--用maven搭项目结构

    OK,老早想写一套自己的web框架,然后也一直在看开源的一些框架源码.今天开始正式开始写自己的javaWeb框架,暂时就定义linkinFrame好了. 为什么要写一套自己的框架? 其实这是一个比较矛 ...

  6. Ubuntu中使用dnw工具:没有找到/dev/secbulk0

    Ubuntu中使用dnw动机: 一. 之前没有用ubuntu中的dnw,想试试. 二. 因为换了win10系统,怕搞不定win10中dnw的驱动,想着在ubuntu中不用禁用数字签名啥的比较省心.(事 ...

  7. mybatis-spring最新版下载地址

    mybatis-spring最新版下载地址: http://mvnrepository.com/artifact/org.mybatis/mybatis-spring/1.2.3 mybatis-sp ...

  8. mysql主从延迟高的原因

    1.1.1故障1:从库数据与主库冲突 1 2 3 4 5 6 show slave status; 报错:且show slave status\G Slave_I/O_Running:Yes Slav ...

  9. 在windows环境下更改某软件的窗口位置

    #include<stdio.h>#include <stdlib.h>#include <Windows.h>#include <time.h> vo ...

  10. 关于HDPHP,HDCMS 安装,空白问题

    这几天,框论坛发现,HDPHP,号称还不错. 微信,支付宝支付,短信,阿里云OSS,权限认证等,都有.对开发人员来说很好了.. 马上下载来试试, HDPHP官方文档说需要PHP5.6,不过貌似我5.5 ...