第五课 k8s网络基础学习-iptables和TCP协议
tags:
- k8s网络
- eNSP
- wireshark
- IPTABLES
- TCP协议
文章目录
第一节 iptables的表和钩子
- OVS的bridge不支持iptables。这是为什么openstack既用到linux bridge又用到ovs bridge的一个很大的原因。
- 我们把具有相同功能的规则的集合叫做"表”,所以说,不同功能的规则,我们可以放置在不同的表中进行管理,而iptables已经为我们定义了4种表,每种表对应了不同的功能,而我们定义的规则也都逃脱不了这4种功能的范围。其中包含:
- filter表:负责过滤功能,防火墙;内核模块: iptables_filter。
- nat表: network address translation,网络地址转换功能;内核模块: iptable_nat。
- mangle:拆解报文,做出修改,并重新封装的功能;iptable_mangle。
- raw表:关闭nat表上启用的连接追踪机制;iptable_raw。
- 每种钩子的优先级如下图所示。
- 处理动作在iptables中被称为target,动作也可以分为基本动作和扩展动作。此处列出一些常用的动作,之后的文章会对它们进行详细的示例与总结:
- ACCEPT:允许数据包通过。
- DROP:直接丢弃数据包,不给任何回应信息,这时候客户端会感觉自己的请求泥牛入海了,过了超时时间才会有反应。
- REJECT:拒绝数据包通过,必要时会给数据发送端一个响应的信息,客户端刚请求就会收到拒绝的信息。4. SNAT:源地址转换,解决内网用户用同一个公网地址上网的问题。
- MASQUERADE:是SNAT的一种特殊形式,适用于动态的、临时会变的ip上。6. DNAT:目标地址转换。
- REDIRECT:在本机做端口映射。
- LOG:在/varlog/messages文件中记录日志信息,然后将数据包传递给下一条规则,也就是说除了记录以外不对数据包做任何其他操作,仍然让下一条规则去匹配。
第二节 iptables的查询常用命令
- iptables的概念中已经提到过,在实际操作iptables的过程中,是以"表"作为操作入口的。iptables为我们预定义了4张表,它们分别是raw表、mangle表、nat表、filter表,不同的表拥有不同的功能。
iptables -t filter -L
#iptables -[ACD] chain rule-specification [options]
#iptables -l chain [rulenum] rule-specification [options]
#iptables -R chain rulenum rule-specification [options]
#iptables -D chain rulenum [options]
#iptables -[Ls] [chain [rulenum]] [options]
#iptables -[FZ] [chain] [options]
#iptables -[NX] chain