首页 > 其他分享 >《全网最细-深度解析 Istio Ambient Mesh 流量路径》摘要

《全网最细-深度解析 Istio Ambient Mesh 流量路径》摘要

时间:2023-11-15 17:03:00浏览次数:34  
标签:最细 -- Istio mark ---- Mesh PREROUTING 0x210 ztunnel

《全网最细-深度解析 Istio Ambient Mesh 流量路径》摘要_路由表

----NodeA首次上行-------

-A PREROUTING -j ztunnel-PREROUTING

-A ztunnel-PREROUTING -p tcp -m set --match-set ztunnel-pods-ips src -j MARK --set-xmark 0x100/0x100

-A ztunnel-PREROUTING -m mark --mark 0x100/0x100 -j ACCEPT

from all fwmark 0x100/0x100 lookup 101

101 路由表:default via 192.168.127.2 dev istioout

----ztunnelA首次上行-------

-A PREROUTING -i pistioout -p tcp -j TPROXY --on-port 15001 --on-ip 127.0.0.1 --tproxy-mark 0x400/0xfff

from all fwmark 0x400/0xfff lookup 100

100 路由表local default dev lo scope host

----NodeA回程-------

-A ztunnel-PREROUTING ! -s 10.244.2.3/32 -i veth51e3b96d -j MARK --set-xmark 0x210/0x210

from all fwmark 0x200/0x200 goto 32766

32766:  from all lookup main

main 路由表10.244.2.8 dev vethbda3de4b scope host

由于该数据包的目标地址并非本机,所以将再执行 iptables FORWARD 链

-A FORWARD -j ztunnel-FORWARD

-A ztunnel-FORWARD -m mark --mark 0x210/0x210 -j CONNMARK --save-mark  --nfmask 0x210 --ctmask 0x210

----NodeA后续上行-------

-A ztunnel-PREROUTING ! -i veth51e3b96d -m connmark --mark 0x210/0x210 -j MARK --set-xmark 0x40/0x40

from all fwmark 0x40/0x40 lookup 102

102 路由表default via 10.244.2.3 dev veth51e3b96d onlink

----ztunnelA后续上行-------

-A PREROUTING ! -d 10.244.2.3/32 -i eth0 -p tcp -j MARK --set-xmark 0x4d3/0xfff

from all fwmark 0x4d3/0xfff lookup 100

100 路由表local default dev lo scope host

带 CONN 的是连接的标记,不带的是标记数据包的;

--save-mark 是把数据包中的 mark 设置到连接中;

--restore-mark 是把连接中的 mark 设置到数据包中。

《全网最细-深度解析 Istio Ambient Mesh 流量路径》摘要_h5_02

----NodeA到 NodeB-------

main 路由表10.244.1.0/24 via 172.18.0.4 dev eth0

---- NodeB首个上行-------

from all lookup 100

100 路由表10.244.1.7 via 192.168.126.2 dev istioin src 10.244.1.1

----ztunnel-B首个上行-------

A PREROUTING -i pistioin -p tcp -m tcp --dport 15008 -j TPROXY --on-port 15008 --on-ip 127.0.0.1 --tproxy-mark 0x400/0xfff

from all fwmark 0x400/0xfff lookup 100

100 路由表local default dev lo scope host

---- NodeB下行-------

-A ztunnel-PREROUTING ! -s 10.244.2.3/32 -i veth51e3b96d -j MARK --set-xmark 0x210/0x210

from all fwmark 0x200/0x200 goto 32766
32766:  from all lookup main
10.244.2.0/24 via 172.18.0.3 dev eth0
-A ztunnel-FORWARD -m mark --mark 0x210/0x210 -j CONNMARK --save-mark --nfmask 0x210 --ctmask 0x210

----ztunnel-B后续上行-------

A ztunnel-PREROUTING ! -i vethbcda8cd4 -m connmark --mark 0x210/0x210 -j MARK --set-xmark 0x40/0x40

from all fwmark 0x40/0x40 lookup 102

default via 10.244.1.3 dev vethbcda8cd4 onlink

《全网最细-深度解析 Istio Ambient Mesh 流量路径》摘要_h5_03

ztunnel-B 到 httpbin

----ztunnel-B—node-B-------

from all lookup main

main 路由表default via 10.244.1.1 dev eth0

---- node-B-------

-A ztunnel-PREROUTING ! -s 10.244.1.3/32 -i vethbcda8cd4 -j MARK --set-xmark 0x210/0x210

from all fwmark 0x200/0x200 goto 32766

from all lookup main

10.244.1.7 dev vethfc1b555e scope host


