junper防火墙之自摆乌龙

Juniper防火墙划分三个端口:
1.E0/0连接内网网络,网段是172.16.1.0/24,E0/0的端口ip地址是172.16.1.1,作为内网网络的网关
2.E0/1连接DMZ区域,网段是172.16.2.0/24,E0/1的端口ip地址是172.16.2.1,作为DMZ的网关
3.E0/2连接外网区域,网段是202.202.202.0/24,E0/2的端口ip地址是202.202.202.202,同时配置默认路由,指向202.202.202.1
划分为三个不同区域,策略如下:
1.E0/0是trust区域,trust区域能够访问DMZ和untrust区域
2.E0/1是DMZ区域,DMZ区域能够访问trust和untrust区域
3.E0/2是untrust区域,untrust区域能够访问DMZ区域
PC连接到交换机上,交换机的有个端口连接到Juniper防火墙的E0/0端口,PC的ip地址是172.16.1.5,网关是172.16.1.1,服务器连接到交换机上,交换机的有个端口连接到Juniper防火墙的E0/1端口,服务器的ip地址是172.16.2.5,网关是172.16.2.1配置完成后,出现了以下问题:
1.PC能够ping通172.16.1.1,也能够ping通202.202.202.202,也能够上网,但是不能ping通172.16.2.1
2.服务器也能够ping通172.16.2.1,也能够ping通202.202.202.202,也能够上网,但是不能ping通172.16.1.1
为了找出问题所在,在策略里面增加日志记录功能,发现和DMZ区域通信时,相应的策略并没有任何的日志记录,判断数据并没有到达Juniper或者Juniper对数据进行了过滤。
后来发现是PC的掩码配置错误,应该为255.255.255.0,配置错误为255.255.0.0。和DMZ区域(172.16.2.0/24)通信时误以为和自己是一个网段的,所以会arp广播查询mac地址,但是广播包无法通过Juniper的三层口。即使有mac地址,172.16.1.5和172.16.2.5通信时,二层源mac地址是172.16.1.5的mac地址,目的mac地址是172.16.2.5的mac地址。这个包发给交换机后,由于没有该mac地址对应的端口,会从所有端口洪泛此包,到达Juniper后,发现目的mac地址并不属于自己的,会进行丢弃处理,所以通信仍不能建立。
junper防火墙之自摆乌龙的更多相关文章
- CentOS7使用firewalld打开关闭防火墙与端口(转载)
1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disabl ...
- 解决开启服务器防火墙导致ftp不能连接的问题
在防火墙设置的"高级"选项卡中的"网络连接设置"--"本地连接"--"设置"中添加了"FTP服务器" ...
- Linux网卡驱动安装、防火墙原理
安装网卡驱动程序: 需要检查是否安装kernel依赖包: rpm –q kernel-devel #检查kernel依赖包是否安装 yum –y install kernel-devel 检查gcc和 ...
- centos6和centos7防火墙的关闭
CentOS6.5查看防火墙的状态: [zh@localhost ~]$service iptable status 显示结果: [zh@localhost ~]$service iptable st ...
- 解决WINDOWS防火墙开启后Ping不通
WINDOWS系统由于安全考虑,当开启防火墙时,默认不允许外主机对其进行ping功能,即别的电脑ping不通本机.别的主机ping不通本机是因为本机的防火墙关闭了ICMP回显功能,只要把这回显功能打开 ...
- Linux配置防火墙 开启80端口的方法
命令行输入: vi /etc/sysconfig/iptables 将 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT ...
- XSS 前端防火墙 —— 整装待发
到目前为止,我们把能用前端脚本防御 XSS 的方案都列举了一遍. 尽管看起来似乎很复杂累赘,不过那些是理论探讨而已,在实际中未必要都实现.我们的目标只是为了预警,能发现问题就行,并非要做到滴水不漏的程 ...
- CentOS7安装iptables防火墙
CentOS7默认的防火墙不是iptables,而是firewalle. 安装iptable iptable-service #先检查是否安装了iptables service iptables st ...
- CentOS7使用firewalld打开关闭防火墙与端口
1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disab ...
随机推荐
- zencart批量表上传后 标题显示为网址 批量修改标题状态 SEO三要素
zencart批量表上传后 标题显示为网址,原因是导入批量表时,产品标题对应状态被重置为0导致的 批量修改标题状态 ', metatags_products_name_status ', metata ...
- web.xml中url-pattern中/和/*的区别(来自网络)
其中/和/*的区别: < url-pattern > / </ url-pattern > 不会匹配到*.jsp,即:*.jsp不会进入spring的 Dispatcher ...
- mysql时间函数操作
Mysql时间转换函数 https://blog.csdn.net/w_qqqqq/article/details/88863269 mysql时间日期函数 https://www.cnblogs.c ...
- Python修炼之路-Socket
网络编程 socket套接字 socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求. socket ...
- C++、java、python的一些区别
1.变量类型 变量赋值命名不同 Python 中的变量赋值不需要类型声明 counter = 100 # 赋值整型变量 miles = 1000.0 # 浮点型 name = "John&q ...
- iOS给UIView添加点击事件
我要给一个UIView对象topView添加点击事件,方法如下: 步骤1:创建手势响应函数 (void)event:(UITapGestureRecognizer *)gesture { //处理事件 ...
- node.js模块中exports和module.exports的区别
Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个模块,有自己的作用域.在一个文件里面定义的变量.函数.类,都是私有的,对其他文件不可见. CommonJS规范规定 ...
- python 面向对象_3
析构函数:实例被销毁时候自动调用的方法,(例如关闭数据库,可以将关闭数据库的代码写到析构函数里) class Person: def __init__(self): print('构造函数') def ...
- 汇总apply()、call()、bind()用法详解
先看明白下面: 例 1 obj.objAge; // 17 obj.myFun() // 小张年龄 undefined 例 2 shows() // 盲僧 比较一下这两者 this 的差别,第一个打印 ...
- wannafly 练习赛11 F 求子树(树上莫队+换根)
链接:https://www.nowcoder.com/acm/contest/59/F 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64b ...