iptables之NAT基础

NAT
    启用网卡转发:
        将/proc/sys/net/ipv4_forward的值设置为1,永久生效编辑/etc/sysctl.conf。

注意:linux的IP地址是属于主机而不是网卡的,所以各网卡对应的ip地址可以内部互相通信。

假设有IP1 IP2 对应网关为GW1 GW2,GW1和GW2在一台Linux上。

若IP1和IP2都为内网,只要设定好对应网关,就可以互相通讯,不需要nat。

nat会话表:记录相关数据包源地址、目标地址、协议端口号等信息。

NAT通过nat会话表和ip_conntrack完成对应的地址转换。

SNAT
        源地址转换,目标地址不变。适用于内网多计算机通过外网地址访问外网资源。报文要在出网关时完成地址转换(POSTROUTING)。

IP1(内网)访问IP2(外网)

发送:数据包(IP1,IP2) --> GW1(数据包(IP1,IP2)) -->GW2(数据包(IP1,IP2) )-->SNAT(数据包(GW2,IP2) ) --> nat会话表(建立IP1 <--> GW2)--> GW2(数据包(GW2,IP2)) -->路由选择 --> IP2(数据包(GW2,IP2))

响应:数据包(IP2,GW2)  --> 路由选择 --> GW2(数据包(IP2,GW2))  -->nat会话表 (内部自动目标地址转换)--> GW2(数据包(IP2,IP1)) --> GW1(数据包(IP2,IP1)) --> IP1(数据包(IP2,IP1))

DNAT
        目标地址转换,源地址不变。适用于外网用户通过网关的外网地址访问内网多个服务器。报文要在刚进入网关时完成地址转换(PREROUTING)。

IP2(外网)访问IP1(内网)

发送:数据包(IP2,GW2)  --> 路由选择 --> GW2(数据包(IP2,GW2))  -->DNAT(数据包(IP2,IP1) --> nat会话表(建立GW2 <--> IP1 ) --> GW2(数据包(IP2,IP1))  --> GW1(数据包(IP2,IP1) --> IP1(数据包(IP2,IP1))

响应:数据包(IP1,IP2) --> GW1(数据包(IP1,IP2)) -->GW2(数据包(IP1,IP2)) --> nat会话表(内部自动源地址转换) --> GW2(数据包(GW2,IP2)) --> 路由选择 --> IP2(数据包(GW2,IP2))

时间: 2024-10-10 08:27:34

iptables之NAT基础的相关文章

iptables之NAT实现

nat的优点:      防护内网中的主机,保护主机的安全      解决c类地址短缺的情况 SNAT和DNAT的区分是根据请求的源地址转换还是目标地址转换而决定的 以下实验中,内网的主机,将网关指向192.168.100.1这个地址 SNAT:源地址转换 拓扑: 过程解析: 报文的源地址为192.168.100.2,目标地址为外面主机地址211.70.160.16 但是到达nat服务器的eth0后,将报文的源地址改变成eth0的地址211.70.160.1 这个地址是一个公网地址 外网的web

防火墙、Iptables、netfilter/iptables、NAT 概述

防火墙.Iptables.netfilter/iptables.NAT 概述 - 如果你真的想做一件事,你一定会找到方法: 如果你不想做一件事,你一定会找到借口. - ITeye技术网站 一.防火墙的简介 防火墙是指设置在不同网络或网络安全域之间的一系列部件的组合,它能增强机构内部网络的安全性.它通过访问控制机制,确定哪些内部服务允许外部访问,以及 允许哪些外部请求可以访问内部服务.它可以根据网络传输的类型决定IP包是否可以传进或传出内部网 防火墙通过审查经过的每一个数据包,判断它是否有相匹配的

iptables实践之基础--进阶-实践应用全解析

iptables防火墙可以用于创建过滤(filter)与NAT规则.所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙.如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工作原理,你会发现其实它很简单,接下来我们从基础给大家解析iptables防火墙的应用: 第一部分:初识网络安全及防火墙原理 1.Linux网络安全模型 (1).防火墙:主要工作在主机或者网络边缘,对进出报文使用定义的规则进行检

iptables配置——NAT地址转换

iptables nat 原理同filter表一样,nat表也有三条缺省的"链"(chains): PREROUTING:目的DNAT规则 把从外来的访问重定向到其他的机子上,比如内部SERVER,或者DMZ.           因为路由时只检查数据包的目的ip地址,所以必须在路由之前就进行目的PREROUTING DNAT;          系统先PREROUTING DNAT翻译——>再过滤(FORWARD)——>最后路由.           路由和过滤(FORW

IPtables(5)NAT

nat:NetworkAddress Translation,安全性,网络层+传输层 SNAT(只修改请求报文的原地址;),DNAT(只修改请求报文的目标地址,端口映射,任何做一个DNAT需要对应一个SNAT) proxy:代理,应用层 DNAT\SNAT 核心转发.路由,不修改头部报文 修改源地址,NAT,修改头部报文,最初设计目标是为了安全性 nat表 PREROUTING(DNAT) OUTPUT POSTROUTING(SNAT) 源地址转换:iptables -t nat -A POS

Linux服务--iptables之nat转发和构建简单的DMZ防火墙

iptables之nat转发和构建简单的DMZ防火墙 一.NAT iptables 中的nat表: nat:Network Address Translation:NAT不仅完美地解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机. nat有三种实现方式:SNAT,DNAT和端口多路复用OverLoad 在了解Nat工作原理之前先了解一下私网IP和公网IP.私网IP地址是指局域网内部网络或主机的IP地址,公网地址是指在因特尔网上全球唯一的IP地址. 私有

linyux iptables SNAt NAT 【原创】

rpm -ql iptables 查看安装的模块 iptables -t filter -L –n iptables -L –n这两个命令的效果是一样的 iptables -t nat -L –n查nat表 iptables -t mangle -L –n查mangle表 ============================================== [[email protected] ~]# iptables -help Usage: iptables -[AD] chain 

Linux主机上通过iptables实现NAT功能

实验:如下模型,node1为内网主机,IP地址为192.168.10.2:node3为外网主机,IP地址为10.72.37.177(假设此地址为公网地址),node3上提供web server和FTP Server的功能:内网主机node2主机有2块网卡,地址分别为eth0:192.168.10.1和eth2:10.72.37.91(假设此地址为公网地址): 现要求在node2上通过iptables配置实现SNAT功能,并做如下限制: 1.node1可以访问node3提供的web服务和ftp服务

iptables之nat

网络结构如下: NAT,即网络地址转换.如上图中三台机器,C服务器配置内网IP,B服务器可以正常上网同时打开了核心转发功能,B.C之间可以互相通信.但C无法访问外网,原因是当192.168.2.10访问192.168.1.10时(即内网访问外网),C的数据包可以正常发送给A,但是C是内网地址,服务器A的响应包是无法发送C的,所以需要进行地址转换.步骤如下: 1.服务器B打开核心转发功能(略): 2.在服务器B的防火墙上配置NAT,我们要让C可以正常访问外网,防火墙配置如下: # iptables