文档章节

iptables 实现简单的四层反向代理服务器

傅易
 傅易
发布于 2016/11/10 10:35
字数 259
阅读 196
收藏 2

四层代理,即工作在 OSI 模型的第四层,通过分析 IP 和端口来分发到上游服务器。

首先查看 iptables 实现简单的网关服务器,遵循同样的方法打开 IP 转发功能。

假设本机外网地址 100.100.100.100,外网段 0.0.0.0/32,内网地址 192.168.1.1,内网段 192.168.1.0/24。

使外网访问 100.100.100.100:80 时,代理到内网主机 192.168.1.100:8080:

$ iptables -t nat -A PREROUTING -4 -p tcp -d 100.100.100.100 --dport 80 -j DNAT --to-destination 192.168.1.100:8080
.181
$ iptables -t nat -A POSTROUTING -4 -p tcp -d 192.168.1.100 --dport 8080 -j MASQUERADE
$ iptables -t filter -A FORWARD -s 192.168.1.100 -j ACCEPT
$ iptables -t filter -A FORWARD -d 192.168.1.100 -j ACCEPT

对数据包改变路由目标(使其转发)并伪装成本机发送,所以如果想获取源 IP 则需要额外处理。

© 著作权归作者所有

共有 人打赏支持
傅易
粉丝 28
博文 110
码字总数 69025
作品 0
海淀
后端工程师
私信 提问
Linux 实现 NAT

前言 NAT:网络地址转换(Network Address Translation),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是一种在IP封包通过路由器或防火墙时重写來源IP地址或目的IP地址的技术。 简单来说...

诸葛孔明亮
2016/11/08
15
0
系统原理分析架构-六-负载均衡(定义及介绍及LVS/Nginx/Haproxy比较)

DNS负载均衡:这也是最早的负载均衡技术。在DNS负载均衡服务器中可以为不同的地址用同一个名字、对于一个名字不同的客户访问不同的WEB服务器得到其中一个地址、从而达到负载均衡的目的。DNS...

tantexian
2016/02/29
39
0
基于Haproxy+Keepalived负载均衡实现的高可用架构

本博主的上一篇已经介绍过keepalived的相关知识,基于LVS-DR模型也已实现keepalived的主从架构,本篇博客就接着来了解一个可实现服务的负载均衡的服务——Haproxy,该服务与Keepalived相结合...

MRUJ
2017/11/10
0
0
CentOS 6.4下Squid代理服务器的安装与配置

一、简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。 Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要...

tlanyan
2014/09/30
0
0
squid 代理和缓存

于2017.04.21 从新浪博客搬迁过来 ---------------------------------------------------------------- 在现在的企业中squid 作为代理服务器和缓存服务器使用,在小型的环境中squid可以作为代...

Aloneforyou
2017/04/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring源码学习笔记-1-Resource

打算补下基础,学习下Spring源码,参考书籍是《Spring源码深度解析》,使用版本是Spring 3.2.x,本来想试图用脑图记录的,发现代码部分不好贴,还是作罢,这里只大略记录下想法,不写太细了 ...

zypy333
今天
10
0
RestClientUtil和ConfigRestClientUtil区别说明

RestClientUtil directly executes the DSL defined in the code. ConfigRestClientUtil gets the DSL defined in the configuration file by the DSL name and executes it. RestClientUtil......

bboss
今天
17
0

中国龙-扬科
昨天
2
0
Linux系统设置全局的默认网络代理

更改全局配置文件/etc/profile all_proxy="all_proxy=socks://rahowviahva.ml:80/"ftp_proxy="ftp_proxy=http://rahowviahva.ml:80/"http_proxy="http_proxy=http://rahowviahva.ml:80/"......

临江仙卜算子
昨天
11
0
java框架学习日志-6(bean作用域和自动装配)

本章补充bean的作用域和自动装配 bean作用域 之前提到可以用scope来设置单例模式 <bean id="type" class="cn.dota2.tpye.Type" scope="singleton"></bean> 除此之外还有几种用法 singleton:......

白话
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部