扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
ACL中的established选项
先来看一个例子:
现有一台路由器A,其fa0/0口连接内网,内网网段172.16.0.0/16,s0/0口连接外网,现在路由器A上做如下配置:
access-list 101 permit tcp any 172.16.0.0 0.0.255.255 established
int s0/0
ip access-group 101 in
这个配置实现一下目标:
外网只能回应内网的TCP连接,而不能发起对内网的TCP连接!
access-list 101 permit tcp any 172.16.0.0 0.0.255.255 这个命令很好理解吧?允许外网对内网的TCP访问。
加上established选项后,ACL会对外网访问内网的TCP段中的ACK或RST位进行检查,如果ACK或RST位被设置(使用)了,则表示数据包是正在进行的会话的一部分,那么这个数据包会被permit。也就是说,在外网向内网发起TCP连接的时候,由于ACK或RST位未设置,这个时候是不会被permit的。
关于TCP段中的字段:
SYN:同步 只在三次握手(建立连接)时设置
ACK:确认 在整个TCP通信过程中都可能用到
RST:复位 四次握手不是关闭TCP连接的唯一方法。有时,如果主机需要尽快关闭连接(或连接超时,端口或主机不可达),RST将被设置。
FIN:结束 只在在四次握手(终止连接)时设置
URG:紧急
PSH:推
和我们今天说的内容有关字段如下:
在三次握手时,发起方A首先发送SYN,接收方B回复ACK和SYN,发起方A再回复ACK。注意,发起方最开是发送的只有SYN,没有ACK。
四次握手时,A向B发送ACK和FIN,B回复ACK,然后B向A发送ACK和FIN,A回复ACK。
在中间的传输过程中ACK始终被使用。
重置连接(reset)时,RST会被设置,ACK可能有也可能没有(大部分情况有)。
综上,ACL中的established 选项会影响到三次握手中的第一次!因为这次握手只有SYN,没有ACK或RST。
简单总结一下:
ACL中的established选项只适用于TCP而不适用于UDP。
限制外部发起的TCP连接。
可以适用端口号进一步限制,如:
access-list 101 permit tcp any 172.16.0.0 0.0.255.255 eq 80 established
则不允许外网对内网发起80端口的TCP连接。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者