标签:最细,--,Istio,mark,----,Mesh,PREROUTING,0x210,ztunnel
From: https://blog.51cto.com/mizy/8398621

相关文章

  • 五分钟k8s实战-Istio 网关
    在上一期k8s-服务网格实战-配置Mesh中讲解了如何配置集群内的Mesh请求,Istio同样也可以处理集群外部流量,也就是我们常见的网关。其实和之前讲到的k8s入门到实战-使用IngressIngress作用类似,都是将内部服务暴露出去的方法。只是使用Istio-gateway会更加灵活。这里有......
  • 部署 Istio Egress Gateway
    检查IstioEgressGateway是否已布署kubectlgetpod-listio=egressgateway-nistio-system查看现存Istiopod信息kubectlgetpods-nistio-systemNAMEREADYSTATUSRESTARTSAGEistio-ingressgateway-f9fc6b7fb-m4vm......
  • Istio:微服务开发的终极利器,你还在为繁琐的通信和部署流程烦恼吗?
    引言在前面的讲解中,我们已经提及了微服务的一些弊端,并介绍了Istio这样的解决方案。那么,对于我们开发人员来说,Istio究竟会带来哪些变革呢?今天我们就来简要探讨一下!Kubernetes简单介绍Kubernetes,俗称K8s,仅仅是因为L与s之间有8个字母所以叫的K8s,是一种用于管理和编排Docker集群的......
  • 基于 Istio 的灰度发布架构方案实践之路
    1.背景介绍灰度发布,又名金丝雀发布,是指能够平滑过渡的一种发布方式。基于系统稳定性和快速业务迭代的综合考虑,业务应用开发团队采取了新版本服务灰度上线的方式,即新版本服务并非全量发布到线上环境,而是发布少数几个实例进行灰度验证,没有问题后再全量发布。在部分核心服务进行接......
  • Service Mesh:微服务架构的救世主还是多余的花招?
    ServiceMesh的前世今生在前面,我们提出了一个问题:随着模块和节点的增多,微服务之间难免会遇到各种网络问题。为了解决这些问题,目前有一个解决方案,即使用SpringCloud中的各个组件。然而,这种解决方案不仅需要更多的学习成本,而且对代码有一些要求,比如必须使用Java开发。这就导致了系......
  • numpy.meshgrid() in Python
    numpy.meshgrid函数用于从表示笛卡尔索引或矩阵索引的两个给定一维数组中创建矩形网格。网格函数是从MATLAB中得到启发的。语法numpy.asarray(arr,dtype=None,order=None)参数x1,x2,…,xn:array_like表示网格坐标的一维数组。indexing:{‘xy’,‘ij’},可选输出的笛卡尔(‘xy......
  • k8s-服务网格实战-配置 Mesh(灰度发布)
    在上一篇k8s-服务网格实战-入门Istio中分享了如何安装部署Istio,同时可以利用Istio实现gRPC的负载均衡。今天我们更进一步,深入了解使用Istio的功能。从Istio的流量模型中可以看出:Istio支持管理集群的出入口请求(gateway),同时也支持管理集群内的mesh流量,也就是集群内......
  • 云原生微服务的下一站:Proxyless Service Mesh
    本文分享自华为云社区《DTSETechTalk|第46期:云原生微服务的下一站:ProxylessServiceMesh》,作者:华为云社区精选。本期直播主题是《云原生微服务的下一站:ProxylessServiceMesh》,华为云云原生DTSE技术布道师、华为云技术规划专家,Sermant开源社区创始人杨奕以及华为云云原生DT......
  • 花了两年时间手搓的物联MESH组网(个人免费使用)
    支持MCU型号:ESP8266&ESP32存储要求:大于或等于1Mbyte(8Mbit)意义:填补8266上WiFiMesh空缺一个域支持节点数量:理论上是255个特点:使用较少资源实现TCP后端可靠传输,可以单播,也可以广播可以中继,自愈合,即插即用通信全异步设计彻底无中心化,节点真正对等实现基于M......
  • 国产蓝牙PHY6222支持BLE5.2参数特性介绍支持MESH/透传/定位
    特性:封装;QFN32工作电压范围1.8v至3.6v嵌入式buckdc-dc和ldos电池监视器关断电流0.3uA睡眠电流1uA4.7mA的接受电流为3.3V4.7mA的0db的发射功率为3.3vMCU:<60uA/MHz支持ble2mbps协议BLE5.1可兼容BLE5.0支持mash组网传输速率-90dBm125khz传输速率-103dBm温度:-40℃~125......