iptables学习02-nat表应用
nat表应用实验
第一步 准备工作
- A机器两块网卡ens33(192.168.2.106)、再添加一块自定义网卡ens37(192.168.100.1),添加到LAN内网区段(自定义名字,写什么无所谓),ens33可以上外网,ens37仅仅是内部网络。
- B机器是虚拟机里克隆A机器的,把ens33禁掉,只有ens37(192.168.100.100),和A机器ens37可以通信互联。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20先在虚拟机里面设置一下,添加一块网卡 A
ifconfig ens37 192.168.2.106/24 自定义网卡IP
把网卡配置文件的MAC什么的再修改一下 B
ifdown ens33 ban掉网卡
ifconfig ens37 192.168.100.100/24 自定义网卡IP A
ping ens37 192.168.100.100 yes B
ping ens37 192.168.100.1 yes
ping www.baidu.com no Windows CMD
ping 192.168.100.1 no
ping 192.168.100.100 no
第二步 需求1:可以让B机器连接外网 (小路由器的功能)
A机器打开端口转发
1
2
3echo "1">/proc/sys/net/ipv4/ip_forward 端口转发配置文件默认是0,表示关闭。
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE
增加一条规则,有了这条规则,可以把100.0这个网段做一个欺骗,让它们可以上网,记住这个用法就可以了。B机器要设置一个网关
1
2
3
4
5
6
7
8
9
10
11
12
13
14route add default gw 192.168.100.1
route -n 确认网关
ping 192.168.2.106 yes vi /etc/resolv.conf 设置DNS
233.5.5.5
ping 233.5.5.5 yes
ping www.baidu.com yes 大专栏 iptables学习02-nat表应用Windows CMD
ping 192.168.100.100 no B可以连接外网了,但是外网还是ping不通这个100的ip
第三步 需求2:C机器只能和A通信,让C机器可以直接连通B机器的22端口
A机器打开端口转发,并添加规则
1
2
3
4
5
6
7
8echo "1">/proc/sys/net/ipv4/ip_forward 端口转发配置文件默认是0,表示关闭。
iptables -t nat -D POSTROUTING -s 192.168.100.0/24 -o ens33 -j MASQUERADE 删除上面那个之前的规则 添加新规则
iptables -t nat -A POSTROUTING -d 192.168.2.106 -p tcp --dport 1122 -j DNAT --to 192.168.100.100:22
进来的包,130转发到100IP的22端口
iptables -t nat -A POSTROUTING -s 192.168.100.100 -j SNAT --to 192.168.2.106
传出的包,100回到130的包,设置来源IP为130B机器要设置一个网关
1
2
3route add default gw 192.168.100.1
route -n 确认网关
ping 192.168.2.106 yes测试是否可以用xshell登录A机器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18ssh
主机 192.168.2.106
端口 1122
密码 *** 连接OK ifconfig
... ...
ens33 无
ens37 192.168.100.100 ping www.qq.com yes,可以连接外网 w from
192.168.2.1 上网是从windows机器上的
扩展
- iptables应用在一个网段
http://www.aminglinux.com/bbs/thread-177-1-1.html - sant,dnat,masquerade
http://www.aminglinux.com/bbs/thread-7255-1-1.html - iptables限制syn速率
http://www.aminglinux.com/bbs/thread-985-1-1.html
iptables学习02-nat表应用的更多相关文章
- iptables filter表 案例、iptables nat表的路由功能 、端口映射
1.小案例 #!/bin/bashipt="/usr/sbin/iptables"$ipt -F$ipt -P INPUT DROP$ipt -P OUTPUT ACCEPT$ip ...
- iptables filter表案例、iptables nat表应用 使用介绍
第7周第4次课(5月10日) 课程内容: 10.15 iptables filter表案例10.16/10.17/10.18 iptables nat表应用 扩展1. iptables应用在一个网段 ...
- 四十七.iptables防火墙 filter表控制 扩展匹配 nat表典型应用
1.iptables基本管理 关闭firewalld,开启iptables服务 查看防火墙规则 追加.插入防火墙规则 删除.清空防火墙规则 1.1 关闭firewalld,启动iptables服务 ...
- Linux centos7iptables filter表案例、iptables nat表应用
一.iptables filter表案例 vim /usr/local/sbin/iptables.sh 加入如下内容 #! /bin/bash ipt="/usr/sbin/iptable ...
- 【转】IPtables学习笔记
写在前面,大家测试玩iptables时要记得自己配置了那些东西,测试完成后记得删除啊,博主忘了删除一个input REJECT链的一条记录,后续测试搭建了apache服务器,始终无法访问,最后抓包发现 ...
- LInux iptables学习
作者原文 : http://blog.chinaunix.net/uid-9950859-id-98277.html 要在网上传输的数据会被分成许多小的数据包,我们一旦接通了网络,会有很多 ...
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]
Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...
- iptables 学习
本博客是学习慕课网课程 用iptables搭建一套强大的安全防护盾 整理而成 iptables相当于在ip层挂载一个hook point对用户进行控制 组成: 四张表+ 五条链(hook point) ...
- Linux防火墙iptables学习
http://blog.chinaunix.net/uid-9950859-id-98277.html 要在网上传输的数据会被分成许多小的数据包,我们一旦接通了网络,会有很多数据包进入,离开,或者经过 ...
随机推荐
- 画一画BeagleboneBlack的PCB
一直有听说“Cadence是这个星球上第一好用的EDA软件”,便想着找机会来学学.正好BeagleboneBlack是用Cadence设计的,而且是开源硬件,原理图和PCB文件可以直接在Wiki上下载 ...
- PyTorch基础——词向量(Word Vector)技术
一.介绍 内容 将接触现代 NLP 技术的基础:词向量技术. 第一个是构建一个简单的 N-Gram 语言模型,它可以根据 N 个历史词汇预测下一个单词,从而得到每一个单词的向量表示. 第二个将接触到现 ...
- Opencv笔记(二):图像的基本操作——续写
1.图像的透视变换 对于视角变换,我们需要一个 3x3 变换矩阵.在变换前后直线还是直线.要构建这个变换矩阵,你需要在输入图像上找 4 个点,以及他们在输出图像上对应的位置.这四个点中的任意三个都不能 ...
- DOM(Document Object Model)
DOM(Document Object Model): 结点的概念:整个文档就是由层次不同的多个节点组成,可以说结点代表了全部内容. 结点类型 1.元素结点 对于元素结点的n ...
- 36)PHP,搜寻数据库信息在html中显示(晋级1)
首先是数据库的样子展示: 然后就是我的PHP主文件了: <?php class db { public $host="localhost" ;//这个是主机的地址 publi ...
- 吴裕雄--天生自然python学习笔记:python 用pygame模块制作一个音效播放器
用 Sound 对象制作一个音效播放器. 应用程序总览 程序在执行后默认会把 WAV 音频文件加载到清单中,单击“播放”按钮可开始 播放,同时显示 “正在播放 xxx 音效”的信息 . 播放过程中,可 ...
- Linux基本操作_20191117
VMware和Ubuntu的安装, 想来想去,还是需要安装,不能老是使用Windows的,后面还有很多都要用到Linux系统的,这个可以说是开发人员必备的了, 基本的使用: 1,Windows下面C: ...
- 895A. Pizza Separation#分披萨问题(前缀和)
题目出处:http://codeforces.com/problemset/problem/895/A 题目大意:对于给出的一些角度的披萨分成两份,取最小角度差 #include<stdio.h ...
- Django获取当前时间和Linux系统时间不一致
配置文件中修改:TIME_ZONE的值改为上海,USE_TZ的值改为False,重启项目即可
- jmeter测试get post 笔记
0 环境 系统环境:win7 1 操作 1 post 新建线程组 2 get 和post新建类似 http请求 只是新建一个参数化我测试的2个url http://127.0.0.1:8080/cry ...