详解为何iptables规则中端口和网络协议类型必须同时出现

本文详细解析了在iptables规则中同时使用协议类型(-p)和端口号(-dport/sport)的原因,通过解释网络OSI模型中传输层和网络层的作用,以及数据包处理过程,帮助读者理解这些参数的重要性。
一般在增加一条iptables规则的时候我们都会使用如下的形式:
iptables -A INPUT -s 10.72.11.12 -p tcp --sport 1234 -d 10.72.137.159 --dport 80 -j DROP
而-p和-sport/dport必须同时使用,这是为什么呢?
查询相关资料后,我总结如下:
根据网络OSI参考模型,协议类型和端口号同属于传输层。而传输层的下层是网络层,使用IP进行通讯。
可以说端口是传输层的地址,IP是网络层的地址
我们平时在使用网络的时候都会同时使用多个应用,这时IP所属的网络层再将收到的数据包向上层(传输层)提交的时候,就需要根据IP数据包头部的协议类型字段决定应该将包交给哪个协议处理;而接收到数据包的协议又会根据数据包中的端口决定将数据提交给端口所属的应该程序来处理数据。
我们使用TCP/IP协议来进行数据传输的过程中,需要根据以下五项来决定是否是同一个应用程序的数据包:
来源IP,目的IP,协议类型,来源端口,目的端口
如果这五项内容一致,就说明IP收致分组数据是同一个应用请求的数据。否则数据就是其他应用请求的。
所以,我们在添加iptables规则的时候,才会同时使用协议类型(-p)和端口号(-dport/sport)。只有这样添加的规则,iptables才会知道,我们要对哪个应用程序的通讯进行放行或者禁行的操作。

更多Linux方面的资料请访问:http://www.aminglinux.com/bbs/?fromuid=4297
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值