正向代理

Posted xianglei_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正向代理相关的知识,希望对你有一定的参考价值。

环境:

需要准备两台虚拟机

需要每台有两个网卡 内网网卡和外网网卡

 技术图片

 

 

 

内网网段 172.16.1.0/24  网卡 ens37

外网网段 10.0.0.0/24    网卡   ens33

可以访问外网的  内网网络IP地址 172.16.1.72

可以访问外网的  外网网络IP地址 10.0.0.72

不可以访问外网的  内网网络IP地址 172.16.1.73

不可以访问外网的  外网网络IP地址 10.0.0.73

 

 

 第一步 在可以访问外网的服务器上 开启IP转发

1.开启IP转发

1
2
3
4
[root@ localhost ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@ localhost ~]# sysctl -p   //让配置生效
net.ipv4.ip_forward = 1

2. 开启内网转发 (先开启firewalld)  

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@ localhost ~]# systemctl status firewalld  //查看状态
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@ localhost ~]# systemctl start firewalld // 开启防火墙
 
[root@ localhost ~]# firewall-cmd --add-masquerade --permanent
success
[root@ localhost ~]# firewall-cmd --permanent --direct --passthrough ipv4 -t net -I POSTROUTING -o ens37 -j MASQUERADE -s 172.16.1.72/24   //ens37 可访问外网的 内网网卡  172.16.1.72 可访问外网的 内网IP地址
Success
[root@ localhost ~]# firewall-cmd --reload  //生效
success  

第二步 在不可以访问外网的服务器上操作 

1.停掉访问外网的网卡  注:此操作后 xshell不能连接了 需要到虚拟机上进行下一步操作

1
[root@ localhost ~]# ifdown ens33

2.更改内网服务器的网卡 (添加网关)2.1 2.2 选一个就好

2.1 临时修改 

1
[root@ localhost ~]# route add default gw 172.16.1.72 dev ens37

2.2 永久修改 注:172.16.1.42 为可访问外网的虚拟机的 内网IP地址

1
[root@ localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens37

 

 技术图片

 

 

 

3.启动的时候 为了防止ens33也启动 

1
2
[root@ localhost ~]# systemctl restart network
[root@ localhost ~]# ifdown ens33 //需要再次关闭ens33  

第三步:测试ens33 没有开启的时候还可不可以ping

1.

技术图片

 

 2. 用xshell测试 ,可以用另一台主机ssh远程登录进去

技术图片

 

以上是关于正向代理的主要内容,如果未能解决你的问题,请参考以下文章

什么是正向代理和反向代理??

Squid 搭建正向代理服务器

nginx正向代理

正向代理与反向代理,正向代理与反向代理的应用

Nginx正向代理配置

如何使用Nginx实现正向代理