![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络学习笔记
文章平均质量分 90
oceanweave
这个作者很懒,什么都没留下…
展开
-
iptables 过滤过程理解(四表五链)
链是规则的容器,一条链中可能包含着众多的规则,当一个数据包到达一个链时,iptables 就会从链中第一条规则开始匹配,如果满足该规则的条件,系统就会根据该条规则所定义的方法处理该数据包,否则将继续匹配下一条规则,如果该数据包不符合链中任一条规则,iptables 就会根据该链预先定义的默认策略来处理数据包。规则存储在内核空间的信息包过滤表中,数据包每经过一个链(关卡)时,系统会根据链中规则指定的匹配条件来尝试匹配,一旦匹配成功,则由规则后面指定的处理动作进行处理。它能改变 TCP 头中的 QoS 位。原创 2022-10-26 15:28:00 · 1256 阅读 · 0 评论 -
【转载】Kubernetes 网络排错中文指南
例如,A节点经过c节点到B节点,先在AB两端同时抓包,如果B节点未收到A节点的包,则在c节点同时抓包。环境信息:公有云环境,Kubernetes 集群节点和对象存储在同一私有网络下,网络链路无防火墙限制k8s集群开启了节点自动弹缩(CA)和Pod自动弹缩(HPA),通过域名访问对象存储,Pod使用集群DNS服务,集群DNS服务配置了用户自建上游DNS服务器。发现网络链路连通,但封装的IP不对,封装的源端节点IP是10.153.204.228,但是存在问题节点的IP是10.153.204.15。转载 2022-09-06 17:35:48 · 230 阅读 · 0 评论 -
【转载】Kubernetes 网络模型基础指南
Kubernetes 是为运行分布式集群而建立的,分布式系统的本质使得网络成为 Kubernetes 的核心和必要组成部分,了解 Kubernetes 网络模型可以使你能够正确运行、监控和排查应用程序故障。网络是非常复杂的,拥有许多概念,对于不熟悉这个领域的用户来说,这可能会有一定的难度,这里面有很多概念需要理解,并且还需要把这些概念整合起来形成一个连贯的整体,比如网络命名空间、虚拟接口、IP 转发、NAT 等概念。所有 Pod 都可以在不使用 NAT 的情况下与所有其他 Pod 进行通信。转载 2022-09-06 09:48:28 · 126 阅读 · 0 评论 -
【DNS系列-K8S排错】busybox 中使用 nslookup 进行域名解析时好时坏
使用 busybox 容器,其解析器的库可能无法解析 nodelocaldns 或 coredns 返回的结果(可能是 ipv6 部分,或是库不全 glibc 等,不清楚具体原因),因此导致时好时坏(有时可以解析,有时候解析不成功)在宿主机上直接进行测试,通过下面可以看到(nslookup 指定了 dns 解析地址),coredns 或 nodelocaldns 都可以进行解析。:在端口 8181 上提供的一个 HTTP 末端,当所有能够 表达自身就绪的插件都已就绪时,在此末端返回 200 OK。...原创 2022-08-26 18:15:46 · 2641 阅读 · 0 评论 -
【DNS系列-K8S排错】K8S 中 DNS 排错尝试
删除了 nodelocaldns 和 coredns 的 loop 插件。添加 iptables 规则,重启 coredns。原创 2022-08-26 18:14:30 · 1155 阅读 · 0 评论 -
【DNS系列-K8S排错】CoreDNS 新增 host 解析不生效
ndots:5,表示:如果查询的域名包含的点“.”,不到5个,那么进行DNS查找,将使用非完全限定名称(或者叫绝对域名),如果你查询的域名包含点数大于等于5,那么DNS查询,默认会使用绝对域名进行查询。对于使用 NodeLocalDNS 的用户一定要注意这个问题,如果使用 hosts 或者 rewrite 插件失效,基本上就是这个问题造成的。走完了search域还找不到,则使用 a.b.c.d.e. ,作为绝对域名进行DNS查找。那么我们就只有去 CoreDNS 解析了,所以这个时候我们需要把。......原创 2022-08-26 18:13:06 · 4778 阅读 · 0 评论 -
【DNS系列】K8S 中的服务解析(DNS 查询过程)
注意:nslookup命令的最后指定DNS服务容器的IP,是因为,如果不指定,且DNS服务的容器存在多个的话,那么DNS请求,可能会均分到所有DNS服务的容器上,我们如果只抓某单个DNS服务容器抓到的包,可能就不全了,指定IP后,DNS的请求,就必然只会打到单个的DNS容器。ndots:5,表示:如果查询的域名包含的点“.”,不到5个,那么进行DNS查找,将使用非完全限定名称(或者叫绝对域名),如果你查询的域名包含点数大于等于5,那么DNS查询,默认会使用绝对域名进行查询。...原创 2022-08-26 18:03:23 · 3386 阅读 · 0 评论 -
【DNS系列】k8s中kube-proxy与kube-dns的关系
1.kube-proxy主要是处理集群外部通过nodePort访问集群内服务,通过iptables规则,解析cluterIP到PodIp的过程,并提供服务的负载均衡能力。2.kube-proxy还可以提供集群内部服务间通过clusterIP访问,也会经过kube-proxy负责转发。3.kube-dns主要处Pod内通过serviceName访问其他服务,找到服务对应的clusterIP的关系,和一些基本的域名解析功能。...原创 2022-08-26 18:02:03 · 575 阅读 · 0 评论 -
【DNS系列】DNS整体理解(很全面)
就是:迭代查询是在同一个主体的基础上进行的,而递归查询每次都在变更查询主体.原创 2022-08-26 17:51:29 · 2883 阅读 · 0 评论 -
【DNS系列】什么是正向DNS和反向DNS
一般情况下,垃圾邮件发送者使用动态分配的 IP 地址或者没有注册域名的 IP 地址来发送垃圾邮件,通过反向解析可以判断邮件的合法性。当邮件服务器收到邮件时,邮件服务器会查看邮件由哪个 IP 地址发出,然后根据这个 IP 地址进行反向解析,如果反向解析得到的域名与发送方邮件的域名不一致则认为邮件发送者不是从真正的邮件服务器发出,则可以拒绝接收此邮件。的邮件时,qq邮件服务器会查看邮件来源的 IP,根据 IP 进行反向解析,如果解析到的域名和。使用 rDNS,将 IP 地址反转,然后将。...原创 2022-08-26 17:23:25 · 2551 阅读 · 0 评论 -
【转载】K8S 网络模型总览
底层网络顾名思义是指网络设备基础设施,如交换机,路由器,DWDM使用网络介质将其链接成的物理网络拓扑,负责网络之间的数据包传输。 图:Underlay network topology可以是二层,也可以是三层;二层的典型例子是以太网Ethernet,三层是的典型例子是互联网Internet。而工作与二层的技术是vlan,工作在三层的技术是由OSPF,BGP等协议组成叠加网络是使用网络虚拟化技术,在underlay。...转载 2022-08-18 10:44:14 · 644 阅读 · 0 评论 -
BGP基础之路由宣告
BGP Speaker(R4)从EBGP(R5)获得的路由会向它所有BGP对等体通告(包括EBGP(R6)和IBGP(R2));IBGP邻居(一个AS内)在路由通告的时候, 不修改下一跳。 —— 会导致无法顺利传输数据包,因为不改变的下一条不可达解决方法:两种修改方法,可通过display th返回信息如下undo synchronization 即为关闭了同步, 不会将bgp路由发给R6为什么要同步呢?因为如下图R2和R5运行BGP协议,关闭同步后想要AS实现BGP转发的前提: 同一AS内的所有设备都要原创 2022-07-11 23:04:52 · 3965 阅读 · 0 评论 -
BGP 的反射和联盟
动态路由协议可以按照工作范围分为IGP以及EGP。IGP工作在同一个AS内,主要用来发现和计算路由,为AS内提供路由信息的交换;而EGP工作在AS与AS之间,在AS间提供无环路的路由信息交换,BGP则是EGP的一种。OSPF 属于 IGP (内部网关协议),主要作用是在网络内部发现BGP是一种增强的路径矢量路由协议,同时BGP是拥有丰富的策略控制技术的外部网关协议。多运行于AS与AS之间。...原创 2022-08-04 16:50:31 · 660 阅读 · 0 评论 -
详解 Calico 三种模式(与 Fannel 网络对比学习)
之后「源 VTEP 设备」 —— 会将此「 Vxlan 数据包」进行「UDP封装」,其中「 Vxlan 数据包」会视为「UDP数据包的基础数据信息」通过「目的 Pod IP」—— 得知「目的 VTEP 设备的 MAC 地址」 —— 「源 VTEP 设备」根据得到的信息构建 Vxlan 数据包。”二层“通信 —— 指的是,需要维护「MAC 地址级别的信息」,即「虚拟IP」与「MAC 地址」的映射关系。之后此封装好的「UDP数据包」,将会通过三层网络,到达目的容器所在的主机的「目的VTEP设备」......原创 2022-08-04 11:21:15 · 12387 阅读 · 6 评论 -
初识 eBPF(功能、原理、及一些应用)
一般来说可编程性的支持通常会带来一些新的问题,比如内核模块其实也是为了解决这个问题,但是他没有提供很好的边界,导致内核模块会影响内核本身的稳定性,在不同的内核版本需要做适配等。eBPF通过kprobe,tracepoints跟踪机制兼具内核和用户的跟踪能力,这种端到端的跟踪能力可以快速进行故障诊断,与此同时eBPF支持以更加高效的方式透出profiling的统计数据,而不需要像传统系统需要将大量的采样数据透出,使得持续地实时profiling成为可能。息,所以我们复用了这部分能力。.........原创 2022-07-19 19:56:39 · 4926 阅读 · 0 评论