一:拓扑、网络结构介绍

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. dedecms 封面模板和列表模板有什么不同

    封面模板,相当于你一个大栏目的封面.举例:你有一个栏目叫做"建站"而下面有很多子栏目,例如代码教程.模板下载.seo经验等,那么封面就相当于这个大栏目的首页,然后您可以在这个页面展 ...

  2. 【开发技术】视频URL采集

    http://www.joyplus.tv/joypluscms   志精

  3. Java compiler level does not match the version of the installed java project facet错误的解决

    因工作的关系,Eclipse开发的Java项目拷来拷去,有时候会报一个很奇怪的错误.明明源码一模一样,为什么项目复制到另一台机器上,就会报“java compiler level does not m ...

  4. Go语言是我见过最简洁的语言(除了lua)

    写在前面:题目就是个标题党,在这里先道歉,其次撸主学过很多语言(基本上是个语言都要上一下的那种人,但是不会太深入,只做了解,因为很多用不到),但主要使用C#语言(不过已经开始恶心C#的臃肿,不要打我) ...

  5. AF_INET 和PF_INET区别;AF_LOCAL PF_LOCAL 区别.

    从字面理解: AF_INET = Address Format, Internet = IP Addresses PF_INET = Packet Format, Internet = IP, TCP ...

  6. PUTTY无法远程连接服务器故障解决[转]

    对于一个刚刚了解putty工具的新手来说,在putty工具使用中有时出现了问题而无法解决.今天就来介绍怎么解决putty无法远程连接服务器的故障. 用putty远程连接服务器时,提示错误 server ...

  7. Django_注册全局消息

    需求: 对于登录用户,无论他在哪个页面,我都需要给他全局发送一个消息提示,Django中request就是一个全局变量 那,如何做? 在models 中urser表,继承user的表类中写上一个函数, ...

  8. java1.8--改进的接口

    关于接口,每天的编码都在写,就不多说了.这里对比下接口,抽象类,类3者的关系: 1),接口是一种规范,就是告诉外界这个东东可以做什么. 2),抽象类是一种模板,就是告诉外界这个东西的一部分公共功能. ...

  9. python urllib2与urllib

    1.urllib2可以接受一个Request对象,并以此可以来设置一个URL的headers,但是urllib只接收一个URL. 2.urllib模块可以提供进行urlencode的方法,该方法用于G ...

  10. 【转】 C++易混知识点4: 自己编写一个智能指针(Reference Counting)学习auto_ptr和reference counting

    这篇文章建大的介绍了如何编写一个智能指针. 介绍: 什么是智能指针?答案想必大家都知道,智能指针的目的就是更好的管理好内存和动态分配的资源,智能指针是一个智能的指针,顾名思义,他可以帮助我们管理内存. ...