<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>ZWEI</title>
  
  <subtitle>Time flies.</subtitle>
  <link href="https://www.flftuu.com/atom.xml" rel="self"/>
  
  <link href="https://www.flftuu.com/"/>
  <updated>2025-06-27T08:16:07.656Z</updated>
  <id>https://www.flftuu.com/</id>
  
  <generator uri="https://hexo.io/">Hexo</generator>
  
  <entry>
    <title>vpc使用</title>
    <link href="https://www.flftuu.com/2024/03/19/vpc%E4%BD%BF%E7%94%A8/"/>
    <id>https://www.flftuu.com/2024/03/19/vpc%E4%BD%BF%E7%94%A8/</id>
    <published>2024-03-19T06:53:51.000Z</published>
    <updated>2025-06-27T08:16:07.656Z</updated>
    
    <content type="html"><![CDATA[<p>ovn-Kubernetes 支持多租户隔离级别的 VPC 网络。不同 VPC 网络相互独立，可以分别配置 Subnet 网段， 路由策略，安全策略，出网网关，EIP 等配置。</p><p><em><strong>VPC 主要用于有多租户网络强隔离的场景，部分 Kubernetes 网络功能在多租户网络下存在冲突。 例如节点和 Pod 互访，NodePort 功能，基于网络访问的健康检查和 DNS 能力在多租户网络场景暂不支持。 为了方便常见 Kubernetes 的使用场景，Kube-OVN 默认 VPC 做了特殊设计，该 VPC 下的 Subnet 可以满足 Kubernetes 规范。用户自定义 VPC 支持本文档介绍的静态路由，EIP 和 NAT 网关等功能。 常见隔离需求可通过默认 VPC 下的网络策略和子网 ACL 实现，在使用自定义 VPC 前请明确是否需要 VPC 级别的隔离，并了解自定义 VPC 下的限制。 在 Underlay 网络下，物理交换机负责数据面转发，VPC 无法对 Underlay 子网进行隔离。</strong></em></p><span id="more"></span><h2 id="vpc-参数介绍"><a href="#vpc-参数介绍" class="headerlink" title="vpc 参数介绍"></a>vpc 参数介绍</h2><p>vpc 参数用法介绍</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码， 格式必须是x.x.x.x/x/x</span></span><br><span class="line">  <span class="attr">enableExternal:</span> <span class="literal">true</span> <span class="comment">#可选 流量是否能出vpc，可结合bgp，宣告vpc内网段到tor，支持以vpc 内的ip地址出k8s集群,vpc 启用 enableExternal 会自动创建 lrp 关联到上述指定的公网</span></span><br><span class="line">  <span class="attr">enableK8sNode:</span> <span class="literal">true</span> <span class="comment">#可选 vpc流量是否能相互访问k8s node节点</span></span><br><span class="line">  <span class="attr">externalGatewaySwitch:</span> <span class="string">join</span> <span class="comment"># 可选, vpc 出外网链接那个sw，默认链接join，可配置右边网关的sw 名称如：external3</span></span><br></pre></td></tr></table></figure><h2 id="创建自定义-VPC"><a href="#创建自定义-VPC" class="headerlink" title="创建自定义 VPC"></a>创建自定义 VPC</h2><h3 id="创建完全隔离vpc"><a href="#创建完全隔离vpc" class="headerlink" title="创建完全隔离vpc"></a>创建完全隔离vpc</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码</span></span><br></pre></td></tr></table></figure><h3 id="创建vpc-使用默认网关-ovn-k8s的GR-xx网关"><a href="#创建vpc-使用默认网关-ovn-k8s的GR-xx网关" class="headerlink" title="创建vpc 使用默认网关(ovn-k8s的GR_xx网关)"></a>创建vpc 使用默认网关(ovn-k8s的GR_xx网关)</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码</span></span><br><span class="line">  <span class="attr">enableExternal:</span> <span class="literal">true</span> <span class="comment">#可选 流量是否能出vpc，可结合bgp，宣告vpc内网段到tor，支持以vpc 内的ip地址出k8s集群,vpc 启用 enableExternal 会自动创建 lrp 关联到上述指定的公网</span></span><br></pre></td></tr></table></figure><p>或者</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码</span></span><br><span class="line">  <span class="attr">enableExternal:</span> <span class="literal">true</span> <span class="comment">#可选 流量是否能出vpc，可结合bgp，宣告vpc内网段到tor，支持以vpc 内的ip地址出k8s集群,vpc 启用 enableExternal 会自动创建 lrp 关联到上述指定的公网</span></span><br><span class="line">  <span class="attr">externalGatewaySwitch:</span> <span class="string">join</span> <span class="comment"># 可选, vpc 出外网链接那个sw，默认链接join。</span></span><br></pre></td></tr></table></figure><h3 id="创建vpc-使用自定义网关"><a href="#创建vpc-使用自定义网关" class="headerlink" title="创建vpc 使用自定义网关"></a>创建vpc 使用自定义网关</h3><p>前提：external3 网关sw 必须提前创建完成，参考创建自定义网关</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码</span></span><br><span class="line">  <span class="attr">enableExternal:</span> <span class="literal">true</span> <span class="comment">#可选 流量是否能出vpc，可结合bgp，宣告vpc内网段到tor，支持以vpc 内的ip地址出k8s集群,vpc 启用 enableExternal 会自动创建 lrp 关联到上述指定的公网</span></span><br><span class="line">  <span class="attr">externalGatewaySwitch:</span> <span class="string">external3</span> <span class="comment"># 可选, vpc 出外网链接那个sw，默认链接join。</span></span><br></pre></td></tr></table></figure><h3 id="创建vpc与k8s-node节点互通"><a href="#创建vpc与k8s-node节点互通" class="headerlink" title="创建vpc与k8s node节点互通"></a>创建vpc与k8s node节点互通</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vpc</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vpc1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.0</span><span class="number">.0</span><span class="string">/16/24</span> <span class="comment">#必选 规定vpc 大网段，支持多个段写法，16表示大网段，24表示subnet的子网掩码</span></span><br><span class="line">  <span class="attr">enableK8sNode:</span> <span class="literal">true</span> <span class="comment">#可选 流量是否能相互访问k8s node节点</span></span><br></pre></td></tr></table></figure><p>VPC 内容器访问外部网络需要通过 VPC 网关，VPC 网关可以打通物理网络和租户网络，并提供 浮动 IP，SNAT 和 DNAT 功能。</p><h2 id="准备-underlay-公网网络"><a href="#准备-underlay-公网网络" class="headerlink" title="准备 underlay 公网网络"></a>准备 underlay 公网网络</h2><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">ProviderNetwork</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">external3</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">defaultBridge:</span> <span class="string">brenp0s10</span> <span class="comment"># 复用非dpu节点brenp0s10，用于非dpu节点</span></span><br><span class="line">  <span class="attr">defaultBridgeDpu:</span> <span class="string">brp0</span> <span class="comment"># 复用dpu节点brp0，用于dpu节点</span></span><br></pre></td></tr></table></figure><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Vlan</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">vlan0</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">id:</span> <span class="number">0</span></span><br><span class="line">  <span class="attr">provider:</span> <span class="string">external3</span></span><br></pre></td></tr></table></figure><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Subnet</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">external3</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">172.16</span><span class="number">.10</span><span class="number">.0</span><span class="string">/24</span></span><br><span class="line">  <span class="attr">excludeIps:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="number">172.16</span><span class="number">.10</span><span class="number">.1</span><span class="string">..172.16.10.206</span></span><br><span class="line">  <span class="attr">gateway:</span> <span class="number">172.16</span><span class="number">.10</span><span class="number">.1</span></span><br><span class="line">  <span class="attr">vpc:</span> <span class="string">default</span> <span class="comment"># 必须写default</span></span><br><span class="line">  <span class="attr">vlan:</span> <span class="string">vlan0</span> <span class="comment"># 必须设置vlan</span></span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;p&gt;ovn-Kubernetes 支持多租户隔离级别的 VPC 网络。不同 VPC 网络相互独立，可以分别配置 Subnet 网段， 路由策略，安全策略，出网网关，EIP 等配置。&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;VPC 主要用于有多租户网络强隔离的场景，部分 Kubernetes 网络功能在多租户网络下存在冲突。 例如节点和 Pod 互访，NodePort 功能，基于网络访问的健康检查和 DNS 能力在多租户网络场景暂不支持。 为了方便常见 Kubernetes 的使用场景，Kube-OVN 默认 VPC 做了特殊设计，该 VPC 下的 Subnet 可以满足 Kubernetes 规范。用户自定义 VPC 支持本文档介绍的静态路由，EIP 和 NAT 网关等功能。 常见隔离需求可通过默认 VPC 下的网络策略和子网 ACL 实现，在使用自定义 VPC 前请明确是否需要 VPC 级别的隔离，并了解自定义 VPC 下的限制。 在 Underlay 网络下，物理交换机负责数据面转发，VPC 无法对 Underlay 子网进行隔离。&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>ovn-k8s安装卸载</title>
    <link href="https://www.flftuu.com/2024/03/19/cache/"/>
    <id>https://www.flftuu.com/2024/03/19/cache/</id>
    <published>2024-03-19T02:52:41.000Z</published>
    <updated>2025-06-27T02:58:03.978Z</updated>
    
    <content type="html"><![CDATA[<p>subnet是 ovn-Kubernetes 中的一个核心概念和基本使用单元，ovn-Kubernetes 会以子网来组织 IP 和网络配置，共享子网的网络配置（CIDR，网关类型，访问控制，NAT 控制等）。和其他 CNI 的每个节点绑定一个子网的实现不同，在 ovn-Kubernetes 中子网为一个全局的虚拟网络配置，同一个子网的地址可以分布在任意一个节点上。</p><span id="more"></span><p>注意：同一 VPC 下的不同子网不能包含同样的 IP，以及基于 VPC peering 或者 VPN 互相打通的不同子网不能包含同样的 IP。</p><p>subnet 参数用法介绍</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">ovn.yusur.tech/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Subnet</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">subnet1</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">vpc:</span> <span class="string">vpc1</span> <span class="comment">#必选 设置属于那个vpc</span></span><br><span class="line">  <span class="attr">cidrBlock:</span> <span class="number">10.1</span><span class="number">.1</span><span class="number">.0</span><span class="string">/24</span> <span class="comment">#必须 设置subnet的cidr，必须在vpc指定的大段内</span></span><br><span class="line">  <span class="attr">gateway:</span> <span class="number">10.1</span><span class="number">.1</span><span class="number">.1</span> <span class="comment">#必选 设置subnet的网关ip地址</span></span><br><span class="line">  <span class="attr">excludeIps:</span> <span class="comment">#可选 设置排除ip地址，不会分配给pod 使用</span></span><br><span class="line">  <span class="bullet">-</span> <span class="number">10.1</span><span class="number">.1</span><span class="number">.1</span></span><br><span class="line">  <span class="attr">default:</span> <span class="literal">false</span> <span class="comment">#可选 是否作为vpc 默认的subnet，创建pod 不指定subnet则是 defualt 为true的subnet</span></span><br><span class="line">  <span class="attr">dhcpV4Options:</span> <span class="string">&quot;&quot;</span> <span class="comment">#可选 自定义dhcp_options的ipv4 uuid</span></span><br><span class="line">  <span class="attr">dhcpV6Options:</span> <span class="string">&quot;&quot;</span> <span class="comment">#可选 自定义dhcp_options的ipv6 uuid</span></span><br><span class="line">  <span class="attr">enableDHCP:</span> <span class="literal">false</span> <span class="comment">#可选 是否在该网段设置dhcp 功能</span></span><br><span class="line">  <span class="attr">ipv6RAConfigs:</span> <span class="string">&quot;&quot;</span> <span class="comment">#可选 配置ipv6参数</span></span><br><span class="line">  <span class="attr">enableIPv6RA:</span> <span class="literal">false</span> <span class="comment">#可选 开启ipv6 参数</span></span><br><span class="line">  <span class="attr">enableLb:</span> <span class="comment">#可选，是否在该switch 上开启lb功能，用于实现k8s svc功能</span></span><br><span class="line">  <span class="attr">mtu:</span> <span class="number">0</span> <span class="comment">#可选 设置dhcp服务mtu参数，可被dhcp client 使用</span></span><br><span class="line">  <span class="attr">natOutgoing:</span> <span class="literal">false</span> <span class="comment">#可选，设置整个subnet网段snat 规则，用于出vpc访问</span></span><br><span class="line">  <span class="attr">vlan:</span> <span class="string">&quot;&quot;</span> <span class="comment">#可选，设置vlan，则管理网段为Underlay 网段</span></span><br><span class="line">  <span class="attr">vips:</span> <span class="comment">#可选，设置该网段，保留vip 的ip地址信息</span></span><br><span class="line"><span class="attr">status:</span> <span class="comment">#subnet 资源创建过程中，状态展示</span></span><br><span class="line">  <span class="attr">conditions:</span> <span class="comment"># 不包含type：Error的时候，表示subnet 成功创建</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">lastTransitionTime:</span> <span class="string">&quot;2024-03-25T08:01:17Z&quot;</span></span><br><span class="line">    <span class="attr">lastUpdateTime:</span> <span class="string">&quot;2024-03-25T08:01:17Z&quot;</span></span><br><span class="line">    <span class="attr">reason:</span> <span class="string">ResetVpcLogicalSwitchSuccess</span></span><br><span class="line">    <span class="attr">status:</span> <span class="string">&quot;True&quot;</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">Ready</span></span><br><span class="line">  <span class="attr">dhcpV4OptionsUUID:</span> <span class="string">&quot;&quot;</span> <span class="comment"># 设置ipv4 dhcp的uuid</span></span><br><span class="line">  <span class="attr">dhcpV6OptionsUUID:</span> <span class="string">&quot;&quot;</span> <span class="comment"># 设置ipv6 dhcp的uuid</span></span><br><span class="line">  <span class="attr">standby:</span> <span class="literal">true</span> <span class="comment"># subnet 是否可用，false 表示subnet不可用或者创建失败</span></span><br><span class="line">  <span class="attr">v4availableIPs:</span> <span class="number">253</span> <span class="comment"># ipv4 可用ip数量</span></span><br><span class="line">  <span class="attr">v4usingIPs:</span> <span class="number">0</span> <span class="comment"># ipv4 已使用ip数量</span></span><br><span class="line">  <span class="attr">v6availableIPs:</span> <span class="number">0</span> <span class="comment"># ipv6 可用ip数量</span></span><br><span class="line">  <span class="attr">v6usingIPs:</span> <span class="number">0</span> <span class="comment"># ipv4 已使用ip数量</span></span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;p&gt;subnet是 ovn-Kubernetes 中的一个核心概念和基本使用单元，ovn-Kubernetes 会以子网来组织 IP 和网络配置，共享子网的网络配置（CIDR，网关类型，访问控制，NAT 控制等）。和其他 CNI 的每个节点绑定一个子网的实现不同，在 ovn-Kubernetes 中子网为一个全局的虚拟网络配置，同一个子网的地址可以分布在任意一个节点上。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>ovn-k8s安装卸载</title>
    <link href="https://www.flftuu.com/2024/03/19/ovn-k8s%E5%AE%89%E8%A3%85%E5%8D%B8%E8%BD%BD/"/>
    <id>https://www.flftuu.com/2024/03/19/ovn-k8s%E5%AE%89%E8%A3%85%E5%8D%B8%E8%BD%BD/</id>
    <published>2024-03-19T02:52:41.000Z</published>
    <updated>2025-06-27T02:57:54.770Z</updated>
    
    <content type="html"><![CDATA[<p><strong>OVN-Kubernetes CNI</strong>(Container Network Interface)在中科驭数云原生网络流量卸载、极速容器、云平台等解决方案中为Kubernetes集群提供默认的POD与Service网络通信能力，并将Kubernetes网络流量卸载到DPU上，从而为上层应用提供极低时延和高带宽的网络转发性能。</p><span id="more"></span><p>在Kubernetes集群网络中有一些最基本的核心网络需求诸如：</p><ul><li>Pod上的每一个网络接口都必须有自己唯一的IP；</li><li>POD应具备在没有NAT的情况下与Kubernetes集群中的任何其他POD通信的能力；</li><li>节点上的Agents(例如：系统守护进程，kubelet)可以与该节点上的所有POD通信。</li></ul><p>然而kubernetes本身并没有内置工具或组件解决上述核心网络需求，而是通过遵循Container Network Interface(CNI)规范的overlay网络插件来提供上述核心网络能力的。ovn-kubernetes和诸如Flannel,Calico等知名CNI一样，为kubernetes集群网提供核心网络所需能力。</p><p>OVN-Kubernetes使用OVN（Open Virtual Network）作为kubernetes网络的控制器来抽象并管理工作节点上的overlay网络流量，支持使用Vxlan&#x2F;Geneve协议在各节点间创建underlay网络，并通过一个运行在DPU SOC上的OVS将转发面下沉到DPU上。开启DPU hardware offload特性后，可将kubernetes网络流量完全卸载到DPU上以实现高吞吐和极低时延的极致性能提升。</p><h2 id="软件版本"><a href="#软件版本" class="headerlink" title="软件版本"></a>软件版本</h2><ul><li>Kubernetes &gt;&#x3D; 1.24。</li><li>Docker &gt;&#x3D; 1.12.6, Containerd &gt;&#x3D; 1.3.4。</li><li>操作系统: CentOS 7&#x2F;8, Ubuntu 16.04&#x2F;18.04&#x2F;20.04。</li></ul><h2 id="一键安装"><a href="#一键安装" class="headerlink" title="一键安装"></a>一键安装</h2><p>修改配置文件 设置 –vpc-enable为true</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">dpu_mode_enable:</span> <span class="literal">true</span></span><br><span class="line"><span class="attr">dpu_host_pf0:</span> <span class="string">&quot;enp0s10&quot;</span></span><br><span class="line"><span class="attr">dpu_host_pf1:</span> <span class="string">&quot;enp0s11&quot;</span></span><br><span class="line"><span class="attr">dpu_host_vf_num:</span> <span class="string">&quot;2-7&quot;</span></span><br><span class="line"><span class="attr">dpu_host_vf0:</span> <span class="string">&quot;enp0s10v0&quot;</span></span><br><span class="line"><span class="attr">gateway_mode:</span> <span class="string">&quot;shared&quot;</span></span><br><span class="line"><span class="attr">tunnel_type:</span> <span class="string">&quot;vxlan&quot;</span></span><br><span class="line"><span class="attr">pod_cidr:</span> <span class="string">&quot;10.244.0.0/16&quot;</span></span><br><span class="line"><span class="attr">configureable_parameters:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--gateway-nexthop=172.16.10.1</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--multicast-enabled=true</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--mtu=1400</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--disable-pkt-mtu-check=true</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--routable_mtu=1400</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--encap_csum=false</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">--vpc-enable=true</span></span><br><span class="line"></span><br><span class="line"><span class="attr">host_registry:</span> <span class="string">&quot;harbor.yusur.tech/yusur_ovn/ovn-kubernetes:test_push_0319&quot;</span></span><br><span class="line"><span class="attr">dpu_registry:</span> <span class="string">&quot;harbor.yusur.tech/yusur_ovn/ovn-kubernetes:test_push_0319&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="attr">enable_calico:</span> <span class="literal">false</span></span><br><span class="line"><span class="attr">calico_ippool:</span> <span class="string">&quot;10.144.0.0/16&quot;</span></span><br><span class="line"><span class="attr">calico_network_dev:</span> <span class="string">&quot;enp0s10&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="attr">roles:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">master</span></span><br><span class="line">    <span class="attr">label:</span> <span class="string">&quot;k8s.ovn.org/role: \&quot;master\&quot;&quot;</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">worker</span></span><br><span class="line">    <span class="attr">label:</span> <span class="string">&quot;k8s.ovn.org/role: \&quot;worker\&quot;&quot;</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">dpu-host</span></span><br><span class="line">    <span class="attr">label:</span> <span class="string">&quot;k8s.ovn.org/dpu-host:&quot;</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">dpu</span></span><br><span class="line">    <span class="attr">label:</span> <span class="string">&quot;k8s.ovn.org/dpu:&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="attr">nodes:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">hostname:</span> <span class="string">&quot;master&quot;</span></span><br><span class="line">    <span class="attr">role:</span> <span class="string">&quot;master&quot;</span></span><br><span class="line">    <span class="attr">k8s_ip:</span> <span class="string">&quot;172.16.10.100&quot;</span></span><br><span class="line">    <span class="attr">user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_mode:</span> <span class="literal">false</span></span><br><span class="line"></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">hostname:</span> <span class="string">&quot;worker1&quot;</span></span><br><span class="line">    <span class="attr">role:</span> <span class="string">&quot;worker&quot;</span></span><br><span class="line">    <span class="attr">k8s_ip:</span> <span class="string">&quot;172.16.10.101&quot;</span></span><br><span class="line">    <span class="attr">user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_mode:</span> <span class="literal">false</span></span><br><span class="line"></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">hostname:</span> <span class="string">&quot;host1&quot;</span></span><br><span class="line">    <span class="attr">role:</span> <span class="string">&quot;worker&quot;</span></span><br><span class="line">    <span class="attr">k8s_ip:</span> <span class="string">&quot;172.16.10.200&quot;</span></span><br><span class="line">    <span class="attr">user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_mode:</span> <span class="literal">true</span></span><br><span class="line">    <span class="attr">dpu_ip:</span> <span class="string">&quot;172.16.10.201&quot;</span></span><br><span class="line">    <span class="attr">dpu_user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_network_name:</span> <span class="string">&quot;brp0&quot;</span></span><br><span class="line">    <span class="attr">dpu_pci0:</span> <span class="string">&quot;00:0a.0&quot;</span></span><br><span class="line">    <span class="attr">dpu_pci1:</span> <span class="string">&quot;00:0b.0&quot;</span></span><br><span class="line">    <span class="attr">vdpa_mode:</span> <span class="literal">false</span></span><br><span class="line">    <span class="attr">ready_delete:</span> <span class="literal">true</span></span><br><span class="line"></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">hostname:</span> <span class="string">&quot;host2&quot;</span></span><br><span class="line">    <span class="attr">role:</span> <span class="string">&quot;worker&quot;</span></span><br><span class="line">    <span class="attr">k8s_ip:</span> <span class="string">&quot;172.16.10.202&quot;</span></span><br><span class="line">    <span class="attr">user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_mode:</span> <span class="literal">true</span></span><br><span class="line">    <span class="attr">dpu_ip:</span> <span class="string">&quot;172.16.10.203&quot;</span></span><br><span class="line">    <span class="attr">dpu_user:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_passwd:</span> <span class="string">&quot;root&quot;</span></span><br><span class="line">    <span class="attr">dpu_network_name:</span> <span class="string">&quot;brp0&quot;</span></span><br><span class="line">    <span class="attr">dpu_pci0:</span> <span class="string">&quot;00:0a.0&quot;</span></span><br><span class="line">    <span class="attr">dpu_pci1:</span> <span class="string">&quot;00:0b.0&quot;</span></span><br><span class="line">    <span class="attr">vdpa_mode:</span> <span class="literal">true</span></span><br></pre></td></tr></table></figure><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cat</span> /opt/yusur/hados/scripts/ovn-kubernetes/hados_ovn-kubernetes-deploy/scripts/install.sh</span><br><span class="line"> </span><br><span class="line">img=harbor.yusur.tech/hados/hados_ovn-kubernetes:1.0.24.2  </span><br><span class="line">kubeconfig=/etc/kubernetes/admin.conf</span><br><span class="line">nerdctl run -d --name install --net host --entrypoint python3 \</span><br><span class="line">-w /root/autodeploy/ \</span><br><span class="line">-v <span class="variable">$PWD</span>/autodeploy:/root/autodeploy/ \</span><br><span class="line">-v <span class="variable">$kubeconfig</span>:/root/.kube/config \</span><br><span class="line">-v <span class="variable">$PWD</span>/:/var/log/install/ <span class="variable">$img</span> install.py</span><br><span class="line"> </span><br><span class="line"><span class="comment"># 运行日志查看</span></span><br><span class="line">nerdctl logs -f install</span><br><span class="line">  </span><br><span class="line"><span class="comment"># 删除部署容器</span></span><br><span class="line">nerdctl <span class="built_in">rm</span> install</span><br><span class="line">  </span><br><span class="line"><span class="comment"># 查看详细日志</span></span><br><span class="line"><span class="built_in">tail</span> -fn200 install.log</span><br></pre></td></tr></table></figure><p><a href="https://confluence.yusur.tech/pages/viewpage.action?pageId=118956615">详细参考</a></p><h2 id="一键卸载"><a href="#一键卸载" class="headerlink" title="一键卸载"></a>一键卸载</h2><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line">img=harbor.yusur.tech/hados/hados_ovn-kubernetes:1.0.24.2  </span><br><span class="line">kubeconfig=/etc/kubernetes/admin.conf</span><br><span class="line">nerdctl run -it --<span class="built_in">rm</span> --net host --entrypoint python3 \</span><br><span class="line">-w /root/autodeploy/ \</span><br><span class="line">-v <span class="variable">$PWD</span>/autodeploy:/root/autodeploy/ \</span><br><span class="line">-v <span class="variable">$kubeconfig</span>:/root/.kube/config \</span><br><span class="line">-v <span class="variable">$PWD</span>/:/var/log/install/ <span class="variable">$img</span> clear.py</span><br><span class="line"> </span><br><span class="line"><span class="comment"># 查看详细日志</span></span><br><span class="line"><span class="built_in">tail</span> -fn200 install.log</span><br></pre></td></tr></table></figure><p><a href="https://confluence.yusur.tech/pages/viewpage.action?pageId=118956615">详细参考</a></p>]]></content>
    
    
    <summary type="html">&lt;p&gt;&lt;strong&gt;OVN-Kubernetes CNI&lt;/strong&gt;(Container Network Interface)在中科驭数云原生网络流量卸载、极速容器、云平台等解决方案中为Kubernetes集群提供默认的POD与Service网络通信能力，并将Kubernetes网络流量卸载到DPU上，从而为上层应用提供极低时延和高带宽的网络转发性能。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>运维工程师，学习知识树</title>
    <link href="https://www.flftuu.com/2023/11/22/%E8%BF%90%E7%BB%B4%E5%B7%A5%E7%A8%8B%E5%B8%88%EF%BC%8C%E5%AD%A6%E4%B9%A0%E7%9F%A5%E8%AF%86%E6%A0%91/"/>
    <id>https://www.flftuu.com/2023/11/22/%E8%BF%90%E7%BB%B4%E5%B7%A5%E7%A8%8B%E5%B8%88%EF%BC%8C%E5%AD%A6%E4%B9%A0%E7%9F%A5%E8%AF%86%E6%A0%91/</id>
    <published>2023-11-22T06:20:53.000Z</published>
    <updated>2023-11-22T07:18:38.574Z</updated>
    
    <content type="html"><![CDATA[<h1 id="运维工程师知识树"><a href="#运维工程师知识树" class="headerlink" title="运维工程师知识树"></a>运维工程师知识树</h1><p>作为运维工程师，你需要掌握一系列技能和知识，涵盖了多个领域，从操作系统管理到云计算、自动化和网络等。以下是一个运维工程师学习知识树的一般框架，你可以根据自己的实际情况和兴趣深入研究每个领域：</p><span id="more"></span><h4 id="操作系统管理："><a href="#操作系统管理：" class="headerlink" title="操作系统管理："></a>操作系统管理：</h4><p>Linux 和 Windows 操作系统基础知识<br>用户管理、权限管理和文件系统管理<br>进程管理和系统监控<br>网络配置和故障排除</p><p>书籍：<br>《鸟哥的 Linux 私房菜》（第五版）<br>《Linux 基础教程》（第四版）<br>《UNIX 环境高级编程》<br>《Windows PowerShell 脚本管理教程》</p><h4 id="云计算平台："><a href="#云计算平台：" class="headerlink" title="云计算平台："></a>云计算平台：</h4><p>AWS、Azure、Google Cloud 等主流云服务提供商的基本概念和服务<br>虚拟机、存储、网络和身份认证的管理<br>云上应用的部署和扩展</p><h4 id="网络基础："><a href="#网络基础：" class="headerlink" title="网络基础："></a>网络基础：</h4><p>TCP&#x2F;IP 协议栈和网络协议<br>子网划分和路由<br>防火墙和安全性基础</p><h4 id="自动化和脚本编程："><a href="#自动化和脚本编程：" class="headerlink" title="自动化和脚本编程："></a>自动化和脚本编程：</h4><p>Shell 脚本（Bash）<br>Python 或其他脚本语言<br>自动化配置管理工具（如Ansible、Puppet、Chef）</p><h4 id="监控和日志管理："><a href="#监控和日志管理：" class="headerlink" title="监控和日志管理："></a>监控和日志管理：</h4><p>监控系统的设置和使用<br>使用日志分析工具（如ELK Stack：Elasticsearch、Logstash、Kibana）<br>告警设置和故障排除</p><h4 id="容器化和编排："><a href="#容器化和编排：" class="headerlink" title="容器化和编排："></a>容器化和编排：</h4><p>Docker 容器基础知识<br>Kubernetes 或其他容器编排工具</p><h4 id="数据库管理："><a href="#数据库管理：" class="headerlink" title="数据库管理："></a>数据库管理：</h4><p>基本数据库知识（MySQL、PostgreSQL、MongoDB等）<br>数据库备份、恢复和性能优化</p><h4 id="安全和身份认证："><a href="#安全和身份认证：" class="headerlink" title="安全和身份认证："></a>安全和身份认证：</h4><p>安全最佳实践<br>SSL&#x2F;TLS 和加密基础<br>身份认证和访问控制</p><h4 id="项目管理和团队协作："><a href="#项目管理和团队协作：" class="headerlink" title="项目管理和团队协作："></a>项目管理和团队协作：</h4><p>版本控制系统（如Git）<br>敏捷方法论和项目管理工具（如Jira）</p><h4 id="持续集成和持续交付："><a href="#持续集成和持续交付：" class="headerlink" title="持续集成和持续交付："></a>持续集成和持续交付：</h4><p>CI&#x2F;CD 流程<br>Jenkins 或其他持续集成工具</p><h4 id="学习资源和社区参与："><a href="#学习资源和社区参与：" class="headerlink" title="学习资源和社区参与："></a>学习资源和社区参与：</h4><p>参与技术社区（如Stack Overflow、GitHub）<br>专业技术博客和在线教程<br>相关认证课程和培训</p><h2 id="学习链接"><a href="#学习链接" class="headerlink" title="学习链接"></a>学习链接</h2><!DOCTYPE NETSCAPE-Bookmark-file-1><!-- This is an automatically generated file.     It will be read and overwritten.     DO NOT EDIT! --><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><DL><p>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1672912287">linux</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Linux 视频</H3>            <DL><p>                <DT><A href="http://www.lampbrother.net/" add_date="1440502939">LAMP兄弟连-易第优教育PHPPHP培训北京PHP培训PHP教程PHP学习Java培训LAMP培训pythonpython培训就业大学生就业PHP视频Linux视频</A>                <DT><A href="http://www.chinaunix.net/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADGElEQVQ4jU2Ty2tcZRiHn/c7M5k5mWY6aa5N2iRNk1hIvYQm6EJBxKYL0YAaSqXgHyB4QQqiVFxIES0iuKgLUYmgQkVEJQZLSwRbrDS1LQklLZQ0sYkzyYzNTHLmXOZ8r4uo+Ns/v9XziFpVBAAsiiAIFjbnofg7+BVsrhuahjBOG/9NQVESyP9BRa59hF5+DyksgFVwDKam4CrseRL74KuY9kdQFMFBVGMFg0ZldOoo5uoktCnaM07RvR+PDDv0DzJr55CbV7AJCJ+eJN09CgIJxYANkakjyOyP2KHH+S77Bp8udXIrDNF0Hdsb6nl450u8sOtbulbOcKuSo2O9RDbXiGhsldlT8P2LcOAgJ82HvD39J6ltAZkWl1yzS+/2FIWqkJYU7zzQTHtYohxs0Nfbj1GjMHOCuM1lwr7G1zMlLh87wFsH+/CJ6czW8fJgJ5OH7uGV/Q28/usigZvBqQnF4ioG7yrk78DeMd49n6SeDXobUzRnktjIYb0aM3WnjIMw3NzIpaU8Zxc2yWUzeJ6HkaVfIAErMsz1xb9Ii4NiiEKwfkihVOX0zQK3/YDQKuLBhdtlkok0YWxJ2M1ljCNU4jRUIxy2tIiimGq5ik0IYVIwUQ1JKpHns3Y3wBoLsSVhWu5Da9Bq1ki6Pfh+iAKmZtnIexRixaqQNILEDpXVKjv7BRFwEAytD6EJ2BFMc2iwiYvX1whjGB1sZaS9gXQlZKyvie5shp/n89jCJo8N5PB9j2Q6Caqq9vSI6gdG5y58qe4zk/rE8Z90IV/WMFJdrXjqB5F+89uibjv8lY6dPK+lYl7nZq9pcW1Ft0xcOot+MYrs7mG6a4LxUz6l0jIDPTkaGhwW8wGrhYinHu3g4+f3sr5RAydgT3cvYq2qiIWZE3DmONrRQr7/TT6Zv5dzN5T1wNLbWsf4fo9n0xMEK7MsDH9OV3cfrusiqqr/xIVceR+dPgaBRXY3YRuHEElBLY9dvoRTFNi1j3hsEifbg2r874FFMVuZFueQuc9g8Qe4ewNU0GQK2kawA8/h7DsKTv1WqQh/AzdDhfsudrbwAAAAAElFTkSuQmCC">Unix技术网 = 全球最大的Linux-Unix应用与开发者社区 = IT人的网上家园</A>                <DT><A href="http://dl.vmall.com/c0zmjhb94m" add_date="1440502939">韩顺平 linux视频教程–华为网盘|资源共享-文件备份-免费网络硬盘</A>                <DT><A href="http://dl.vmall.com/c0zmjhb94m" add_date="1440502939">韩顺平 linux视频教程–华为网盘 资源共享-文件备份-免费网络硬盘</A>            </DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Linux 系统官网</H3>            <DL><p>                <DT><A href="http://mirror.esocc.com/centos/6.4/isos/x86_64/" add_date="1440502938">Index of /centos/6.4/isos/x86_64/</A>                <DT><A href="http://www.backtrack-linux.org/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB2klEQVQ4ja2SzUuUcRSFn9/HO++YY6JCEJSMTpiIVsPoro1SuQqipW2DxIigTRRE7qL6H6xFQRuRgoqgMkFaaWXOONZiYHbmIkZJdJx3PG2MECXSOnDhbu7DOZxLu/U66WMC9jRWQJOxxK1jLzIedMaH+CBgtj7BRhhSLBZ3QTBGMWM1GNunfh8qHo8rk8komUz+XYzcXF65XF6TY880cvGSDjU2yoCOtLTobG+vjDF/BJjnN24pAnxnB6l0mqrEp+kp3t+5y9LaKsmeHu4/HaNcLu+c4GpYqzpjqQF8IkHz6VMcPn+OA51dfP8yz/Sjxyw2NTDy4CHLlTJL0haAa7V+2Bj4gWiIIr7l53k7OsqT8dfUH22jf3CQmlIJE3gm5/PbLTjQCRfoSlire/H9uh4mdNwFCkBNxurmsbRmpz4om8urtaV1+x/EMDRbx5pEYSNiIiozU61QARqN5d1cjq+fZ1hdWeHy0NB2AxEMV4FuF7CMGI/WWQc6rKfdeTIuoPRmnMXyGl19vWSzWRYWFrZABMiBzC9boGbr1OdD3Y7X6VpYqz4fqjud1ouXrzQwcOF3jZvLFh00ljbn2QAyLuBjtcJEtA5AKpWiUCigzTZ2BOxG9l+O/wvgJ06T4EgLBVttAAAAAElFTkSuQmCC">BackTrack Linux - Penetration Testing Distribution</A>                <DT><A href="http://www.netbsd.org/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABKklEQVQ4jeWPIUgDcRSHv7+e7n9j4BkEDxw4wbAgeMLCbhgtixusLJkXrRbDokWwW7TI1kTLaVBmu4WNGximYFgSQdQdTHiGqWU3BE3iV1547/vxfvB/kFDy0vWvpHki0vFEnh62AJQMRNSUUpHS4DVH+/wsvD5K0PFeMOIxnLyhUy4kLFhIoxqXnjjNffSiC3ZqaD72CO8aEHhtnsM0pjlJpohedod7ax6WsiUVix+r7m1XON3Fbh6O/19reAvBstGZAiTXIDZzw3IuqQC8ek3ciwqEYXSAZaML26hseaTqBIA5ZxOuFEdFA/RGBV31D6LkrwBn1cG3HLBmwWA418voHX9PlapKTZub4/t9UKvXRAYi0u/Lt8dRBK1AglbwM/mT3n3vdwF/k3ff/mUQVt1jtwAAAABJRU5ErkJggg==">The NetBSD Project</A>                <DT><A href="http://www.freebsd.org/zh_CN/" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADC0lEQVQ4jW2T3WubZRjGf8+bN02aZOnStFm6ZnGr2taMqqSK6NqsoyA4EWQOZDIYQ/wHFIYHInqkBz1QEaRMNnAwPwYbVLAeuA7dbMfqurVq50eUzNCm+Wg+33wsb97n8WAR68cP7qP74ua+ua9LAALoA1pAhr9xhUIhH4BpmsV0Ol3d0usBHEBKB/ac8HpmDrzwvPvz+OqFb26n5w4fPTaxPxbbFwwGg6rVErnNbPq7lR8unz11cu7h0I6J5+4dPvT1qdPW25XqMwD3vQmpH0cGlZo5q/LZddNS/6R85YpKTr+rytk/TJVdU4ljR9RbkAOGNSC+6nbPZbr8yNEYvp6gLuoG0khjVUoos4LltuGO3M82X1AvvvYqy5+d55dw+BLwswaw6HCcH3znPbRAN8oykYUiKpVAJeap35gHHNQzJepHn+XG9BnkgUmWOjpmAKUDPDo5+eBOvxtlFEHW4KtzMDdLaTVJsminoNuoBAIY6RTlXSEi408Q8fujy/H4GR1wxCKRCZWYh+gY9akTWB/MQB7yQAUoALlbt8i4PeT7+igtXGZ0797xj2GbDmzvbhr9pU/exz77IdVPr9LK3/1VAagBjXZ5qgbN3+IUUklGRoaCOJ3dOkCjUqMwu4K7UyLtGlUkFrAJFNsG2QVYwIZS7HZoBMJ+QQNNA8obwp5eF9sxqiDt0PIKCm1XWcBOwAWkAQnEXhyj5PdmoLGpAfWbuey3peFRsjmoVcGxQyA9UAa8QLW9iQIe6dWJHH6SLy+uLABlG8CviURq7ODTh5zXlzwdZgvLJuj0CxwegVMHOgW9vYKhAUEkOsiy/lDh5anpV6R5Z90GYDWbmXUpG49Fo0/p3/8kZEshNXC5BYGARn9Q0N8jCQ/1YIwf4fjpL95I3v79HIDtr3Sk1tYWV+0dhYEHhh+/p1Z3dtXuYLMUPgU+nx3PaJD58H7j+EeLr19buj7VvgjBv7C7XNGJgd0v7ZNyrE+TAW9AUd7TzF5MaQsXLm2cNOv1a1v1/xmwha52bAV3g1P8P9Gf0VdYMOtYE8YAAAAASUVORK5CYII=">The FreeBSD Project</A>                <DT><A href="https://www.kernel.org/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACdElEQVQ4jZWSTUiUURSG3/t9nzp/Dk2jNioZjWLClBYWQTYQUoZF2Q8KE0FEtRJpkasWYatqEyRRm6x2wQRh2CIIhqhQc0KQLMVQdGEJYYbYzHw/974tmiExM3rgcBf3nPfcc94LrE3EMIyGf+T8gZY9OwGk8vMMBoPB5wC8/yMiysvLJgo8AdZtrzfLy0oJ4Ez2Tl+eaKysJCmEEPqRo22IVKS5LhRRiTfj8kHPnTBJTQiBNQUAIQDISv3+UntzGp9nIV7MFep5BZ5SXBUAwNXmXUYXANDUt+nvRwPCFTihbd0do8/nOyy64FkpsBKNpPD7/aeTwx/k17k5x1Hk98W0vT4QIIBukmL1xtn5AWyIRqMLVFJJRZlJpzg1NSljsZgNgIZhNP7t9Tq7oPn9riuJRIIk6TiOUkoqKaUaGOi3A4GAMgzjNQCRjeXdW3UAhZurdsyQUlmW5aRSKZJUJJnKOKqmZosC4ACoym0854IQIq4utYq64EZZYUkNoKXZtkW32y1AQv2YhOUIuN0+hIuX8kdn8NvReBz69GM0Mxl6x0+b+PThOWf2y4KyzIyyLZOWrWiONMp9NbAfXSuSTJaczNUBAAa74c/0h1L8WE81vsdO9oB3b9+QzJIxyYneSsWhQodjteRY/aQ5VBEBIDQA+LaEAkN38uGREJDGzr1htO4a1gbfJtH3rA+n2o5hcX5WIBTRIXSkTRNCKh8ACgDo6EBBSxjt3nxxoLjIW1dcgtInvUvTZ2/hJQATQMmrm/qhqmpP3si4fe98Z+byLDC/2ldwBYGa68fRsr/aFSYpyLhe29TkvdCA5otRHMz5T/6y8ScNHin01EGZHwAAAABJRU5ErkJggg==">The Linux Kernel</A>                <DT><A href="http://isoredirect.centos.org/centos/7.0.1406/" add_date="1440502939">Index of /centos/7.0.1406</A>                <DT><A href="http://www.lfs.org.cn/book/" add_date="1440502938">Linux From Scratch</A>            </DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Linux 论坛</H3>            <DL><p>                <DT><A href="http://www.oschina.net/project" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACwklEQVQ4jY2RW0hTcRzHv+dsZ5u6VJRUpsscrKh0kc3UCi0zH7KrPZgKZRiKpFGBgRRYQWiwTAZBQemTRVMitF6KEsPoInRDXZqga96v6NzOzs45/38P3ZyC9X388ft8+fL9Mlgip9MZMMXP5rZ9bj84ODEEQfRCo9YgLjKW7tmyy6aRuMdGo1H4/c8shnu/9+Zeb7LWfpzr1ml0geC0KjBKFkQiEF0++EY8SI5IdFTklJUbog2tfgbv7J15F+5fbpDWsmqllgPD+HkDACilkOZ90AwxntoT1cc2G+JbGQBwjA/vLbp1ulUwQq1QK5aBSyV7JWgHOL6h7E6GwmazKZ7ZXzTa1YOxqmDVP2EAYJUsXLKbEyd5IzM9Pb1p/428LpVJC4b9G1v2yXAPzIF6qMAEsWptXAhYjgUAEJnAO+5GzFyEyPaO9m8VtJIfTGUCfBVkS/aVqx2XnsZdy6q0CD0LRHQJmLfPIqRPNVm8rsByu7R2m3JsehRKLecX0TvJozglvz4jMa3q16ni0auW0C8D3dHZuZnNUUFRD/R6PQ8AShlkWeNEJogMi+hZfNthSq5J2WAO0a3WffDrIzQwHLJX8jNQhweg/mXjxam5qSQAGJ2dTD91s/zTIevxzpOW0m8tr5+Uz8zMrAEAxjE+nHnEWvB8lSnsTxJKKcRZAUoHETdGrH/bNWFPIQaO44JVID4CfmwBzBQV8sw57xmn0xlQ9bCmvy/cqVMG+XexkkSXD8liwgCr1+v5kn2FdeIgD0rof8FUppAHBRRm5VezAKDwMHVFSfn3PP3zPydcQUQi8PTPoyy9yGoyxN9lAcBsNouJUQml51JLGqQuHt4Jz7I0lFDwY27A7kNl2hmraoY5D4D67Wez2RSpu1N3Nre3nG2zdxwecY9BoCLUjAoxgVEkIyGt6ej2A9boyOg3ACgA/AAZVTPg/QauQwAAAABJRU5ErkJggg==">开源社区</A>                <DT><A href="http://ubuntuforums.org/forum.php" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACOElEQVQ4ja2TT0hUURTGf+e+1zxNHdOZBs1hKNQMRDRXLoJIA0cs3IibQIvCiKZNDoHRUigkXJQiuAmCQEoENzViCdKmaJEtpCLFsNFFjpZ/qtFx3m0xY46aq/p25/B9557znXuEHfjgd5fs07RqOCmiKwC0lnGBsZjQdywU+ZjKl9Tgkz/3ukJ1AOk7Cyfxy8a+VRxa7NpWYKIUh+V1D4ng30OIJ9iDo7CMueAZ4qvLobVwpKF0gnUFYHldndvEyiC35Sb5dwYpuPccM8/H/io/Dt9RjBwPIvgtr6sTQKZO55RhqrcgBkBW7TmMrBzMPB/O+guJvt+9ZGWkH1GKlZH+5Cs6zoZ93NSGuihJsVVcjjvQiY7FmA2cYvXFEwCc9efxBHvQ61GiE6+JzU0DYmhDtZpConWV4SSzugkxHawMPyI2N50kQvT9GwAya5rIbmgl0tu+6WC10sIR95XbHB6YIhaeBDvO0mDvLhO/D3Sz/OwhG/OzW0ktPgWAYSS8S89I5O34XsvYBYWWmUj3DT43FmK48kEZZJ+9tIt4oDGAs64Z82DBVlL0jAIdArB/LLM6+hjsOFl1zZiufKzicqySSjzBHjJrmtDrUZaG+lL0jP3zGgVgstZ1X0QCW4MZ5La0k1ZahTjSmL97lUNdT1HpGXy5fIJYeBKtdXfR8MI1E2AtvNBmed1Ff36jHWfxQcc2D36+CmGVVBL/9hWtCa2FF9rgfx1TKjbPGahGqEiMyzgw+rdz/g0qGNb8Awh6xAAAAABJRU5ErkJggg==">Ubuntu论坛</A>                <DT><A href="http://www.ccil.org/" add_date="1440502939">www.ccil.org</A>                <DT><A href="https://www.paterva.com/web6/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACDElEQVQ4jX2SzWoUQRSFv1tV3TU9PTPEhBhIiIm6ECIqQnb6AoqCbiWIb+EbGBB3us9CF7pWdCfZZBeIRIW4CKiYaCZ/I8l0T5zuLhfT6ekBzYELt37OveeeKnk4OeEoQfs+QaOBsRaQfNf9M2/v7WJUiRwOj+AFQbHO0pRuHGFrdaL9PYy1aM8n/t3qlUoSjJJeNRuG2GoVAKU1V+7cZfzyJVyaoX2PbqeD0prN1VUWnz0tmhidJ0Gtjga8SoV7CwucOjNFcnTE5zevOWg2OXftOu+fPOZPFKPpQ0k+kTEGAWbn5hiemkZyZe3dXTZWPpAcdfj58RP7375yzJGyAklTRGtGpqfLniKAZ30EUHkMKDje7B4eoJzjy9t3uCwrvPCsxfO83gvlocqhETRCctgmjSK+Ly2xOD/Pj+Vl2tvbzNy6jet2Swp694/DSElOp9WiG0WsvHjO6quXAFy4cZPG+AQiamD24hWi5i9OQjQ7izaaLEmId5ooY4iaW/0Cks/7P4hz4ByCQ5xDMkeZY7QMEhqTk4zOXMSrVtlZWyM8PYqt1VCeh8KhBMqcga8MMHL2PFfvP+grEMEEAa31dSRzhfvF+SNrHCdAGUN9fIKDzQ38MMRUAg63+r4VCkzFon1LlqYoY0jiuNdBq+Knaq0R3ICCwoNKrY4Xhv2ToaF+7hz1sTEAkjge8OAv8wikBIo9k8UAAAAASUVORK5CYII=">Paterva / Maltego</A>                <DT><A href="http://www.backtrack.org.cn/forum-21-1.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABmElEQVQ4jZXQsWsaURwH8O8lWAeH44j6EpVbzCjVJRq7HQZ0OhCOFrr4B4QM3Yu8wVEQ92YQxOEgIRmuPA0ZRCUhICFElw5yJdbHXRPH0KGpnYSrbZO7H7zl8b4fvr8HWZbN+XwuAgDnPKQoynmz2XwHD7NQVfVU1/V1SmmZcx7KZrODVqv11jUAYJHL5c5UVT0ulUqfptPpRiKRuDUMo+AacJ5qtfphNBpt5/P5z7PZLPhcWCCEcMuyNv+4FIRflUrlYywW+xoIBB41TTv5rzAej181Go33mUzm4l9tADz1er2Mm1XQ7/d3ZVk2V5FCoWC4AgAgHo9/cYYJIVySpO/dbveNK4AQ8s0JRKPRO0ppOZ1OX+q6vv4iUKvVDnw+3w8nIgjCTwBPjLG91fd/ie12+2oymRyGw+F7y7KIbdsEwBqARSqVuul0OpeuVlkOY0wJBoP2sk2xWDzinIc8IcPh8LUoivMlIknSA6W0zBhTPDVZ/Ru/3//oqUm9Xt9fhiORyN1gMNjxBACApml6Mpm8Nk1zCwB+A6NesNhsrSC1AAAAAElFTkSuQmCC">Backtrack5(BT5)_bt5中文版下载_bt5无线破解教程软件下载 - Backtrack中文网</A>                <DT><A href="http://news.netcraft.com/archives/2013/08/09/august-2013-web-server-survey.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAwUlEQVQ4jWPcH3vmvyDPdQYY5hG8z/BX7hvDX/nvDP/kvjG8EPjDcJmBieEyIxPDFQYmhh/f9BnYPtkxsH60Y2D9ZM/AxEAhGHgDWNAFVp//wBCe9wCrYtlQdgbj+QQMgAFzPTYGaUUGhh+s/xk+MjAyHF3zizgXwEBeDC9DYDIDPBb8mbEbMPCBOAwMwIgFWUFWhhBrXgZZCRYGBoY/cHGdUDYGVgtWwgZYKHAzLLeThGQmJAMiVvJCMxOq+oEPAwAofzRYFH9fTwAAAABJRU5ErkJggg==">2013年8月Web服务器调查| Netcraft公司</A>                <DT><A href="http://www.ha97.com/category/shell" add_date="1440502939">Shell</A>                <DT><A href="http://blog.51cto.com/" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABw0lEQVQ4jaWTv0tbURTHPy8v7/VpzI+qxQylPiQWKsWhlNLRlkwuglM3C6VblyKlf0LHTIVSXYSOncRFWrAUdIiLU6gUYo2CNJpEG19e8vJ+dHj1NtdEBz1wh3u+33u+33PuvQoAuXzAVeL1I0Uhlw8WsqaUHzRUzMQNKVexXXbrjpR7+fUXUQCr7UtA2w+YzQx2CRYqNl9Kf6RcBMByfWn5FzQ0MdSHGwSCB4QOTh1PIj67261+FglNZcduiX1YoKOF2UyKdEzj048K1aYLwNTtOJPD/QBUW67E/1cgdDAzlsLxAl6t7Uqq27Um75+M0mh7bNeaEiYKzN0bplC12fxtSYRpM8nziVsABEBfVOHQdgUeOUOWCkd826tjOb5Yj9MD4jBATFOZf5AWuHBQ7qjYGcvFY5aLxwAsZk0yKYOxpMH4TYOtw0ZHC+duoVfs1x0yKYO647FVtsQgowAN7/KXHNcijMQ0AN5tHlBu/hcMX2IPBx+zJoWKTUJXeXE/nMP89xKff9YkXhTAdmUHCV1lpXjCm4dp7sR1Tloec6s7bBycdgkp5PLBgK72tJ7UVT48HeXt+j6lcx8JwtkpwLW+81/1tMhM/3fatAAAAABJRU5ErkJggg==">51CTO技术博客-领先的IT技术博客</A>                <DT><A href="http://www.uplinux.com/online/linuxrumenjichu/3315.html" add_date="1440502939">linux最佳入门系列-bash编程基础_尚观Linux研究室</A>                <DT><A href="http://www.centos.org/docs/5/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcElEQVQ4jZ2SX0hTARSHv3vvdmt/ErVtTJTQLCJRoUFRhNytEHqroOi1oDBoQUSPQey9nguC8iGkhyAzJeihu7WK0DKKzEWRW5Z/mnNzc7tu9+7enkRGWdH3dB7O7zucw4E/oOsFRdc15U8964e1rJJ/fMwqxk5Zul5YV2Jbm6YpuUpSwTRxb2wh930kItf5MUp2SuOj0fKSdmUxtYDNLlLf6ovZHfZYjaBkLCh33wcjOzwnyJe/MFd4zaH6PioTzYxcGmJLz2Rk42YXn4ffcXr88hWgVgDQ5TuJzVaHS2rkx/JbJCQEUUCUJfyBLRgrOh0ndmMa5q8ryLY65ovjOOxevM5OunwnqazoWLpF4IxCtWKQSy6wktNw+ty1guxsVvnwMB7JtCYQK5/Qq0V87gAedyf6TiffPhZY/DjHzKsUAMMDo5F0OhvzehtiglbQlDuha1Fft5/mkAcAyzJxyF7aD3cGzZJNuT/4JlJIlxFFAYDnE1NMJxcYGr4QFADGrqtqZi4fvJdKI0oCVROOHA3gbZKi3S1LCMVcUEsOgigjClVuvgjhqPNEw+d7Q8LqLlOTs2ro0NWgLEv0nQ2xmClx4LDJNl8G/2IGkCgmboBlUNqvRlvatodqjuj2ONVz4YNB07RYXi4Te5qgrdtLu2sWLfWIDVuP4+w4h4XBJn+9upoTV4uVikn/7WcYepV4PMHXVAZJErBECbM0Qzn1AEGSKH8aQDQq/CJw2kT27W1nfj5PONyLEtxOo8eFJDcgNfXg6LqIkU8h+faAKK/32WukS2Nq/9uAdevNLms6/1L9e+I3fM3F1ansk/8L/ys/ATSMCd5hio5iAAAAAElFTkSuQmCC">CentOS-5 Documentation</A>                <DT><A href="https://redhatchallenge2013-rhc2013.rhcloud.com/?locale=ch" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB7UlEQVQ4jY2SP2gTURzHPy/NXc27hooEHBRB6HBUhdaiULCDu90clSIUOgecSweLi6OCgiChIEW6iF1EdCpkiheClhsKBe12goT2LuZeyc/hXS6pqegXjnf8/nx+f95TgJDJ9zTrboLvwlHPOl60oe5o5k1C3dGEcZLHhnGCGgY8cGFlEnY6cNmBC0Vr3+nArZI9Hx7BcMECQ1qZtOdL0WzHNkEBCyUoFyzU93QeH8YJyve0zJvkBKScYftjgAUBPG/Dq3RQdGz7rFm7reHaODS68LSn+R4b2j24Mg5GBsHlArR78M3R/DDGApY91oxY57kx6Pwy1B3N69jQMTB3ZlA9FbjkwA1luFm0IOV7WtbdhItFmMhaD1PYN/A1tSMNb7oPmyjAk5+Zz/c0yyphoTRwAhz2+KtUto/8Fs4/q/HhXpWDY5t42LNjKUa/cgEOju37UL6nJYwTGkHA1elp3mxu8nZri/L7d9zxTq++b+xVh3GCagSB7LZa3F9aotvt4roun5tNHq+uAjAzNZUnNvf2+PLpY/4aAZBMURRJFEXypxpBII0gyP99T0u2UwGk2AdVKpWRVtM0ZW52lkfVKtdnZthttQC4u7g42sG/FEWRALJRq52w/zdgo1bLRxmWEhEZ6f0UpWmK67oj9t8dNlH4F8arLwAAAABJRU5ErkJggg==">红帽挑战赛2013</A>                <DT><A href="http://blog.51yip.com/linux/1462.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC+UlEQVQ4jQXByW5bVQCA4f/cc+7gO3iKU2dooqoqJUk3hUoFiQUqm+7KgmVfgYfgIXgMJJ4AqZtuiYACDTQNcZvBju14uL6+0zmH7xMPvv/RtnwfAbTiCCkddG2YpTP2NvsIR3B6PaQbxRhj6CQJnlSMZ3MWVYXab7eYpCm3q5TaWhbTIauipNKavDBYKdCm5uJmTCNogBA0XI/z2zHLqwHqNs24zTJWiwWecvGjiJ2du8RhzDzLERh6rSZ5UTBdLvnwcUCz08PqiuXVe1RWFYRewOHRI9I8I4kSqqpiPFswWaUIXVJoQ7eZEDZj5qsVs9WcuBGx9dkzVK0NpdG8HQwodU27XbFKU3qtGGFr2lFMOhtx/e9veK4LjYSNzV02wgYX0xvUeDhAWkttQesaZzWnCGKyqgEGhqNLpOuzePcGe3OBCEK8w8958Pw7Ml2ipGpgihWOKQmiNsb1CbC4GPa3+8ymElWumd0OcQR072zRaSb888tPiCBGSUfjhxGFDdnd3mV99heTk2PO8pzy/kOevHjJm9+PMVrjuR6T83f07x+w/fQbfF0h25t7PyjPI08XTF79zPL8LaaukbpiXZScn/wBBrLhB7QxNO8dEXV6OFGHXn8btTj9E3+9JrE1S6txwiamLkAqsqtz9ja/4PDr54wOHuPlC0QjJGp2COIWVteI9u6RNQgo1+BIsJZGq0NRlNx59IQvX7wkzVIMUBn4+N97fKWI2m3KokJ0n35rRblGOgLR3SFOEpJ7n9Jpd6nmU6yE+boCo0niJqOzEwgT0skIN4hQZmOLWFga0sGRLpXWjI5f4+zuUKiQ6fiax189Y54WnP76GiaXGATZ9QDXCxCdnQNb+SHWWJzVHJRCBBF1keNIhbP3EOVY6nWOEAJRl2jhAGB6d1HG9VEWdNLE7H2CyBZYa3GkwioPmTSp8xyn26KuKuTgb6QuQUgQDqrs76O0xfgB5Ck2bGKUhyMVcnxJEYT43T5umFBfnFJ3+6j5GFGsscD/hVp6BNqGUEQAAAAASUVORK5CYII=">linux expect自动登录ssh,ftp«海底苍鹰(tank)博客</A>                <DT><A href="http://www.redhat.com/archives/fedora-olpc-list/2009-August/msg00141.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABxUlEQVQ4jY2SsWsUURDGf7PKwj3Orc5KLAJpNipctBIkhX06WwkEAmnPPyBYiIKtYCNIjjRBAiIJYpMuEAg59zhMNkUgkJBq0yTIW243OBa+XV9ynPjB8IZ5M9/MN+8BaGWxMfpZRA9Ad0F3QOdFNDamPv1cQMUFAJgXYVGVLREmgDv652pLhCcu/kLrdGJjCPCw6C4/NBqsu8IAmFElAiZcUYXUWiQ2Rh/n+RWSyPk/gV/Orzq9F+GjN8WNr2X58inwANgV4Z0xHF9eci7CPaD0lnQLOBfh2BjOyhIA2QENgCaQirAObDcapNbWOwm8SQBORThyUiU2Rl/nOXdVaVbaXMIPJ8knqKQ0gbciiHsSFvKcGaetIrpgPAK3j/oVbi8v863T4USEC1ccucTrFgEnImxXElJr6SUJ96em+LS6ype1NaKNDWbHdK/0p9YivSTR/cGA53NzDIdDwjDke7/Pm6UlANqTk3Vh//CQvc1NUmv/sqlDlmWaZZleRy9JtJckte9/Z0BvVkStVmtk1KIoeDQ9zatOh4ftNvuDAQDPZj1xIy3HIMsyBXSl270S/2+ClW63luJDVL2P/Q8URUEYhiPx3/UHUxIpTUatAAAAAElFTkSuQmCC">Re: [Sugar-devel] F11 for XO1 - Fonts</A>                <DT><A href="http://blog.sina.com.cn/s/blog_8ea8e9d50101jtfa.html" add_date="1440502939">linux（CentOS6)下的wifi热点安装配置------hostapd-2.0_liujun_live_新浪博客</A>                <DT><A href="http://koumm.blog.51cto.com/703525/1292146" add_date="1440502939">kvm虚拟化学习笔记(十一)之kvm虚拟机扩展磁盘空间 - koumm的linux技术博客 - 51CTO技术博客</A>                <DT><A href="http://hi.baidu.com/yeluyezhi/item/39129c1a5a61e8703f87cead" add_date="1440502939">premature end off script headers:index.cgi的错误_我叫DB_东波_百度空间</A>                <DT><A href="http://qikangwei.blog.51cto.com/2282397/1204670" add_date="1440502939">Postfix 简单安装与配置 - 我的青春我做主 - 51CTO技术博客</A>                <DT><A href="http://www.linuxsir.org/bbs/thread189583.html" add_date="1440502939">请教：root,bin,daemon,adm这些用户的权限有什么区别？</A>                <DT><A href="http://vbird.dic.ksu.edu.tw/linux_basic/0560daemons.php" add_date="1440502938">鸟哥的 Linux 私房菜 -- 认识 Linux 系统服务的 daemons</A>                <DT><A href="http://www.linuxmr.com/html/special/2012/0519/10.html" add_date="1440502939">Courier Authlib概述 - Linux大师之路：成就linux大师梦想</A>                <DT><A href="http://ichthus.blog.51cto.com/3475712/743032" add_date="1440502939">虚拟用户、域的postfix+courier-authlib+mysql+extman+extmail+apache邮件系统 - 近水楼台,向阳花木 - 51CTO技术博客</A>                <DT><A href="http://cexpert.blog.51cto.com/5251990/988598" add_date="1440502939">基于虚拟帐号和虚拟域的邮件系统： - cexpert - 51CTO技术博客</A>                <DT><A href="http://blog.5ilinux.com/archives/2006/05/postfix_cyrussa.html" add_date="1440502939">张微波的BLOG: 笔记postfix + cyrus-sasl2 + courier-authlib + Courier-IMAP + postfixadmin</A>                <DT><A href="http://www.xiyang-liu.com/2013/06/building-stronger-e-mail-server_base-and-concept/" add_date="1440502939">搭建一台健壮的E-mail服务器—(1)基础知识和概念 | 大西洋的技术博客</A>                <DT><A href="http://sgh211314.blog.51cto.com/734383/287672" add_date="1440502938">Linux系列-Red Hat5平台下的Postfix邮件服务搭建（一） - 歆语轩网络技术 - 51CTO技术博客</A>                <DT><A href="http://www.51cto.com/art/200801/64956.htm" add_date="1440502939">9.3.4 SMTP认证的配置 - 51CTO.COM</A>                <DT><A href="http://www.cnblogs.com/ssgblue/archive/2011/07/20/2111267.html" add_date="1440502939">centos上布置postfix邮件服务器 - 石头歌 - 博客园</A>                <DT><A href="http://bbs.konotes.org/workdoc/dialupadmin/dialupadmin.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADQ0lEQVQ4jSXBXU9bZQDA8f9zeuhpT1vWF17Ky1LqqAJlbgMVxxLjXHQmZlmMGm/9BCbGzGsu/AJ+AePVosaoWRQvvHDqpkIwGtGxCCxAS1v6QtfX03P6PH288PcTI2NJLaWkrxSWFWAhmyUZi/P39l+EbZuZsTFu5nL8cHrKfcMgqwcUhGC3XqfmOviCtr3muT1k3yUcTWCafjIzMyQSCZ6YmmFVaLorV3jecwlWyhz6DA56PTQap+9h1ms1DAOUGhCNDLOwMM8AifAPoaplbj/6l6elR3Y2zfjhI/ZrNWqOw7Rp0hQGJmhMf5DxWJz5i0vYI0ma5QLnswtcXbpEs9vmYGODj25/ylC5QgvFRDBAv+cCGsNvBbECQUaSSYwhC6fTIT09yQfvvcuVV17mhUyGFa2ZXl7iJBwipuE5oKUUHmBKpZgYGWXibIp+q07L81AlycDzcE2TvZ0d1PExpdwRPb/FajZLsFBES4lyHMRkKq3n5+YoHB2BMLAjIUYTcc7NpFianUXlC2zu7/LL5hZjkWFoNkiEwrw4Nc2Hv93HzGYXCds2D1sN3nnrbf45OEQqydffrPMwZGNqTa4viRgG9XqdlaeeZLgvabg9XgrY+GrV2lpqNoPT6dB0Osi+RzWXJxK0yFy4SP60zkjAIru8zLX5ebKRCJ9tbRF3ukwNFEarUafd6XL95pv0Fezv7eIfKNKRCG6hiHGUI55MEjsT5c69e3x/90euh8JYUvG7Uvi01muNVouQ8LE4N4cSAi0lw9Ewo2Gb85dXET6T9S+/Im0YNONRuq7LF8UiBa0xhTDwuh1Omg2cBztMxYaZyqSZPTvB1ddu8Oudb/np40+YME0WE3H+UAN+bjRQaJTsI0DoC0vP8v6tW0RDQWSvgxTwuFzm7vp3bG9s8uozy7gIqJ1SPThgL+An1+lSfdxAGIZPW0GbG6+/QSISwWu3KVVOQPeRpQLj40l61RqXkpN4qRTTx3m2W20+f7BD4aSEEELooBUgFoujDQMGmnA0xuXMOWx7iLqUVPNF8qUKntcjHLTZKxXpdtoAmBqN8Bn0XJdAyEYqRaVS5s8hP0iXwUDS6EvGLQt3MMA5znNGCLr87z/LBIhrHfE+ggAAAABJRU5ErkJggg==">guide/Dialup admin</A>                <DT><A href="http://ethanschoonover.com/solarized/vim-colors-solarized" add_date="1440502939">vim颜色</A>                <DT><A href="http://bbs.konotes.org/forum.php?mod=viewthread&tid=4822&highlight=mtu" add_date="1440502939">ko笔记帮助</A>                <DT><A href="http://book.51cto.com/art/201403/430790.htm" add_date="1440502939">1.7 常见问题与处理 - 51CTO.COM</A>                <DT><A href="http://blog.51yip.com/linux/1462.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC+UlEQVQ4jQXByW5bVQCA4f/cc+7gO3iKU2dooqoqJUk3hUoFiQUqm+7KgmVfgYfgIXgMJJ4AqZtuiYACDTQNcZvBju14uL6+0zmH7xMPvv/RtnwfAbTiCCkddG2YpTP2NvsIR3B6PaQbxRhj6CQJnlSMZ3MWVYXab7eYpCm3q5TaWhbTIauipNKavDBYKdCm5uJmTCNogBA0XI/z2zHLqwHqNs24zTJWiwWecvGjiJ2du8RhzDzLERh6rSZ5UTBdLvnwcUCz08PqiuXVe1RWFYRewOHRI9I8I4kSqqpiPFswWaUIXVJoQ7eZEDZj5qsVs9WcuBGx9dkzVK0NpdG8HQwodU27XbFKU3qtGGFr2lFMOhtx/e9veK4LjYSNzV02wgYX0xvUeDhAWkttQesaZzWnCGKyqgEGhqNLpOuzePcGe3OBCEK8w8958Pw7Ml2ipGpgihWOKQmiNsb1CbC4GPa3+8ymElWumd0OcQR072zRaSb888tPiCBGSUfjhxGFDdnd3mV99heTk2PO8pzy/kOevHjJm9+PMVrjuR6T83f07x+w/fQbfF0h25t7PyjPI08XTF79zPL8LaaukbpiXZScn/wBBrLhB7QxNO8dEXV6OFGHXn8btTj9E3+9JrE1S6txwiamLkAqsqtz9ja/4PDr54wOHuPlC0QjJGp2COIWVteI9u6RNQgo1+BIsJZGq0NRlNx59IQvX7wkzVIMUBn4+N97fKWI2m3KokJ0n35rRblGOgLR3SFOEpJ7n9Jpd6nmU6yE+boCo0niJqOzEwgT0skIN4hQZmOLWFga0sGRLpXWjI5f4+zuUKiQ6fiax189Y54WnP76GiaXGATZ9QDXCxCdnQNb+SHWWJzVHJRCBBF1keNIhbP3EOVY6nWOEAJRl2jhAGB6d1HG9VEWdNLE7H2CyBZYa3GkwioPmTSp8xyn26KuKuTgb6QuQUgQDqrs76O0xfgB5Ck2bGKUhyMVcnxJEYT43T5umFBfnFJ3+6j5GFGsscD/hVp6BNqGUEQAAAAASUVORK5CYII=">linux expect自动登录ssh,ftp?海底苍鹰(tank)博客</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">RFC 互联网标准</H3>            <DL><p>                <DT><A href="http://www.rfc-editor.org/search/rfc_search.php" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAbUlEQVQ4jaWTQQ7AIAgEd03//+XtyUjBIhGOCJNBlJKERhDABzB5JHHKS8IIRNeYnZFcgL9JdnmbCwZVyIynAsigJYPsXoYv8rpZc9mgBTi9s7DGnXIGaY9wvcZpemVgx9wCbIH/PDYkgd3v/ALiizMWt9VMQgAAAABJRU5ErkJggg==">RFC Search</A>                <DT><A href="http://www.ietf.org/" add_date="1440502939">ietf 计算机标准文档规划</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">linux 虚拟化</H3>            <DL><p>                <DT><A href="http://guyaping1234.blog.163.com/blog/static/34549799201262395939429/" add_date="1406690005">Libvirt和虚拟化工具的软件开发平台(The libvirt &amp; virtualization tools software development platform) - Aiolia的日志 - 网易博客</A>                <DT><A href="http://datahunter.org/" add_date="1406690475">夢想家 | 活一身, 學無限~ 夢不息, 心不倦~</A>                <DT><A href="http://www.baidu.com/s?wd=QMF&tn=baidu&ie=utf-8&f=3&rsv_bp=1&rsv_sug3=6&rsv_sug4=103&rsv_sug1=5&rsp=0&inputT=2693&bs=OCaml&rsv_spt=3" add_date="1406707543" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">QMF_百度搜索</A>                <DT><H3 add_date="1596439270" last_modified="1596439270">虚拟化项目</H3>                <DL><p>                    <DT><A href="http://www.cloudstack-china.org/2012/09/543.html" add_date="1396417169">Secondary Storage VM 介绍 | CloudStack中国用户组</A>                    <DT><A href="http://williamherry.com/blog/2012/09/14/virt-releated-command/" add_date="1396417184" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXElEQVQ4jaWTsYrCQBRFz2Yeghb5BsEqjUUgvxArv2NsbFLlP2z8hPyCpVjYpRCnFLQJBEtBJyHDbrFE0AQW1guvmMedw+XC+5rP5998IAFYrVb/+rxcLn8BzrnPErwDTqcT6/Waw+EAwHQ6ZbFYMJlMOgAPoGma5xRFQZqmGGNQSqGUwhhDmqYURfHi7QVkWUZVVYgIWmu01ogIVVWRZVkHIC2gVZ7niAjj8ZjZbAbAdrvlfD6T5/mLt5PgdrtR1zUiQhRFWGux1hJFESJCXdf9CdoSnXOICC203TdN89y/F/6SYDAY4Ps+IoIx5rk3xiAi+L7/dwdhGLLf7ynLkt1uB0BZliilCMOw00EHEMcxx+ORx+PBZrP5NYkwHA6J47i/ROfcczzPI0kSgiBARBARgiAgSRI8z3vx9iZou9BaMxqNALjf71yvV6y1vKsDaN+Xy6Vj7tPXp+f8A41y/M2KjWNrAAAAAElFTkSuQmCC">virt相关命令总结 - William&#39;s Blog with Octopress</A>                    <DT><A href="http://liyongxian.blog.51cto.com/432519/112609/" add_date="1396417224" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABw0lEQVQ4jaWTv0tbURTHPy8v7/VpzI+qxQylPiQWKsWhlNLRlkwuglM3C6VblyKlf0LHTIVSXYSOncRFWrAUdIiLU6gUYo2CNJpEG19e8vJ+dHj1NtdEBz1wh3u+33u+33PuvQoAuXzAVeL1I0Uhlw8WsqaUHzRUzMQNKVexXXbrjpR7+fUXUQCr7UtA2w+YzQx2CRYqNl9Kf6RcBMByfWn5FzQ0MdSHGwSCB4QOTh1PIj67261+FglNZcduiX1YoKOF2UyKdEzj048K1aYLwNTtOJPD/QBUW67E/1cgdDAzlsLxAl6t7Uqq27Um75+M0mh7bNeaEiYKzN0bplC12fxtSYRpM8nziVsABEBfVOHQdgUeOUOWCkd826tjOb5Yj9MD4jBATFOZf5AWuHBQ7qjYGcvFY5aLxwAsZk0yKYOxpMH4TYOtw0ZHC+duoVfs1x0yKYO647FVtsQgowAN7/KXHNcijMQ0AN5tHlBu/hcMX2IPBx+zJoWKTUJXeXE/nMP89xKff9YkXhTAdmUHCV1lpXjCm4dp7sR1Tloec6s7bBycdgkp5PLBgK72tJ7UVT48HeXt+j6lcx8JwtkpwLW+81/1tMhM/3fatAAAAABJRU5ErkJggg==">关于 Linux 下的 chroot 的些许介绍 - Binary World - 51CTO技术博客</A>                    <DT><A href="http://blog.chinaunix.net/uid-20940095-id-3284559.html" add_date="1396417239" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADGElEQVQ4jU2Ty2tcZRiHn/c7M5k5mWY6aa5N2iRNk1hIvYQm6EJBxKYL0YAaSqXgHyB4QQqiVFxIES0iuKgLUYmgQkVEJQZLSwRbrDS1LQklLZQ0sYkzyYzNTHLmXOZ8r4uo+Ns/v9XziFpVBAAsiiAIFjbnofg7+BVsrhuahjBOG/9NQVESyP9BRa59hF5+DyksgFVwDKam4CrseRL74KuY9kdQFMFBVGMFg0ZldOoo5uoktCnaM07RvR+PDDv0DzJr55CbV7AJCJ+eJN09CgIJxYANkakjyOyP2KHH+S77Bp8udXIrDNF0Hdsb6nl450u8sOtbulbOcKuSo2O9RDbXiGhsldlT8P2LcOAgJ82HvD39J6ltAZkWl1yzS+/2FIWqkJYU7zzQTHtYohxs0Nfbj1GjMHOCuM1lwr7G1zMlLh87wFsH+/CJ6czW8fJgJ5OH7uGV/Q28/usigZvBqQnF4ioG7yrk78DeMd49n6SeDXobUzRnktjIYb0aM3WnjIMw3NzIpaU8Zxc2yWUzeJ6HkaVfIAErMsz1xb9Ii4NiiEKwfkihVOX0zQK3/YDQKuLBhdtlkok0YWxJ2M1ljCNU4jRUIxy2tIiimGq5ik0IYVIwUQ1JKpHns3Y3wBoLsSVhWu5Da9Bq1ki6Pfh+iAKmZtnIexRixaqQNILEDpXVKjv7BRFwEAytD6EJ2BFMc2iwiYvX1whjGB1sZaS9gXQlZKyvie5shp/n89jCJo8N5PB9j2Q6Caqq9vSI6gdG5y58qe4zk/rE8Z90IV/WMFJdrXjqB5F+89uibjv8lY6dPK+lYl7nZq9pcW1Ft0xcOot+MYrs7mG6a4LxUz6l0jIDPTkaGhwW8wGrhYinHu3g4+f3sr5RAydgT3cvYq2qiIWZE3DmONrRQr7/TT6Zv5dzN5T1wNLbWsf4fo9n0xMEK7MsDH9OV3cfrusiqqr/xIVceR+dPgaBRXY3YRuHEElBLY9dvoRTFNi1j3hsEifbg2r874FFMVuZFueQuc9g8Qe4ewNU0GQK2kawA8/h7DsKTv1WqQh/AzdDhfsudrbwAAAAAElFTkSuQmCC">linux容器技术-lxc创建虚拟机的执行过程分析-liujunwei1234-ChinaUnix博客</A>                    <DT><A href="http://wenku.baidu.com/link?url=-DoV1YyKDc9JvsIbE0JiHpqlfbWJRcB_Z3S8D2GT88XDGuHVpGtZNFHr2aGC_Us1dFz8GP9G-GCTEYogxyaWQDvrGAlu4kBpmZ85s8y-XmC" add_date="1396417247" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">centos6 minimal版本下配置lxc(linux container)_百度文库</A>                    <DT><A href="http://yansu.org/2013/03/20/different-bewteen-kvm-xen-qemu.html" add_date="1396417253" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADKklEQVQ4jU2TTWzTdRjHP7//G31faTvXQjfXsZalwsYGTo2GGJQsBBOi8WIUo2eCRw96MdF4NnrQRBOjCfHCQTnodCIaqC8FwzCb7YDNzdm5rXvp29ru//bzsCk+yfd5Ts/h+8n3K4Yu/ikB3K8/pHd5kvHxcQKBALquYxgGKysrqKqKoiiYpkk0vo/wuXfxpEcQQqBF9qi880iEty5vcfX6ddJ9KV46M0ZAV7l1ew7Tskh0RtEDHUzkfmG9Wkf5/RqkRwDQ4j6Vz3+eYi7/A45tcfPyJdRyCZDAvYMvyNjJEzz57FmG7svTaDdRvX6UQsXiwq1Fms0mJ48/imqb//sCxK7aW6S6kziOg4LEXJwBQAEQjoVhGPj9Pt7/+AK5yWmklCDBdRxMy+bGVAGz2cDn9bDZNPH0D+1YANCTB1ksb3D+6AiHe3uYyOWZXtrgmceOUphb4NubRYI+LxlLIxwKYek+dFeCAhoS9t3+jueef5rDwyP0dycJBENEwh2sbayTHT5GIpVBCkHn/b28vtXE3CzzweyviIMPoUgk/vBeMvEozc0yfqtBuqsD73ad9eJvhN0mfbEAB6J+Au42im2SiXfiqPoOAyEEd8ID5O4uUa830Ow2itXCaTUIhkJI20SxWihWC801qVRrvHetgJYavAdRi+3n+8EXuPRHHUs1kFJieL0kEnGW1yos/r0KQK64wKdOmtkTryAUDeQuRITg3OODvNg3ylcXP+P0UD/TsyUq0sCvKWRiftZMeKPo8sSpp4h5FLZsydXlNuKTmZr8aKZGl1clZChUK1WyM1/y2qljLM/PE4tFKG1Lzl/5i8bwad5+MIIEDAVezW8gXNeVU5smb37xIz21eXAlP1U8GOU7vJztYLLc4pt1H0e6IwyEJLPlCvn4w+jRxE4OilWLVFBnbM8a4sgoq7U2ybklltQBJgo3oDsLQYO+VA/+YIDjh7ys5vKUoomdMp29skrSr3Go4bDfcnCl5IFkhGw8xGw9yGimh866S9feEKbtYtoOXT6N0m7SNUfCQsMm7UiEEABEQwF0TcVOHaA3lcJeqf1XDSn/XTvzDwOzTgyL+szXAAAAAElFTkSuQmCC">虚拟化与云计算中KVM,Xen,Qemu的区别和联系 | 闫肃的博客</A>                    <DT><A href="http://blog.csdn.net/dadoneo/article/details/6004203" add_date="1396417261" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">[虚拟技术]Linux KVM与Xen，QEMU的性能比较 - ·没有风雨躲得过，没有坎坷不必走· - 博客频道 - CSDN.NET</A>                    <DT><A href="http://blog.chinaunix.net/uid-16361381-id-211999.html" add_date="1396417275" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADGElEQVQ4jU2Ty2tcZRiHn/c7M5k5mWY6aa5N2iRNk1hIvYQm6EJBxKYL0YAaSqXgHyB4QQqiVFxIES0iuKgLUYmgQkVEJQZLSwRbrDS1LQklLZQ0sYkzyYzNTHLmXOZ8r4uo+Ns/v9XziFpVBAAsiiAIFjbnofg7+BVsrhuahjBOG/9NQVESyP9BRa59hF5+DyksgFVwDKam4CrseRL74KuY9kdQFMFBVGMFg0ZldOoo5uoktCnaM07RvR+PDDv0DzJr55CbV7AJCJ+eJN09CgIJxYANkakjyOyP2KHH+S77Bp8udXIrDNF0Hdsb6nl450u8sOtbulbOcKuSo2O9RDbXiGhsldlT8P2LcOAgJ82HvD39J6ltAZkWl1yzS+/2FIWqkJYU7zzQTHtYohxs0Nfbj1GjMHOCuM1lwr7G1zMlLh87wFsH+/CJ6czW8fJgJ5OH7uGV/Q28/usigZvBqQnF4ioG7yrk78DeMd49n6SeDXobUzRnktjIYb0aM3WnjIMw3NzIpaU8Zxc2yWUzeJ6HkaVfIAErMsz1xb9Ii4NiiEKwfkihVOX0zQK3/YDQKuLBhdtlkok0YWxJ2M1ljCNU4jRUIxy2tIiimGq5ik0IYVIwUQ1JKpHns3Y3wBoLsSVhWu5Da9Bq1ki6Pfh+iAKmZtnIexRixaqQNILEDpXVKjv7BRFwEAytD6EJ2BFMc2iwiYvX1whjGB1sZaS9gXQlZKyvie5shp/n89jCJo8N5PB9j2Q6Caqq9vSI6gdG5y58qe4zk/rE8Z90IV/WMFJdrXjqB5F+89uibjv8lY6dPK+lYl7nZq9pcW1Ft0xcOot+MYrs7mG6a4LxUz6l0jIDPTkaGhwW8wGrhYinHu3g4+f3sr5RAydgT3cvYq2qiIWZE3DmONrRQr7/TT6Zv5dzN5T1wNLbWsf4fo9n0xMEK7MsDH9OV3cfrusiqqr/xIVceR+dPgaBRXY3YRuHEElBLY9dvoRTFNi1j3hsEifbg2r874FFMVuZFueQuc9g8Qe4ewNU0GQK2kawA8/h7DsKTv1WqQh/AzdDhfsudrbwAAAAAElFTkSuQmCC">kvm和qemu的关系-yepyang-ChinaUnix博客</A>                    <DT><A href="https://cloud.digitalocean.com/droplets" add_date="1411206415" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKUlEQVQ4jXXSO4jdZRAF8N98/+9ucvfhEnEbSRAFOwsJKCSiLCkCdjapbETQQEKCgmSr6EWxyBYaiBLWxirVLax9oIvx1dkk1kYFUwjGu4+7uf/HZ7E3FzV4ppphzjAz5wRQgijgYnlW5WXFc8IRReBXyTe45q349J+ccA+vl75l65LTkp7Gv5HR6RTXFOcN4g4EJRk4iE/0nTTWqGQJtXpK7oFaY1429h2eN7CViE5n3byTxsZ6ss637noJR3FU40Wtz83Jdu3pO67z3v4JF8sx2XWdYk5W23DTWcNo/ReDckl2Qa2RJI0TSeW0StKT1H4wcMYwWqsl7z+qhFOlooRBrKl9qaeShcorCSd0QpK0rhKd1ZJtRrOvTBTDaJ2SQGcDoUHxTFYs6IzsafEj2NTdt/5wWqv8pFGjh8NJeBRH7HnE227sd8f9A/4H2SBGs2x99qxFfWGsGMQ2WFXZ1Gg96YCeVlH8kp0rBxw25zcTV0xcsIibJh7AyLnyhNt2DKOhhOwMikooricPeUPfbYecJ4p5oViRLStW3DWeqTJwVeWYWjuNjTz1OknfpbJkZFn2h8YStjzsKW+Wx1VelR1XG1vQt+MD78T32bb3rbis9ZrKz3r+NPG0edtaS7jhoEOamZX7dn3md2uUlNyy52xsSxYseBCPmRhZiy3cQdYgISl2fegvL/godokuzxQovrCj09m16J6Ns6JW3FL7SuNj78bXU0IQ5W9ITNyZNN1KNQAAAABJRU5ErkJggg==">DigitalOcean Control Panel</A>                </DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">libvirt</H3>                <DL><p>                    <DT><A href="file:///usr/share/doc/libvirt-devel-0.10.2/index.html" add_date="1398309200">libvirt: API</A>                    <DT><A href="http://libvirt.org/uri.html" add_date="1419471915" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADRElEQVQ4jYWTTUwcdRjGn/c/MzuwsG0psLAslEItqbVUrAVEW7UaE02tGuy2RG1IYxqC3vRAG2Pk5MGD8aCnRg0NSVuwYhVMe2nohwkg8rHQLbvuYrvbIt0tzGy7y37NzOuFmtZD/d3e5M2T5/D8gEfg8XgkAPSoH+k/N3V3d4vh4WEAgM/nYwDo++KbcmfLzrc3Njd+vLV+u9M3Pj4JgPFAOnk8HtHf32/eT+IT0wWfRAZfDCcSnqiRelUjs8ztqkB+PImrZ4f2eycnzwAgWg1hAOjsPFq7rsT+4YK+VLKoojGnyI/rMOFcuxbb3FXmenuhoSeTysVTAwOjvw56wIAMgD879mPdtcVf3roe83cc2PVubcrvg04pvNSwgwWzmSfLQltJirFQQNFyGcpzleypdZRsnqc7AanrWNcRb+pC31JxZl/2XqQorqnGnuYmK70YQ5GrlLR0Slz800cTkRukJZNYMQxWbDZ7Qc4I3IyEx8SVO7fba5/YvK6osCH7UceX5u9TI3Ium5a2bKqj3sEhOjszgVuaRhYzS0LABmHl7CrL5WX7ANiktLOy5rkde3e/UvOYMIysuJtZwQ99p/HB4cMUu7mIoB6lAocDbFoEIgIYLISQLLNUjcQuSLsbW6JXo5FD5UpO/fzrrzgeuyXCoSDFUwYOvrYXXu8MdBlQZIWZGQymLDGvUfLVgnQuLM6d7PEvZ83LR/sGsLW60iqu2sTffX8CI1MTmPXN8etPtUAsxTlLFixiyCSsKmE3tztKSVHzmgQBxjZVPcOuanrmjTbqONgOU3Lws60HuHfwFPIE+Hl3HfLjKdSrRfyyo0JqILuyPD+vh/4KnJcA4NCWhtvTZLw3u6wX7qwp5uNXTpNiX+Bw4i5rcxFK30viyVKXVV+5UZoaHZ0dGx/99vzQz5/GNe0nAkAM4IUjncdH2Xp/V0Uka2OntMHmklz2Ksx5/8BKIp7e4HazHtene3t62gDc+Hf7AAQAq/2d9qdFedlvhWvWq7Z0Bom4Hv174fpIKBg62dTc1BIMBqovX7rUxcwBACAiAmA9ZFpra9t+g4035/z+yYBv5hyAa6szl1fFyzw4/f+lm1msNgQz3/fmIf4BItV8ffewUGcAAAAASUVORK5CYII=">libvirt: Connection URIs</A>                    <DT><A href="http://wiki.libvirt.org/page/Main_Page#libguestfs_.2F_guestfish" add_date="1461238343">Libvirt Wiki</A>                </DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">cgroup</H3>                <DL><p>                    <DT><A href="http://blog.chinaunix.net/uid-16763274-id-1990130.html" add_date="1415859000">Cgroup用法解析-flycentos-ChinaUnix博客</A>                    <DT><A href="http://www.cnblogs.com/lisperl/archive/2012/04/23/2466151.html" add_date="1415859014">Linux Cgroups详解(三) - lisperl - 博客园</A>                </DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">docker</H3>                <DL><p>                    <DT><A href="https://registry.hub.docker.com/" add_date="1415776438">Docker Hub Registry - Repositories of Docker Images</A>                    <DT><A href="http://www.oschina.net/translate/enter-docker-container" add_date="1415785527">如何进入 Docker 容器 - 技术翻译 - 开源中国社区</A>                    <DT><A href="http://www.linuxeye.com/Linux/2019.html" add_date="1415961063" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADNUlEQVQ4jX1TzW8bdRSc99tdr7u2kVrbSe3WdkDQL1zSkBKIaNKWUOglF0CJwgFVluiFXpDomf4DBaSIQ27NsSCBUDkRH1JiEJQ6qLVCmmA5JlTOx9rOWvbaXu96HwdSlIDEnN6bp3kzl5GwHwIA79k1AJ5dzt3laK+A/jXz5ORkstVqvZdIJIYlSTrKzJJlWXq5XM7quv7l/Px8moj+MRFPxMyM0dHRj/L5/D1FUa4HAoFz8Xi8r6+vLxYKhV4UQrxvmuZ3AwMDt2ZmZrS9rgSAh4eHr1Wr1elAIMDBYND2+/2S1+slALAsC/V6vWsYBhmGITPz7ZWVlXeJiAkAxsfH47lc7jfbtg94PB6WJEkSQrAQfwd0XRfMTLZtu47jdIlICYfDby0uLn4tAKBQKEx1Oh2fqqpdTdNEp9NBo9GgdrtNrVaLmqZJjUaDvV4vaZpGlmW5rVYrxcxCZma5v7//VVVVeWRkhHp6emhpaYlXV1dJ0zRIkgTTNBEKBmlwcBDNZlP8cv8+bW9vvzQxMRGQ7hKJ9YWF6xcvXDgcj8W42WzSy0NDZBgG/H4fQqEgVNWL1y9dQrVS4Wg0SpFIhNbW1qQTp09/IeZv3JCtdltLJpPY2Nyk2dlZeDwKTp08joPBXhwKRRCPHcWpk8exkMlgLp3m55NJaJpGdrOpyczcSSQStYe5HE9NTfFrY2NCklX+ff1nOvusH5GwD998b2B9s4abNz8hx7GRzWa5Vqt1hRA7MgBWFGUxk8mcBdB97pmnxfqjX2lMe8Cpy6OkRfw4vPUD30nnoR87D9Oy3fTcHDmOUywWi2sEAMFgcEiR5R8PhnroiA/d6ZGifOKiS270HLtKFPLOHbIKHv74ttr9dquXWzsbSr3RvKbr+ucCAFUqlXsC0ofl7Q3xyuV3lNiVW1R6HHHJkV1ZVai6cch1Eik6/8FnslWvKm3LntV1fQYAPSkPlbZK07pefqNW1dN/eM5Y5plPRf7RU1Lhpy1sHUiJx0dS3T83Kw+MSvlqqVS6AsABwP8pEwCEQoFjb7599YWwT+516rowvJFq9u5Xy8sPl3MAbPwPBPO+p/uwe5P2cn8BcmB70lsND3QAAAAASUVORK5CYII=">docker详细的基础用法_LinuxEye</A>                    <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-lxc-containers/" add_date="1415961094">LXC：Linux 容器工具</A>                    <DT><A href="http://blog.csdn.net/wsscy2004/article/details/25887785" add_date="1415961153">Docker网络详解 - edwardsbean的专栏 - 博客频道 - CSDN.NET</A>                    <DT><A href="http://www.songtaste.com/user/album/a49575" add_date="1416212000">素莲花 yue29004034自编专辑</A>                    <DT><A href="http://www.csdn123.com/html/topnews201408/90/4990.htm" add_date="1416219569">Docker 数据管理</A>                    <DT><A href="http://blog.e3rp4y.me/blog/2014/04/07/docker-with-openvswitch.html" add_date="1416273228">pipework -- docker网络增强工具</A>                    <DT><A href="http://www.oschina.net/translate/dockerlinks" add_date="1416288039">Docker 中如何连接多个 Container 协同工作 - 技术翻译 - 开源中国社区</A>                    <DT><A href="http://www.cnblogs.com/lisperl/archive/2012/04/13/2446179.html" add_date="1416366918">LXC(Linux containers)常用命令介绍 - lisperl - 博客园</A>                </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">kvm</H3>                <DL><p>                    <DT><A href="file:///usr/share/doc/qemu-kvm-0.12.1.2/qemu-doc.html#install_005flinux" add_date="1416369387">QEMU Emulator User Documentation</A>                    <DT><A href="file:///usr/share/doc/qemu-kvm-0.12.1.2/qemu-tech.html" add_date="1416369400">QEMU Internals</A>                    <DT><A href="http://zk2052041.blog.163.com/blog/static/137723720128260384768/" add_date="1396417266" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAcElEQVQ4ja1RQQ7AMAhiS///ZXdyMYisy8bJEoqowEccigwgBnHTN6J+zg+KkwYszHet2WSpqC4ywxpMu9gyCCBqArPYd115rNMJ1A64gYzI59s5ZwN3qu9ar0k0pWDcBkrouMf4KeTo4xKnERz/Cy6pAjoL4fNqsQAAAABJRU5ErkJggg==">qemu/kvm/qemu-kvm/virsh的区别(转) - zk2052041的日志 - 网易博客</A>                    <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-virtio/" add_date="1416898622">Virtio：针对 Linux 的 I/O 虚拟化框架</A>                    <DT><A href="http://os.51cto.com/art/201201/311464.htm" add_date="1416901780">红帽的虚拟桌面：手把手教你安装配置SPICE服务 - 51CTO.COM</A>                    <DT><A href="http://smilejay.com/2012/08/kvm-vcpu-binding/" add_date="1416907221">笑遍世界 » (KVM连载)4.1.5 进程的处理器亲和性和vCPU的绑定</A>                    <DT><A href="http://blog.csdn.net/cybertan/article/details/8115866" add_date="1416981549">使用 monitor command 监控 QEMU 运行状态 - cybertan的专栏 - 博客频道 - CSDN.NET</A>                    <DT><A href="http://blog.chinaunix.net/uid-20940095-id-3371268.html" add_date="1417410307">kvm 存储栈分析-liujunwei1234-ChinaUnix博客</A>                    <DT><A href="http://www.365linux.com/kvm-in-kvm.html" add_date="1417421751">KVM嵌套虚拟化 | 365LINUX在线教程</A>                    <DT><A href="http://smilejay.com/2012/08/kvm-vcpu-binding/" add_date="1416907221">笑遍世界 ? (KVM连载)4.1.5 进程的处理器亲和性和vCPU的绑定</A>                </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">xen</H3>                <DL><p>                </p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">lxc</H3>                <DL><p>                    <DT><A href="file:///usr/share/doc/lxc-1.0.6/api/index.html" add_date="1416377639">LXC: Main Page</A>                    <DT><A href="http://www.cnblogs.com/chinacloud/archive/2010/07/15/1778078.html" add_date="1416383448">Libvirt 虚拟化库剖析 - chinacloud - 博客园</A>                    <DT><A href="http://blog.sina.com.cn/s/blog_999d1f4c0101dxad.html" add_date="1416383462">使用libvirt管理lxc（virsh篇）_linkiris_新浪博客</A>                    <DT><A href="http://purplegrape.blog.51cto.com/1330104/1343766" add_date="1416387348">CentOS 6 使用 LXC - 专注Linux 运维 - 51CTO技术博客</A>                </DT></DT></DT></DT></p></DL><p>                <DT><A href="http://os.51cto.com/art/201308/409041.htm" add_date="1418875130">系统自动化配置和管理工具：SaltStack - 51CTO.COM</A>            </DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912178">systemd</H3>            <DL><p>                <DT><A href="https://wiki.archlinux.org/index.php/Systemd_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)" add_date="1440502938">systemd (简体中文) - ArchWiki</A>                <DT><A href="http://blog.chinaunix.net/uid-27666459-id-4160921.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADGElEQVQ4jU2Ty2tcZRiHn/c7M5k5mWY6aa5N2iRNk1hIvYQm6EJBxKYL0YAaSqXgHyB4QQqiVFxIES0iuKgLUYmgQkVEJQZLSwRbrDS1LQklLZQ0sYkzyYzNTHLmXOZ8r4uo+Ns/v9XziFpVBAAsiiAIFjbnofg7+BVsrhuahjBOG/9NQVESyP9BRa59hF5+DyksgFVwDKam4CrseRL74KuY9kdQFMFBVGMFg0ZldOoo5uoktCnaM07RvR+PDDv0DzJr55CbV7AJCJ+eJN09CgIJxYANkakjyOyP2KHH+S77Bp8udXIrDNF0Hdsb6nl450u8sOtbulbOcKuSo2O9RDbXiGhsldlT8P2LcOAgJ82HvD39J6ltAZkWl1yzS+/2FIWqkJYU7zzQTHtYohxs0Nfbj1GjMHOCuM1lwr7G1zMlLh87wFsH+/CJ6czW8fJgJ5OH7uGV/Q28/usigZvBqQnF4ioG7yrk78DeMd49n6SeDXobUzRnktjIYb0aM3WnjIMw3NzIpaU8Zxc2yWUzeJ6HkaVfIAErMsz1xb9Ii4NiiEKwfkihVOX0zQK3/YDQKuLBhdtlkok0YWxJ2M1ljCNU4jRUIxy2tIiimGq5ik0IYVIwUQ1JKpHns3Y3wBoLsSVhWu5Da9Bq1ki6Pfh+iAKmZtnIexRixaqQNILEDpXVKjv7BRFwEAytD6EJ2BFMc2iwiYvX1whjGB1sZaS9gXQlZKyvie5shp/n89jCJo8N5PB9j2Q6Caqq9vSI6gdG5y58qe4zk/rE8Z90IV/WMFJdrXjqB5F+89uibjv8lY6dPK+lYl7nZq9pcW1Ft0xcOot+MYrs7mG6a4LxUz6l0jIDPTkaGhwW8wGrhYinHu3g4+f3sr5RAydgT3cvYq2qiIWZE3DmONrRQr7/TT6Zv5dzN5T1wNLbWsf4fo9n0xMEK7MsDH9OV3cfrusiqqr/xIVceR+dPgaBRXY3YRuHEElBLY9dvoRTFNi1j3hsEifbg2r874FFMVuZFueQuc9g8Qe4ewNU0GQK2kawA8/h7DsKTv1WqQh/AzdDhfsudrbwAAAAAElFTkSuQmCC">systemd 详解</A>                <DT><A href="http://blog.linuxeye.com/400.html" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACBElEQVQ4jYVTQWgTQRR9P7vb2d3ssBtjCFhRa1tUgohQIhV68BjstTdbelCE2JJWSnvx0KtQDxJEkAZBvIQc7UHUQqDUgxQPXgIiNngQBPWg3WzcTHZ6MKlx3dR3+zP/zX///T+Efsjl2OjI+cdEpLyXjRkUi7+i0igilkOFQloL2EbMMMdAgGh6O223Obm7fv9LN6dLiEU9qAVsMQD9EF7jmnC9aUWSq8TZYp+if+PU7IIzPLeSC5+fvnV70pldcA4lAwCmphQAsCwrbzvOS90wNpPJ5Fzv3WGgDrlo27a0LEsmEglZrVallPIJAEgp+7bwu38tfoFzLm3bFqqq+tlstiX/YKLzyIF3vSbGAIAxOktEQRAEMAxDrdVqSqlUEvV6vV0ul88BQKVSiVRBAGAYxjjnXHLOW5xzYZqm0HXdT6VSEsCVcOFeBRIAeZ73JgCeEZEKQFFVVWGMaa7rvgCw1SkUdElRrsqW729ojNkEDAJogOiptrd3swl4/Qw8wOD1+ePHVlfNTpgEcBQAzizdGUpPL8XD+f8o4GMTA3Ff3D1y8fK37zvbHzKZTIunT9wg0R7/tL62idAmhlc59vnRva+Q+Kna1uvR+ZV3/vbbj9oAe+hLvELPH+inQAIg8+SlrZghHVXXr6IdKG0hZnYfrD3/b/9hjBSW88P55e7oIme/D5fRrauNTiuzAAAAAElFTkSuQmCC">systemd详解 | Linux运维笔记</A>                <DT><A href="http://www.jinbuguo.com/systemd/systemd.html" add_date="1582105093" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB9ElEQVQ4jX2SPUgrURSEv7tZNeIPKGKloKARLMQ6hVHSCZLCIoWNhYqF2EnQ6hXa2NuIICIpJaVaJUUEf0qDVgqCKBYirviX3b3ziqyR17ypDsPMOXOZayRRQ33wPJqaiMd/GWP4gfOPOgiQKBRIpfj6wtqIrzsjgxTtMAbHoVjk/JzXV2IxwjDipbpZkmStfF+SymW1tengQEtLqlQkqVpVGNZlyFpJCgIFgb6/NTio9XVJurjQ+LiOjiJpzWYtkhSG0fqZGWWzquP2VomEVlb08VHnjGopHYdcjpMT8nnu7ri+5uyM4WEyGdJprGV+nslJhoZ+3rC8rKkpPT9rbU2jo+rv19aWbm4k6fFRk5NqbVUyqZ0ddHurxUWtrv4mOTzU9LSenpTP6/IyIr++5PvyfaO9PQYGSCaRqFQ4PubsjNNTJibo62Nujp4erMV1az3E/hQK9PZGlVWrNDQQhnR1sbtLfz/7+4yNRT1ExVlLEBCL4XnMztLdTSqF6+J55HJ4HsZgbVSfMQ7GEIthDJ2dZLOUSrS00NFBtcrCApubvL/jujhO7YhRzf36ytsbLy/c31MuUyqRyXB/z9UVDw+k02xs0N6O5EbhtrcpFkkk6OtjZIR0mnic5mZcF9/n8xPHqf03I2sxhiDAWhob+Q8kjPkLRqJjceu5CfQAAAAASUVORK5CYII=">systemd 中文手册 [金步国]</A>            </DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">filesystem</H3>            <DL><p>                <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-vfs/" add_date="1440502939">解析 Linux 中的 VFS 文件系统机制</A>                <DT><A href="http://blog.chinaunix.net/uid-25304914-id-3064886.html" add_date="1440502939">使用 /sys 文件系统-ai616818-ChinaUnix博客</A>                <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-lpic3-310-3/" add_date="1440502939">学习 Linux，302（混合环境）: Trivial Database 文件</A>                <DT><A href="http://www.slideshare.net/geekle/coreos-control-your-fleet" add_date="1440502939">CoreOS: Control Your Fleet</A>                <DT><A href="https://github.com/coreos/etcd/issues/915" add_date="1440502939">etcd timeouts and election problems · Issue #915 · coreos/etcd · GitHub</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912037">iptables</H3>            <DL><p>                <DT><A href="http://linux.chinaitlab.com/manual/network/iptables-tutorial-cn-1.1.19.html" add_date="1440502939">Iptables 指南 1.1.19</A>                <DT><A href="http://blog.csdn.net/dybb8999/article/details/52216893" add_date="1512013051" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">CentOS7 firewall-cmd 基础使用 - Hell的博客 - CSDN博客</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">iproute</H3>            <DL><p>                <DT><A href="http://wenku.baidu.com/link?url=SSVOEl36JV5sf8yHXqcZFpy3MVBOnvSTj4sc7dLAnDBoYB9RwhyekedDqqTxo0RwNJZ_0hw0LuaKK_X7kuv1xoHFJsvGWjCx_JkOC_KkVRG" add_date="1440502939">iproute2高级路由命令集_百度文库</A>                <DT><A href="http://www.ttlsa.com/linux/linux-double-gate-configure/" add_date="1440502939">Linux双网关配置（电信网通）</A>                <DT><A href="http://blog.csdn.net/kingdragonfly120/article/details/10022595" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">MINI2440 Hostapd移植笔记 - 且行且珍惜 - 博客频道 - CSDN.NET</A>                <DT><A href="http://blog.csdn.net/chcn00/article/details/4407161" add_date="1440502939">linux 网络详解</A>                <DT><A href="http://wiki.openwrt.org/doc/uci/network" add_date="1440502939">Network configuration - OpenWrt Wiki</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912160">vim</H3>            <DL><p>                <DT><A href="http://www.92csz.com/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADC0lEQVQ4jW2T3WubZRjGf8+bN02aZOnStFm6ZnGr2taMqqSK6NqsoyA4EWQOZDIYQ/wHFIYHInqkBz1QEaRMNnAwPwYbVLAeuA7dbMfqurVq50eUzNCm+Wg+33wsb97n8WAR68cP7qP74ua+ua9LAALoA1pAhr9xhUIhH4BpmsV0Ol3d0usBHEBKB/ac8HpmDrzwvPvz+OqFb26n5w4fPTaxPxbbFwwGg6rVErnNbPq7lR8unz11cu7h0I6J5+4dPvT1qdPW25XqMwD3vQmpH0cGlZo5q/LZddNS/6R85YpKTr+rytk/TJVdU4ljR9RbkAOGNSC+6nbPZbr8yNEYvp6gLuoG0khjVUoos4LltuGO3M82X1AvvvYqy5+d55dw+BLwswaw6HCcH3znPbRAN8oykYUiKpVAJeap35gHHNQzJepHn+XG9BnkgUmWOjpmAKUDPDo5+eBOvxtlFEHW4KtzMDdLaTVJsminoNuoBAIY6RTlXSEi408Q8fujy/H4GR1wxCKRCZWYh+gY9akTWB/MQB7yQAUoALlbt8i4PeT7+igtXGZ0797xj2GbDmzvbhr9pU/exz77IdVPr9LK3/1VAagBjXZ5qgbN3+IUUklGRoaCOJ3dOkCjUqMwu4K7UyLtGlUkFrAJFNsG2QVYwIZS7HZoBMJ+QQNNA8obwp5eF9sxqiDt0PIKCm1XWcBOwAWkAQnEXhyj5PdmoLGpAfWbuey3peFRsjmoVcGxQyA9UAa8QLW9iQIe6dWJHH6SLy+uLABlG8CviURq7ODTh5zXlzwdZgvLJuj0CxwegVMHOgW9vYKhAUEkOsiy/lDh5anpV6R5Z90GYDWbmXUpG49Fo0/p3/8kZEshNXC5BYGARn9Q0N8jCQ/1YIwf4fjpL95I3v79HIDtr3Sk1tYWV+0dhYEHhh+/p1Z3dtXuYLMUPgU+nx3PaJD58H7j+EeLr19buj7VvgjBv7C7XNGJgd0v7ZNyrE+TAW9AUd7TzF5MaQsXLm2cNOv1a1v1/xmwha52bAV3g1P8P9Gf0VdYMOtYE8YAAAAASUVORK5CYII=">moon&#39;s blog | 记录IT成长路上的点点滴滴</A>                <DT><A href="http://w.gdu.me/wiki/vim/vimcopy.html" add_date="1440502939">vim复制粘贴</A>                <DT><A href="http://blog.chinaunix.net/uid-20788636-id-2759213.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADGElEQVQ4jU2Ty2tcZRiHn/c7M5k5mWY6aa5N2iRNk1hIvYQm6EJBxKYL0YAaSqXgHyB4QQqiVFxIES0iuKgLUYmgQkVEJQZLSwRbrDS1LQklLZQ0sYkzyYzNTHLmXOZ8r4uo+Ns/v9XziFpVBAAsiiAIFjbnofg7+BVsrhuahjBOG/9NQVESyP9BRa59hF5+DyksgFVwDKam4CrseRL74KuY9kdQFMFBVGMFg0ZldOoo5uoktCnaM07RvR+PDDv0DzJr55CbV7AJCJ+eJN09CgIJxYANkakjyOyP2KHH+S77Bp8udXIrDNF0Hdsb6nl450u8sOtbulbOcKuSo2O9RDbXiGhsldlT8P2LcOAgJ82HvD39J6ltAZkWl1yzS+/2FIWqkJYU7zzQTHtYohxs0Nfbj1GjMHOCuM1lwr7G1zMlLh87wFsH+/CJ6czW8fJgJ5OH7uGV/Q28/usigZvBqQnF4ioG7yrk78DeMd49n6SeDXobUzRnktjIYb0aM3WnjIMw3NzIpaU8Zxc2yWUzeJ6HkaVfIAErMsz1xb9Ii4NiiEKwfkihVOX0zQK3/YDQKuLBhdtlkok0YWxJ2M1ljCNU4jRUIxy2tIiimGq5ik0IYVIwUQ1JKpHns3Y3wBoLsSVhWu5Da9Bq1ki6Pfh+iAKmZtnIexRixaqQNILEDpXVKjv7BRFwEAytD6EJ2BFMc2iwiYvX1whjGB1sZaS9gXQlZKyvie5shp/n89jCJo8N5PB9j2Q6Caqq9vSI6gdG5y58qe4zk/rE8Z90IV/WMFJdrXjqB5F+89uibjv8lY6dPK+lYl7nZq9pcW1Ft0xcOot+MYrs7mG6a4LxUz6l0jIDPTkaGhwW8wGrhYinHu3g4+f3sr5RAydgT3cvYq2qiIWZE3DmONrRQr7/TT6Zv5dzN5T1wNLbWsf4fo9n0xMEK7MsDH9OV3cfrusiqqr/xIVceR+dPgaBRXY3YRuHEElBLY9dvoRTFNi1j3hsEifbg2r874FFMVuZFueQuc9g8Qe4ewNU0GQK2kawA8/h7DsKTv1WqQh/AzdDhfsudrbwAAAAAElFTkSuQmCC">VIM中多个文件之间复制--&gt;粘帖-frankzfz-ChinaUnix博客</A>                <DT><A href="http://blog.csdn.net/namecyf/article/details/7787479" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACkUlEQVQ4jTWTzWudZRDFfzPz3I/E9jbeRM2HAbFGFCIuRIRGFxVLUXAjSEUR96KL6qKgCwWl+AeI/4KLLgWlLvzaWBVxIYKKIKgl0SQmuQtv0vd95rh409XsZub8zjn21en7hJw0wBIpKdmneoIlyAmBgDRwEgBUqNZQEgcDU8UUyAdwMpjf2GB85gwn19fpLy/hgyBluIlmZ5/J9z/wy5tvUFxQ3bvNchZfeIbFF59ndPpuMhM3IwlcIhHmlTKaI4Z9zIxSHYyWMnOCtcvvMv/0eQzITMyMaoEmBxzt/gsKYmFEfzTHdHcHq0EpCqqLtffeYeHJ80iViuFyNj+8wu7Vq/z326+0+xOE0zsxoreyRMz0usNSZf7s48w/dQ5RkUG0lZ9eu8jOJ59SFCSVxDEzDvf+Zrq3TeRN6TgrF54lqUDgGWx//gU7H3/W6ZZID4KAmkQtRDpGYiQuF7MPrhPqYdZZNfnmO4o6eFhCiswWwmm9AWsRBVHwpBJliAyk2nkcTlqDWYAKWOImqolQjy43SajFQ3Dj+l9IAjMMMX7iHArHs5KWFBmtO6UCJOmJLEGFeGm8+LbPDhg/9iiyxNKZWVlm9p57Odq6Th4ckE0HFxe9uTHD5RXayT5VLfbl2v3ywZAHPnifUxuPIA9SSZgj4PDPP2g2t6hNpTdeoH/HbUy+vsbPr16iektRBnV6xI8vv8Jdl15n8bkLRJTjvIvB6irDO1fBDGWCV6abW2QITyihpIZgmvz+1mX+ufIR47Mb3PrwQ/SWbidumcMGjo5a8vAGzd42+9e+JWlwRSdBGTgt6YHV9higQH7chUqLddZa99zNphar1sGT8GpAYNUBSEsSIXPKcYtd3UwKoZb/AWRoSOxcHDTnAAAAAElFTkSuQmCC">vim配置及插件安装管理（超级详细） - namecyf的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://easwy.com/blog/archives/advanced-vim-skills-introduce-vimrc/" add_date="1440502939">vi/vim使用进阶: vimrc初步 | 易水博客</A>                <DT><A href="http://easwy.com/blog/archives/advanced-vim-skills-catalog/" add_date="1440502939">vim j进阶篇</A>                <DT><A href="http://skyah.blog.163.com/blog/static/20351700120122664440997/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAcElEQVQ4ja1RQQ7AMAhiS///ZXdyMYisy8bJEoqowEccigwgBnHTN6J+zg+KkwYszHet2WSpqC4ywxpMu9gyCCBqArPYd115rNMJ1A64gYzI59s5ZwN3qu9ar0k0pWDcBkrouMf4KeTo4xKnERz/Cy6pAjoL4fNqsQAAAABJRU5ErkJggg==">vim 命令集合</A>                <DT><A href="http://blog.163.com/dingmaotu@126/blog/static/21484302008976431725/" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAcElEQVQ4ja1RQQ7AMAhiS///ZXdyMYisy8bJEoqowEccigwgBnHTN6J+zg+KkwYszHet2WSpqC4ywxpMu9gyCCBqArPYd115rNMJ1A64gYzI59s5ZwN3qu9ar0k0pWDcBkrouMf4KeTo4xKnERz/Cy6pAjoL4fNqsQAAAABJRU5ErkJggg==">Vim编写Python代码时的缩进问题 - dingmaotu的日志 - 网易博客</A>                <DT><A href="http://blog.360converter.com/archives/1025" add_date="1440502939">使用vim开发python程序 | 360converter博客360converter博客</A>                <DT><A href="https://www.cnblogs.com/hugb/p/7450845.html" add_date="1512701131" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">vim bundle安装 - Andy.gbhu - 博客园</A>                <DT><A href="http://blog.csdn.net/u011156212/article/details/46375031" add_date="1512702562" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">vim 终极配置 - CSDN博客</A>                <DT><A href="http://blog.csdn.net/nzyalj/article/details/75331822" add_date="1512703431" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">Centos7安装vim8.0 + YouCompleteMe - CSDN博客</A>                <DT><A href="https://www.cnblogs.com/hiyang/p/6484751.html" add_date="1519871563" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">vim环境下空格和tab键互换 - hiyang - 博客园</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912197">rpm</H3>            <DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">rpm 命令解析</H3>                <DL><p>                    <DT><A href="http://blog.csdn.net/deutschester/article/details/6309521" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">Linux RPM 命令参数使用详解 查看 rpm包依赖性 - 跌打滚爬中向前的专栏 - 博客频道 - CSDN.NET</A>                </DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">rpm 源</H3>                <DL><p>                    <DT><A href="http://dl.fedoraproject.org/pub/epel/6/x86_64/" add_date="1440502939">RPM fedora</A>                    <DT><A href="http://rpmfind.net/linux/RPM/index.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB8klEQVQ4jYWSwWsTQRjFZ2Z3trpqyaW2GpMGRaFRVGxpUqlUwYP5C6RSFCp4ETxYS00o6H/Q7UURqR5DB0+CGDBb8eKGgBddSNJqKpgIzS6Gsm22k92d8ZCo6RL1u8177wfv4xtICAG7x7btfD4vST0jI8MYY58LCCF894yPX0BI7Os7eHHiEqW00yKEIB9vmmahUBAEFAgE3muaqq74AqLvzRhPJK40rfXjpyZU9W21Wv0P0Nt7ILr/3c1b1LS+ZV82DMPwBfyVXNc1naNrpR5r+/LgifOZTIYx9q+lZ2bulcufV1dLtt3I5TSEREVZ/OvSy8ukWCwGg8FQKAQh7O8fiEaHksmkpuW6V0qn06nUfUEQJQljLIbDR+bnU7IsK4rSBdB13TCMeDzmug7nbTEWG2007GxW7QJkX784HQ0DADjnELZFCBGEoHPvNlAvPp8692Z67NXTJ48QElqi5zHn01Xm0hsJ4NHaH4Bz1izdleHHkxH2RZtbWnrW8ra3tnbqxofH+OF1SssLnHltwKMW/NV6dlIcO3PIcRxd1yevTVmbG5GIIEmQVohnV0Dr0py5dmC6VlnB7poogoXFOz/wWYSQ09zZrDOjBsXQ7YHRBwKWAcjDzu9t1Te+r+uDQ/E9e/e1lK+FnCThw8eGf2d+ApbyDSDjosWaAAAAAElFTkSuQmCC">RPM repository on fr2.rpmfind.net</A>                    <DT><A href="http://rpm.pbone.net/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB70lEQVQ4jYWSvU5bQRCFz+yP7b3EsoAYyaIKoUGRKCOKvABVijwARQqUinQULimpkegpXKCUPIGDRBUhgUSBXFjIUSwH3WDfzb3e9e6kuAqE/CjTznxn5pxdstYCYPyvmMFMQihmBkBEUsp/DgNCyhjjzDnFzEKp4u6ue3AgiP4KxBi1MS+3turNpiJmqVQ+Hnf29iRAgPxDPgIeSAeDN/v7AkTMLIRoaN3Q+okQ/HhaAHWtG1p/Oj7+cn2tSgMAgvczYL7ZfL2z44uChGBmpfXdcHh2dJSNx8E5n+fqXowAD8wtLW2220VRCCmZmYSYFcXN+fnF6amQEkSPAAI4RjebTfNcSBlD0LVaOhhko1EZlK5WH4AIVIDh1dX7JCmzLq+NITCzSZIXm5vN1dUHgMsNQO79rykJQBA9W19/tb2tjHl0EgNK68VWi2MEwMxSqe9paieTi7Mzvbv77uTkd9NPl5ffdjpTa0nKGEKtXu91ux/abeOcs9be3qpSCYDSOgK1RuP5xkbhfWm6onWysPDx8LDf76tqVSilmLl09s17B8wPhz4El2UlwEni89ymaer9ZDTiECjLMhIiOPf58pKBijGttbUYIxHdv8PXXm86nZq5ucWVFbLWlo2qMQREYGot/fyFZatijAAi4PL8B5HOCsl2wDEzAAAAAElFTkSuQmCC">RPM Search</A>                    <DT><A href="http://people.centos.org/hughesjr/chromium/6/x86_64/RPMS/" add_date="1440502939">Index of /hughesjr/chromium/6/x86_64/RPMS</A>                    <DT><A href="http://mirrors.hustunique.com/fedora/development/21/source/SRPMS/" add_date="1440502939">Index of /fedora/development/21/source/SRPMS/</A>                    <DT><A href="http://code.google.com/p/chromium/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACXUlEQVQ4jZ2TzUuUURTGf+/Mq80omDgWUrQoqDREFyUFIUyDgkS7qGhjuAqiTxe1iEyE/oBoY4s2tUkDEd1IwjgYZIFkYZmBpqb5MWiN4zjzft7TYuyNqXHTgQuXh/M85znnnquJiMY28XQ02QbQfKykY7scRETLd671bQwV3I2LfvubXO1ZHdouT8vnoPGZGR2eNsLiWIhtgGMQ3q/H4mvJ8PjsGufqytu7rtR0APjykmfdMAiI8vChyWT447KN5vPTPbLo4Z5AwnDCF16YanjWDaNcRBSIgAiitoRcG3HtnIK+3+TL/W60d9IF5SLKBtdFlAPKAVHZ+5ajpuqy9oThhAG090v2qTsD6Wh0xgHg+B6N2t0Oj9+aoBzENsExaa42+DBvMjaXQiyD+qoQj1pqIlprf0Ievc54lgZagrwcW2RvqJgDIQ1lbtI/4VAkGxwtN2nuSoFtAnDzzCF89xqKIz0Xi2Oy1d8OyRCbFhoO6jwZnKfzVYL2Bpj6vklJoQInO4PBtpPt989XRXylAT1WEvTHxEpzttJhV2GGzysmpmUTqQzSdKSIRMrmzYxBqKyY04ezc2+orugoDegx3fNuG4xNpwk0hSjVHZSTZiX+k8k1eNiXIlDoQxeL8ZkMUODRPAGx0kzF4d3XJBVBA+UGiX4xGVkCcaBun5+JmXXmzT/kXAE7A6JY+FFAW2MhD3oX+LRsIGb26a7XFzG3aP29d1kBy0gifgs2LVqfb7LTZ7Nq5m74re4E6xkXfDoFRQEP9/7Cpc5RNTyX+qdCvqitCMR6b5yI5Aj8b/wCNcNcTlrIkvkAAAAASUVORK5CYII=">chromium - An open-source project to help move the web forward. - Google Project Hosting</A>                    <DT><A href="ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/os/SRPMS/" add_date="1440502938">ppc64源码包下载安装</A>                    <DT><A href="http://vault.centos.org/6.6/isos/i386/" add_date="1440754684">Index of /6.6/isos/i386</A>                    <DT><A href="http://archive.kernel.org/centos-vault/6.6/isos/i386/" add_date="1440754843">Index of /centos-vault/6.6/isos/i386/</A>                </DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">aix 源</H3>                <DL><p>                    <DT><A href="http://www.bullfreeware.com/recherche.php" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABVklEQVQ4jaWTTUsCURSGn7GZHB2H8AM0V0LhSggi2kX+qX5Fy1ZBuelj0y9o08oYWgYRJBYjQRpYUDPIqGO3hc04oyNIHrhwzuXe57znvVxJCCFYImLLXAaQvWQkfji9PufROqNc1MnrWwBkUxUA1pIl9HiB9KoKQEZLIxEbA9zBiNrNBUfGMaWcAlg0qFMu6hE9CwCoqz00JTUewWy1qJ1cLSTZ6new+h2/jvTguTP083fr3s+/eqa/nEE/7AFAs+38jTAbH/ZDeCNfjVZgdifdG2+WryKoBMBxP+ePYHaH/hgeJAgKwuTpy822w+b6+KkmXljTx6AyB+BBvCjlFB+0UZj1JxIQVOJ5EgQtBAgqCYK8UOXMBCDHFTRbIJ6+UfPJGdDrix2qLw8OyWpZACQhhHBdl/qtgWHckUiGAYNhuPPuzjbV/T2/lv7znW3bZkWWSagqv13SkzCMslwwAAAAAElFTkSuQmCC">Welcome to Bull AIX freeware site</A>                </DT></p></DL><p>                <DT><A href="http://blog.csdn.net/shanliangliuxing/article/details/8620393" add_date="1513757079" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">创建自己的yum源 - CSDN博客</A>                <DT><A href="https://blog.biofan.org/2020/04/apt-download/" add_date="1623308535" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABKUlEQVQ4jcWTMW6DQBBFn5EbKykDTQqjSDSuYnGA7CEMrbkJ5CTYLXZPyXIAlI4mUqBJY9ImKTfVWus1VpwqU612/vyZv392ghV74rVL4R9AuAgBMCClB3Ig7lcUWxPv2MU3vGQKkQF4uNLDlQBfBMkdh82eeG03PRaXBJ1EqBrSsXxLVEmEMkmOEyxQCcAHXvIEzzbBimLbMtmY2BN2iVANYW7eN4R5S1SZ9y1RVRJ0J1JqSCVC2cVjUjVWEzgAt4T+N++9CXqj8e3CMexUH2bc+/B61lHbqt9lxoM/h35h2jkmoSWqbDdKgs7W7wAMxL3uphMDO+kSCW2tRKg5j/0ny8xeJgB2UNlT6OlqSC8ukKn10hJdHQ1hfubxv5CMbttfQ3+u3x7wB7FWkUSSRmSEAAAAAElFTkSuQmCC">下载 deb 安装包及其依赖包</A>            </DT></DT></p></DT></p></DT></p></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">lfs</H3>            <DL><p>                <DT><A href="http://www.linuxfromscratch.org/lfs/downloads/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAClklEQVQ4jbWSTUhUYRSGn++719FsvCldr1kIEgWGUWBFTj9SixQMAg0VxERd6CIhXMQUtrjRorCFmxatsgY3gYOuWoQRs2j6gYSB1IEJBqEfnEbDcXRSc06LUCh00aJ39XLOy8OB98D/UF9fn5w86ZPq6lMyPv5C/hlQXe0TrU3R2hTL2iXhcHhbiLlhRkdHBaChoUGZpoFSChFheXlpM+y6rqTTabxeL67rqs1FIBAQj8cjtm1LU1OT1Ndf3LwgP3+nNDc3S11dnRQUFIjWWnJycmTo0SMBMAAWFhbcwsJCGhsbCYVCTExMkM0Ktm3T2dlBTU0NqVSKWCxGJpNBRFBKEY1GbxMIBMSyLAkGgxKJRGRkZEQMwxCttQwMDMjMzIyMjY1JNBqVqqoqMU1TvF6v2LYtADqRSGBZFvF4nN7eXsrKyigtLaWkpASfz0d/fz+u6xIKhWhpacHv95NOp1UymVQAOjk7h85qkrNzTE9FeTb6mNMVq5w9vMTHyHOik1N8mJzi3Zu3FNs2tRdq/2zBLtlNYv4bZ86fIvb+MefsEXqvL5NazmVVD5HXBk+CFt09V3jwcIjJ6WmGh4cFoK2tTZmO4+AU7+Vd0MXfsML+8hXWPesUOXl4duyj/MAX6s/9ZP77VbJfEgwGMii9wqGKCgB0e3u76u64xPHSj9i7M4jHYM3MR607QIqs/kHiu2I2/pUjB9dQag3JGjiO8xsAcOvOoIp8NUhlCvj8KQ+A+GySxeQcH8IrhF8aROZbyHgvYuQYVFZW0NraCoDiL70e3CWv0pfZs/qc4rw5rHwPscUDZHJP0ON/qDYeqLOrS20JALhx/aYYHs0x8ylLO46yVlRDV8+1LbNbDjcgG/7e/bvb5n4BT4cTfX3AtlwAAAAASUVORK5CYII=">Downloads LFS</A>                <DT><A href="http://lfs.phayoune.org/lfs/downloads/" add_date="1440502939">lfs----book</A>                <DT><A href="http://ftp.lfs-matrix.net/pub/lfs/lfs-packages/7.1/" add_date="1440502939">Index of /pub/lfs/lfs-packages/7.1</A>                <DT><A href="http://www.linuxfromscratch.org/" add_date="1440502939">Welcome to Linux From Scratch!</A>                <DT><A href="http://www.linuxfromscratch.org/blfs/view/stable/" add_date="1440502939">blfs-7.5-book</A>                <DT><A href="http://www.linuxfromscratch.org/blfs/view/systemd/" add_date="1440502939">blfs-7.5-systemd</A>                <DT><A href="http://172.16.20.247/book/index.html" add_date="1440502939">localhost-Linux From Scratch</A>                <DT><A href="http://127.0.0.1/" add_date="1440502939">Beyond Linux� From Scratch (systemd edition)</A>                <DT><A href="http://127.0.0.1/" add_date="1440502939">Beyond Linux? From Scratch (systemd edition)</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">cpu</H3>            <DL><p>                <DT><A href="http://kodango.com/cpu-topology" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKUlEQVQ4jUWSv45WZRjEf/O87znfx37rLmxDhQX0WFpY0NlTcF9wA9wB4Qa0MDHBaEmpwcIYoybLnw3st+e8zzMUx8SpJzOTzE88+9mwJ9JMXlhiwgEwwAY1+hACMgalPdhI10DQoyZKxjJJ4CggUHasBhTZBkIYaLUixAhtAaUEFY5gqBMu5KQCcNEl3EwqUB1oTsoDNINFhwADN1dQgykLqsgWsD9jXH2C/ATRcU6kC52dg/tWsMskZb7+8oJ7veB4BfMpH2LPT39e8uibe9w/Sfx+JQ6d9xIvfrnkXSWOmSgWTCIXt+qGr+5ecN5EeiANqOSE5NuHD7jYNY5ZlIQMsunVZ5LOj3+85fXxkicP7/PDr//yZhVxuMXLV3/x/fqW08d3eP7d7/x23dDtM0JArXRS0Iz2X9CU9N6Iwxm17HBP4vRAd9Aj2N2+g+YdoUGxgjq9IsCFCZKOyqwGq6CEHQwHA1E1sE3FhKqhgggvNG9PqK6Ri9kD5Yolmm/Y+wZJFAAFHshJhggjRBEkGcHfccJHBU2JSMILq4J/orPKCGP+l3j62uJIMDDBThOrC7k2MikUwamSXGERrG2PPICio8BuJAWaufYMbaGtbDRGw+p8yJkgCSUbfI3AdHwEJiBoXigtuABmCIEXohbMRLWJoohaCDeSiUArIMBE6b9pxggMvUQvg3OzCcSgBBZ0uYEHjmKwx4ptYYmeAzyRrWMB2opKgQnQwmfr3j81edN7uwAAAABJRU5ErkJggg==">CPU Topology</A>            </DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">udev</H3>            <DL><p>                <DT><A href="http://zhumeng8337797.blog.163.com/blog/static/10076891420108395138624/" add_date="1440502939">udev配置实例教程 - zhuzhu的日志 - 网易博客</A>                <DT><A href="file:///usr/share/doc/udev-147/writing_udev_rules/index.html" add_date="1440502939">Writing udev rules</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">bash</H3>            <DL><p>                <DT><A href="http://www.cnblogs.com/tigertall/archive/2011/12/24/2300224.html" add_date="1440502939">Bash 快捷键 - tigertall - 博客园</A>                <DT><A href="http://www.cnblogs.com/sunyubo/archive/2010/09/27/2282115.html" add_date="1440502939">bash shell快捷键 - SunBo - 博客园</A>                <DT><A href="http://blog.51yip.com/linux/1049.html" add_date="1440502939">linux curl 命令详解，以及实例</A>                <DT><A href="http://codingstandards.iteye.com/blog/796598" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABjUlEQVQ4jaWSP0gCcRzFP1aDYKgtgiDBtYR2DTldDg3XIAW2ZJi0SS01pLjlUFNbZENT2BY2NdQQOQgtoouT6NDgkBDZoInCRUENcpfXnUT0xvf7/t73z3uWyZXUJ//AmBlpt1mRRIGZKTcAr12FYqVOtf70u0AiKhMLBbDbrIbiYqVO8uSKRrOlcSODBUe7q8TXZdPPAJIocJvewSe4jQKJqExYnjP9+HO9s70NrcmISsZCAV1hrlQjksqwFD8lfZmn01O0N4/LSVj2fwtIoqAbu1ips3V4wfxsf+Sw7Oc4m9c1CErebwH12ioy1wUA4uuy1tExbtW5IIkCMMRGddxGs43H5QT6ViZPrgwHHgN4fG7ryLVFv7ZGUPLy2lU4vymY9WLUMb1w0Gi22F5d0Eif4MZigfvyA/flB97eP3hpd00FLGqU9zeXDU4MIn2ZNxwSBnJwnM2bRlVFLBTA45oYLtDpKURSGXKlmqmA3WYlEZWHrzAISRQISl4tsp2ewl2xRq5U1QVqqMBf8AWXvIajUqSvnQAAAABJRU5ErkJggg==">我使用过的Linux命令之complete - 强劲的bash参数补全功能 - Bash @ Linux - ITeye技术网站</A>                <DT><A href="http://www.caliban.org/bash/" add_date="1440502939">Working more productively with bash 2.x/3.x</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">mail</H3>            <DL><p>                <DT><A href="http://www.cnblogs.com/JemBai/archive/2012/01/24/2329136.html" add_date="1440502939">Linux mail 命令 - 草原和大树 - 博客园</A>            </DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">ntp</H3>            <DL><p>                <DT><A href="http://www.pool.ntp.org/zone/cn" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA5UlEQVQ4jaWTMY4DIQxFP2hLLkDva6Cp3VNOiTSXoOQYlFO65zL0XICebZLRZBJtEvZ3fPzsL5AVLiqlDBFBrfXBJyJ478HM6uwfh9baiDE+gVcREVJKsNYqANB3OITwBO/7jm3bHrxaK0IIaK2No0GMEb33Pyef1XtHjBEAoEsp413sV6q1opQytIh8Dd8lItAz088pft4VOefgnHt5t64r1LIsYzoCbr/wrwZENA0TEbT3frqB9x6amdVMCiICMysNACklGGM+ho0xSCkBuD2itVblnPFJEiJCzvlYJnUt+HadfwHzkF9+i4K8NQAAAABJRU5ErkJggg==">pool.ntp.org: NTP Servers in China, cn.pool.ntp.org</A>            </DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">ram</H3>            <DL><p>                <DT><A href="http://linux.chinaunix.net/techdoc/beginner/2008/01/29/977725.shtml" add_date="1440502939">linux RamDisk 使用简介 - 技术文档 - 新手入门 Linux时代 - 开源、自由、共享 - 中国最大的Linux技术社区</A>                <DT><A href="http://www.vanemery.com/Linux/Ramdisk/ramdisk.html" add_date="1440502939">Linux Ramdisk mini-HOWTO</A>                <DT><A href="http://blog.163.com/wang_hai_fei/blog/static/30902031201131132738331/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAcElEQVQ4ja1RQQ7AMAhiS///ZXdyMYisy8bJEoqowEccigwgBnHTN6J+zg+KkwYszHet2WSpqC4ywxpMu9gyCCBqArPYd115rNMJ1A64gYzI59s5ZwN3qu9ar0k0pWDcBkrouMf4KeTo4xKnERz/Cy6pAjoL4fNqsQAAAABJRU5ErkJggg==">Linux rsync命令详解 - 剑在手的日志 - 网易博客</A>            </DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912202">kernel</H3>            <DL><p>                <DT><A href="https://www.ibm.com/developerworks/cn/linux/l-cn-kernelmodules/" add_date="1440502939">解析 Linux 内核可装载模块的版本检查机制</A>                <DT><A href="file:///usr/share/doc/kernel-doc-2.6.32/Documentation/" add_date="1440502939">Index of /usr/share/doc/kernel-doc-2.6.32/Documentation/</A>                <DT><A href="https://www.cnblogs.com/stable/archive/2011/02/15/1955477.html" add_date="1512029196" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">linux 清理缓存 - bjf - 博客园</A>                <DT><A href="https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.20.17/" add_date="1596010004">Index of /~kernel-ppa/mainline/v4.20.17</A>                <DT><A href="https://pkgs.org/search/?q=kernel" add_date="1634291735" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABR0lEQVQ4jZWSsarCQBBFb4JVQmr9CcHWoEQxgTQWEewEQUv9Abt8QAo/INYWooJFQPyh9Jt6rsW+t28JPMEplsvO2Zm5u+vM53OSJEWkJbQGYAv3K5pkx0Ce5x2Px263C6Cu691up5QCYNMi4mp6Op2ez2dNA+j1etfrNUkSTWtGaydNU5KPxwPAcrlsmkZEfN+/3W4A4jg2Z/48HA4HmybZNM1qtQKQ53lrqo6IDIdDAIbWRF3XAEajkd1BRFxNmEHtHH7D3nFF5PV6Aej3+3ZusVgAuFwubQ8AiqLQaxzHOrder/f7PYDBYNDy4EwmE5K+79/vd/wTaZoqpX6uNYoiUyPLsjAMATyfz6qqSFZVFQQBgNPpVJaliDhRFNmvY3ybD7LZbLbbLQCl1Gw2cz/TAMqyTJJEz0bSGY/HH+hWOZLuVzTJN9A4wWWG0UEqAAAAAElFTkSuQmCC">Search Results for kernel</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">gnome</H3>            <DL><p>                <DT><A href="https://wiki.archlinux.org/index.php/Touchpad_Synaptics_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)" add_date="1440502939">Touchpad Synaptics (简体中文) - ArchWiki</A>                <DT><A href="file:///usr/share/doc/xlockmore-5.43/xlock.html" add_date="1440502939">xlock</A>                <DT><A href="http://blog.sina.com.cn/s/blog_62eb16bb01014dbh.html" add_date="1440502939">[转载]linux shell trap的使用_Jerry_新浪博客</A>                <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-cn-screen/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA50lEQVQ4jd3STyuEURQG8N8bXpSIspixsmczCysp61koPoCVfKFZjEyTBXuKfABWsqMmZWFjIZHyJ8rCYo56u/O+H4CnTvfc5zz3OafO5c9jqIJfxg2mIz/FOe5S4XCFwThGMYkx5HEOICvh6sHnWIr8Al9Rvy8zGsE6jvGOOezgMKKDGl5xgo1oIMMadjEbZvtoxYMiHrCNzbg/YivDE2YKwpWYZjUxuMQezgrcc2pwjUXMYyoxeMMtrrDwawBN9KJDIwoHeEniKGqN0PbQLNsC/fVOlEzwXaEfQI42PvCJrv7f+I/4AQehLHq2KP0GAAAAAElFTkSuQmCC">linux 技巧：使用 screen 管理你的远程会话</A>                <DT><A href="https://pip.pypa.io/en/latest/user_guide.html#config-file" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACT0lEQVQ4jWWTO2uUQRSGnzMzuzubZONGlKitEASjFoqCaOcFG8VbtBYL/4J4RxFBBBtBUAQrRa1sRLQVRVG8JCksLDWJScyyi9lkZ+ZY7H7fJniquTG8z3vOK/sOn9QYAiG0AKFdinMFjHU0GnWSKlmJCKqKL5Xw3uNCCKwaXMPqwXXEGAGw1jI18ZPa7G9Gjh6hVCqSkiICIUR8qcTX0TFGx8dxIbRYNbiWTVt30KjXAejrr/D5/Vvqf6Y5cewIzlpCDIgYnLOsXNHHvYeP+PDpE04QUkw06nVeP38CwJ5DI6QYEREmp6a4duMmc7UalUqFqxfPYYyh2ZzHGIPJ2IzJl8vW1trcl2xvrc3fOARUE8459hw83j50DlUlpYT3nju3b5FiBBEWFhZIMeWGO7TtbEqJH9/HARjauAURQUQIIfDi5Sv+zs/jSyV279qJGMkVdT4wxBj58v4NAOs3DCMiGGNYXFzk7v0HzMzOUK0OsGP7to58XY5grWXztp05Z4ZQLBY5c/pUrqBYLJLSUgQBVcUYw9DwltxEVUVVcc5xYP/eZR5o0v89UFUWmk0Ayj09iIA1lmazydkLl5mrzVGp9HP9ykUGBqrLEbIRzVojko10t5XW2CUt7ZYDct42G6SUUIXUae/VS+eJISDG4Kyl1Qqk1FGgqljn8OUessj4cg/WOUCpVqtU+nqJnclsLbYYWNGL956UEs65AtOTv/j28V0nkeBcgZmpCZIKj58+o+BcHqZ2Ej3fRscoe48sjXPG3na/G2ftmp7fZ3H+BzaBF12WwHSWAAAAAElFTkSuQmCC">User Guide — pip 6.0.8 documentation</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">openssl</H3>            <DL><p>                <DT><A href="http://blog.csdn.net/as3luyuan123/article/details/16812011" add_date="1440502939">OpenSSL命令---rsautl - VitalityShow(网络通讯) - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.51know.info/system_base/openssl.html" add_date="1440502939">openssl 非对称加密DSA,RSA区别与使用介绍 | 运维之道</A>                <DT><A href="https://www.gnupg.org/howtos/zh/index.html" add_date="1440502939">Gnu 隐私卫士 (GnuPG) 袖珍 HOWTO (中文版)</A>                <DT><A href="http://zhumeng8337797.blog.163.com/blog/static/10076891420116692330436/" add_date="1440502939">gpg --help - zhuzhu的日志 - 网易博客</A>            </DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">syslinux+grub</H3>            <DL><p>                <DT><A href="https://wiki.archlinux.org/index.php/Syslinux_%28%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%29#Syslinux_.E5.BC.95.E5.AF.BC.E8.BF.87.E7.A8.8B" add_date="1440502939">Syslinux (简体中文) - ArchWiki</A>                <DT><A href="http://zhcxl.blog.51cto.com/211202/402170" add_date="1440502939">SYSLINUX 中文简介 - 小破孩(zh_cxl 蔡小龙)的技术博客 - 51CTO技术博客</A>                <DT><A href="http://www.syslinux.org/wiki/index.php/PXELINUX" add_date="1440502939">PXELINUX - Syslinux Wiki</A>                <DT><A href="https://coreos.com/docs/running-coreos/bare-metal/booting-with-pxe/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC0UlEQVQ4jW2TTWjcVRTFf/e9N5lJ0piMpiZE0kyEjDFtU6sNuFWprkRFbARXrYKIm+rCrVm4iIJ0pbsiCooUXBRKF9KNgkolRXGm6jT9mkwbTFobhqSZmfz/714X04E0eJeXc+49534I/xMLI8XBfFf2RTF5PApD3ljB6UJ1Q88+c+vPDQMRMADZSb5WmD4uIsfVGOtxro0CmqrRCYutVD8p1kpfdPACMAduiqnwZCF82efC6w2LZERoqKohTbCeXufYMiMrjpamJwrXS+8DSEfOpcL053nn36lrVIMIfOaUM5K2bkQfCng3mxF3NCuOujmq5n9IjFQAKqN7ZzI+/CoQRVjfivpacal0bqe9xdF9z29699BNy76bE5nwqt8EAO/9sR7nrGXmmzH54LGli+cWIPNUW4kBDrC6W19EwsywNIcsjc8N166Uwxw4g4MeI7F41S1d/OoU+EOQdDpbe1i6KtnZ3SF8pGY0LJ0ByvJH/558d36glkrovU1Yq6v8Mlw9//KOAiJgq49MPNGVdb+B2PWYOV+j62c3XV9aS6O8WtVwQU02dmny03byvVUZQGJ3/22qzV+I3fXock8/TDwiy6OPHsoF98pdDZMnq3/PzkG6/VA6cQr8EYgLI/sne7v87wMioWHpd7I6PnFpt89MrGncyG/dOSg3bl3eJt3fuxWT9kC5UjjwfU7kcILRVHsrRLOTiel8Vvyuchj6+uzY+HI36eW+5J8PZXl5s1OsMlIcdNncvIPDEdhSK7eafCvXBgoD/f3hjYp19waf+7gPw1mKQysmnMFYx2zQRF7KihuNGAGJzTQ+W6yVfrzvFxbH9r2Zc/7TjEh/apBzDkFQjJYqQYSW6Uoj1bcna6XTc+Bkm1cEYnl874Ee8+9F7AVBHjAIDhIT7qB2erPJiemV0lVrk/U+BZ0kQHXP/nwDnfLwoKqtWDP+NXm7sr4T9x8WT1TaNx7dOQAAAABJRU5ErkJggg==">Booting with PXE</A>                <DT><A href="http://127.0.0.1/7.5-systemd/chapter05/glibc.html" add_date="1440502939">5.7. Glibc-2.19</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">rsync</H3>            <DL><p>                <DT><A href="http://blog.163.com/wang_hai_fei/blog/static/30902031201131132738331/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAcElEQVQ4ja1RQQ7AMAhiS///ZXdyMYisy8bJEoqowEccigwgBnHTN6J+zg+KkwYszHet2WSpqC4ywxpMu9gyCCBqArPYd115rNMJ1A64gYzI59s5ZwN3qu9ar0k0pWDcBkrouMf4KeTo4xKnERz/Cy6pAjoL4fNqsQAAAABJRU5ErkJggg==">Linux rsync命令详解 - 剑在手的日志 - 网易博客</A>                <DT><H3 add_date="1596439270" last_modified="1596439270">samba</H3>                <DL><p>                </p></DL><p>            </p></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">samba</H3>            <DL><p>                <DT><A href="http://www.cnblogs.com/liuyisai/p/5785853.html" add_date="1498565667" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">Samba服务器搭建配置 - 青衫lys - 博客园</A>            </DT></p></DL><p>            <DT><H3 add_date="1672911809" last_modified="1672911834">dns</H3>            <DL><p>                <DT><A href="https://wiki.archlinux.org/title/Unbound_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)" add_date="1637141510" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB0klEQVQ4jY2TT2gTURDGv5l9ybrSiFslUduTiX9oxYAgmLvXgiAIonhUpPUgGBCKvdizQpui93rRnsRa6KEHT6VU1ESK+Cdaaw9tKiKmTZvNvjcemkYXs4tzGub75uP3Bh4QUQfGXp/OPCzlojwqSjSG+1nxbgCzYR4KE7oK7/YxN5bjFqvj++PHnp8/+rmdj8MCErZ/zVG8CxC14cnNMF9ogK2sw45iOIqx5ZtL1ye/uv8dkBt/f85mmrctnnEUw9PiLm16g+28/9yg58lCvEtiZWPQ7Yv8MAJXi5DDXO1UlJ64cGQtkuCQieUdxd22Ioigs64NNbRgy5hEVeROJEHm0cc9PQ4tfq/57reqB09L8C4WVfd2SKZ0JVtpS6DXN/OvVmpu+Wd9e1nwFMDjHb2uJVH5hVttCVIPikn4KAPoaI4mV29k+wAgNVoaB+Ryc14zrNJr/b0rAQJpyNBfyxCiZ60eZrrVAl8srfOBJyRH3qaJ6GoATeRTK0Cw8IdYbIFMBAKIzDCAWNOySEL3lODDjsmCWQbkPoAlgDIgzKRGihcBgA4WiqeM4CVAUyC5uzqQnUNEJQulHAkGATlrWJ2g1Oib20L8ojJwMvTHRQSd+Q3qhLI+2S36MAAAAABJRU5ErkJggg==">Unbound (简体中文) - ArchWiki</A>            </DT></p></DL><p>            <DT><H3 add_date="1672911843" last_modified="1672912797">nginx</H3>            <DL><p>                <DT><A href="http://www.weixueyuan.net/a/751.html" add_date="1638759461" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jY2TzW+UVRSHn3Pu27fpMNAiNi66MKnTmUkrY3mnkhgX1Q0hEBPcdKVLYzCw8w8YFizcsDABXZgY4w4MbEjYEVMSwEin6XdqixgTE+NXLZC203nvOS6mg5WVd3dzzu+c83vOvfA/zoPhw/2LWfUdAAfZH9P9l++qQ0eeT2iATvy4sWnkpfls5BMBbzynY7VefvFBnZ6V6tCRueyVk13h/pyl0cHiwkTlcfPYyPn9kyiAP5VW6qUp01+e4KE9n5U/aIB5Nw4ytvz7U1xu9Pckl2bHh0cE3EHUQaqrq09yj4tWqHxe0x+mVRheqI98LHtFvoUA4M7dQyEkISQXnzHoespmH8252Z1FKvc2tvPPQM8s1csXBOwtcEAE++2vPHdBzjSPlUYFXPf8WgO01lz7Euz7lw6kd/NoX4johysT1U8BA9zcQjSnGEJPEDn9ny00wK5CODqzdrbtrBR6wpVd9/W+oOeX65Wb90svHBLRw71BxdxdVeoACR2aDjDV6URsbU1Jb9+9gRDe3Mzz7YEkOWX9g9NAK5p34DovN0C1K94j7g5SW/h5Y2snnt6KtnYwhL6/89hOVV9LVY9vu3lngVKYBNXlWimjM4YBXANdGiWdWFx/uO3tUzvms70ioWWWt9yiinoq4u789DbkmgcOLmSVbx69Xp3csxHHltkFqDcfrrdyvxDdRSCIIbgTHQEfcEgEYG68/FEhDZfb0e/n7tOK/2oiRRXeMGcSKMi/ViPgqUjYzXlfvPMWbCYrvVfU5KvBNNHNPIII0Z0dc9zdEDEgKapiOAdU+WM3vyVdgAI282ql1tfrFxE9EYQ0eqetAqkIW27RnesCt4E6yIlnP69bBGApq5yM+LsqjDsyhPOniDfF5eux5urtrmY+K5/7B97WMyzDI1pIAAAAAElFTkSuQmCC">Nginx stream模块简述_微学苑</A>                <DT><A href="https://wzfou.com/php-fpm/" add_date="1570613908" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC60lEQVQ4jbWTTWiUVxSG33Pv/Wa+b/5Mk2hi/tCqtASENFGDQiVpQyFBJEpdmBgVuynRSiwoNWYxsQUFN1JKN6JkJ4K0CNLQNhZJaHEkbUklEJNo+qMtmmrsJPNl5pt77+kiP+jOjc/yfc95OZzDAZ6DkxB4lfD2wkpuLq+YPrQzvqSpZXO0IQavZB29fmWEASKAl706ONjSemG8rLolYXKy9MnvFwGcYIBEcmnsmfIvMOXe5rF9OwlgTjYoBoi3bvVQt6PvRu2uA8fe7S76vqa1EPlgJQAgmSSRTMLyyN53kBDt8EQIA+Ys799TTsmbGgzgreJPb2xraztXvTsvwq723LAFKL8YwOLOrfMlsHQarzkKfu4HjOMNFMivuGFvMREYwtvwc8GbNhEEqDSBsBlfQMMsBIDU2OPqayVV2fqVj1NDT4PIroLAnBTl7idoCi5zb/vHGDKhznuXaJYdIkGIc8Co8tzFAFYkVP3wv/XaC8q+bWzZn84M7kt5UQaRbGLYFFqkiulpirFVsAzEXNhA1X2zqTlMLf05AZu/TtJVfnj9Z18P/NYacSbnyDM+QgRyHY88x0HMA+JRIBEDHGIhA918u98AIJXR8iDNpT9y3fDa1C9DtWd+2vjr7s3y81Wr134YCnsrtM4zLcBEgrKZR9/99feDHwdHD9UAl4Zp6dY1Ow4eX5GI94SUTPw3mzXRaFT4/jx5bpi1MdDaIBLxkJ7NmIgXJiVtoHPBaQkATR1Hq4joam/XB7Htmzbms/O+PH/qMI9NTHLPkXaUFiZgdA5f9nZhYvKe6O5sw/o1Fc7g8EijAgCtsz6AZ388fBQx+cB5mp7D6MQUpf0s7t5/gH+mZ5DOZDE6MYV0Zh537/9J0zOzIBJPCAAB4Lf3dL6vYXvZmCIiYssWUgqyhkGCIIigjWFJgi1bRUI8VEr2LO8AAN7r6IgqGY9rY+2CEgOiADJLFXMLDySF8OE/u9nXl32+/4Wwl0T8DwIKN1GhBztHAAAAAElFTkSuQmCC">Linux的php-fpm优化心得-php-fpm进程占用内存大和不释放内存问题 - 挖站否-挖掘建站的乐趣</A>                <DT><A href="http://akacoder.io/nginx-geoip-geoip2mo-kuai-jie-jue-cdnying-xiang/" add_date="1636547226">nginx geoip/geoip2模块（解决CDN影响）</A>                <DT><A href="https://graspingtech.com/nginx-proxy-caching-wordpress/" add_date="1636547226">Speeding up WordPress with NGINX proxy caching - GRASPINGTECH</A>                <DT><A href="https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#custom-timeouts" add_date="1654759059" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC8UlEQVQ4jVWTP2idZRjFz/Pnfb7c77shTQ0kDmlaCEQo0dQUuvS6lQQtksFixkQaFZ0kdHEXHLo4CNLBdIyL0lKX4KLpIqE3wS5XEHrTTAma4d7cJvd+930fh9jaHjjbOWc5/AinIgAOAKOjo1cUWCaiWgImAICB3ei+mYC1/f3931/uEP5XNjE+/hWAzwkYcHeoKtwdMaXnmRMA3+7u7X0JoPd8hQHY5IULPzDz+zHGRMwpxsidoyNyAIPVqrNITCmJinBK6f5fT558CKAnAPyNycmvg9myA11RFQJYVemL1VXUajVs1+skzCyqAFHPQrj42vDwwN+Hhxs0NTV12UQeAhB3Zweo0+n43Nwcf3fnDgDg45UV/LKxkfKiIADOzMndYxnjVc3NbrJqFmPsExEXReEAqP7oke/s7ADu2K7XkRcFDZ85g86zZ+zuSUSy0O/f1GD2Dojc3TnPc3y/tuYn3S7//OABPllZARHhgxs38N716zCz9NHSEh0fH7OIuKjWVEMYB0AgQjDz4bNnaWRkBNPT05ifnwcR4a2ZGQDAwcEBBTMv+31SEXLgnKrq6alEUBGUZYmUkscYaebSJQBAWZYQES/LEqqKoAoRgROBzWwvmLmoejCjPM+dmYmIUJYlyrIEADAzFUXhIQT6L+sWwlNm1d8yMzKzRMz4s9GgVqvlqooQwgu3Wi1vNBrEzDCzlGUZieomvXvt2mXOsodwP73RnQYHB/3t2VleWloC3LF29y626/XUbreJiBxEiYCYer2rBAALCwu3LYTVbrfbBVGIMVKn3cbE+fNwALvNJqrVKkTV3b0cyLKs7PVu/3Tv3i0BwGNjY78WRfFmpVK56ICHEGK1WqWjTodOTk4wNDTkqhpZhPNKJcSU7v9zePhZs9lMAsCbzWbfgR9fHx3NRXU2mGUAKIRAFgIxMwUzYeYuuX/zx+PHn25tbXVfpvEFzouLi1fUbFnca8n9nBNBmJ96jJu9fn9tfX39FZz/BRB5Qx1wroajAAAAAElFTkSuQmCC">Annotations - NGINX Ingress Controller</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1672912101" last_modified="1672912169">git</H3>            <DL><p>                <DT><A href="http://blog.csdn.net/themagickeyjianan/article/details/55519111" add_date="1521701172" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">清空git暂存区 - CSDN博客</A>            </DT></p></DL><p>            <DT><H3 add_date="1672912108" last_modified="1672912274">proxy</H3>            <DL><p>                <DT><A href="https://www.cnblogs.com/liuxuzzz/p/5324749.html" add_date="1542355087" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">linux下使用privoxy将socks转为http代理 - liuxuzzz - 博客园</A>            </DT></p></DL><p>            <DT><H3 add_date="1672912246" last_modified="1672912254">redis</H3>            <DL><p>                <DT><A href="https://www.cnblogs.com/ftl1012/p/9426404.html#:~:text=List%E6%93%8D%E4%BD%9C%EF%BC%8Credis%E4%B8%AD%E7%9A%84List%E5%9C%A8%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E6%8C%89%E7%85%A7%E4%B8%80%E4%B8%AAname%E5%AF%B9%E5%BA%94%E4%B8%80%E4%B8%AAList%E6%9D%A5%E5%AD%98%E5%82%A8%201%202%203%20lpush%20%28name%2Cvalues%29%20--%3E%20%E5%AE%9E%E9%99%85%E4%B8%8A%E6%98%AF%E5%B7%A6%E6%B7%BB%E5%8A%A0,33%2C22%2C11%20%23%20%E6%89%A9%E5%B1%95%EF%BC%9A%20%23%20rpush%20%28name%2C%20values%29%20%E8%A1%A8%E7%A4%BA%E4%BB%8E%E5%8F%B3%E5%90%91%E5%B7%A6%E6%93%8D%E4%BD%9C" add_date="1660901999" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">Redis学习---Redis操作之List - 小a玖拾柒 - 博客园</A>            </DT></p></DL><p>            <DT><H3 add_date="1672912287" last_modified="1672912294">lvm</H3>            <DL><p>                <DT><A href="https://www.jianshu.com/p/b55af5770b66" add_date="1595498129" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">Linux创建SAN共享储存 - 简书</A>                <DT><A href="https://blog.csdn.net/lk_db/article/details/51533995" add_date="1595509330" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">Linux lvm方式管理磁盘（将多块小盘组合成大盘）_lk的窝-CSDN博客_eyb4</A>            </DT></DT></p></DL><p>        </p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">openstack</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">自动化部署</H3>            <DL><p>                <DT><A href="http://www.oschina.net/p/fuel-of-openstack" add_date="1402866953" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">Fuel for OpenStack首页、文档和下载 - OpenStack部署工具 - 开源中国社区</A>                <DT><A href="http://www.oschina.net/p/fuel-of-openstack" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">Fuel for OpenStack首页、文档和下载 - OpenStack部署工具 - 开源中国社区</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">发行版本</H3>            <DL><p>                <DT><A href="http://docs.openstack.org/releases/releases/" add_date="1450236820" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">OpenStack Releases — releases 0.0.1.dev198 documentation</A>            </DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">web前端</H3>            <DL><p>                <DT><A href="http://www.bootcss.com/" add_date="1448809118" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACqElEQVQ4jV2TQWicVRSFv/veP//MJIHSRd0pokIjWGhDpY2ZRV3poiBY0JVKFwVLt4HSVTeu3VUoLe2i0F1wUai4CogjEWs1QhZxIQRCaCSI0syMM/+797j4g4j33cXjwHv3nHM5dmn5xmLO+Q7GikJgIDBDHDVIyNqLRAsaw0bNlZRyulPleqCQ1D61nA1LYNmwZJBAEhFhEUFEKFk1sLC7laTBtJmEkCUzGx+ONf17ZpIIBBJVlen2a6qcFJJJwmclgJUqwiVIyYzRaKKl5ZP2xtKrRAQpGRLs7e7zdGObg2d/Wd3tKBSGMEmqXN6Kzkmj0diWlk/y/kdv8//a2/2dG1dvsbdzYFWdJQ8TooqIdozJFMHh8zGlOA/vPmb9qyfMLfT4+OpFzg1OcfatRR5ufc2x4wvm4QhZcndKOB5OiYKs1by/9wdbT3/jp41tDvb/pDSF3Z1nWIJSCh4F90LlUUACEu6OHVG+dv0DPl29RLdXU9c13w9/Ybj+M526opSG0JHB7o4Q2UTxQkQAsPnkV7a3dsg5cf7CKc6cfZ1Prl3k9udrzM318Wi9qzwKksAy7gV3B+Dxl99w/9Yj6m7FhXeWuLf2Ge++N+DB7UdMp1OSGfFfBrhaH9wpTeHY8QVefPkFuv0OZ84vAjCZTJnOWvoS7QclihCGSU2Z2fxCj6pTsXrzMqs3L/+7xtlsxv0v1jh8PmJ+vq/Sbk+VewEgilnd6+jb9R9tPJ6ARKoyCMajMRvDTTZ/2Kbbq9WUxlrZYG++8qEkhZCZmY1HE00mU5OEok2OmdHrd+n1a4XCJNpjSlXxMsyps+LeBIhuv7b+XN2msM1fy9Ad92JqIeVUJY/ZMJ+Yf+07jNNSvBQKIgIPt4jA3YkIwoNQICRJmGGhGBaaK/8AruDNgLDwp9IAAAAASUVORK5CYII=">Bootstrap中文网</A>                <DT><A href="http://bootswatch.com/" add_date="1448809125">Bootswatch: Free themes for Bootstrap</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">openstack</H3>            <DL><p>                <DT><A href="https://wiki.openstack.org/wiki/Main_Page" add_date="1402512004" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZ2Tvy/DURTFP+d5RSNCdPEjNrEwoH8AYjR3F/F/iP9DxN7ZYsEfIDqLsmEhRERp+46hX6KiVU5y33Deuzf33HueLqeKJexNwxBgeoMEz0h70WYbmOsx8RNuHdMBPPbX5C9lxuI35g1xDrxg1HYjDOQxs0D/Bx2B1ywCcNwXtVF/is9htNFWID1E54YbQ82694FVIAGvqk4trkEYBCslXc/cnJ6pwzANupgoLobgSZAh1SLWFqQCKChwAlTovA0psI5ZhpRAdxFYAY1nMh+hJCh3yC9JVBeANVojug0dXvaMCByDC6BgVIFyFzOVbYoV4RFwJkHe/RiiE9d0d6OdOFDgDIIh1VSdXLoCJmit8agv96c13kRgIAuAlWbDhyFff6HWbqSQr7vZIA/MArmMHvjuxH7M/M/N/6wpgO67aP4Fuo8SO5h/fmf23gEKpoUL/1SIegAAAABJRU5ErkJggg==">OpenStack</A>                <DT><A href="https://github.com/openstack" add_date="1402511974" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">OpenStack · GitHub</A>                <DT><A href="http://ftp.redhat.com/redhat/linux/enterprise/6Server/en/RHOS/SRPMS/" add_date="1403165085">openstack的源码包下载地址</A>                <DT><A href="https://wiki.openstack.org/wiki/ReleaseNotes/Havana" add_date="1402867142" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZ2Tvy/DURTFP+d5RSNCdPEjNrEwoH8AYjR3F/F/iP9DxN7ZYsEfIDqLsmEhRERp+46hX6KiVU5y33Deuzf33HueLqeKJexNwxBgeoMEz0h70WYbmOsx8RNuHdMBPPbX5C9lxuI35g1xDrxg1HYjDOQxs0D/Bx2B1ywCcNwXtVF/is9htNFWID1E54YbQ82694FVIAGvqk4trkEYBCslXc/cnJ6pwzANupgoLobgSZAh1SLWFqQCKChwAlTovA0psI5ZhpRAdxFYAY1nMh+hJCh3yC9JVBeANVojug0dXvaMCByDC6BgVIFyFzOVbYoV4RFwJkHe/RiiE9d0d6OdOFDgDIIh1VSdXLoCJmit8agv96c13kRgIAuAlWbDhyFff6HWbqSQr7vZIA/MArmMHvjuxH7M/M/N/6wpgO67aP4Fuo8SO5h/fmf23gEKpoUL/1SIegAAAABJRU5ErkJggg==">ReleaseNotes/Havana - OpenStack</A>                <DT><A href="http://longgeek.com/2012/07/30/rhel-6-2-openstack-essex-install-only-one-node/" add_date="1403598222" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA4klEQVQ4ja1TMQqEMBCcPUQEERF8gFr5AUtLv2Dng/yLtZDSP9jb2omN2miuUhJzxuO8VMnszuzusKE4jjkenNcTsiTA+W+NGPslSRKUZXlL2LYNeZ5jGAZZwLIsmKaJoigwjqNWRIwbYqDve3RdByLSCuzjEpFqokj+5ItIVjo4J6ZpiiiKFLyqKkzTBCK6FiAi2LYNz/MOLAgCZFmGuq4xz7O+AwBgjIExJmFt20rv/y0SAPi+D8dxLpcqDEMFO0ZY1xWu66JpGm3FZVmkAiR+Js757Q6c86QRviGf8x6b+AZ06VLOo1wSCgAAAABJRU5ErkJggg==">RHEL-6.2 OpenStack Essex Install (only one node) « Geek Blog | Python Linux 云计算 | OpenStack 虚拟技术 HPC | 性能调优 自动化 服务器架构</A>                <DT><A href="http://my.oschina.net/hjswust/blog/120133" add_date="1403684990" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">OpenStack Identity Service 身份认证服务——KeyStone - hjswust - 开源中国社区</A>                <DT><A href="http://wenku.baidu.com/link?url=Zum4imX6u2uBxiXvVGu-Ig8kBp8pjGfOlEf8Myvt7x4wMgnTntctgJ2rhz9uFGMZ2ywF_QJar5YJkEDbHQ6ik7jb73wCKOd_nhI358CLxPa" add_date="1403691653" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">CentOS6.5+OpenStack+kvm云平台部署_百度文库</A>                <DT><A href="http://www.cnblogs.com/osxlinux/p/3388031.html" add_date="1403691684" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">keystone 手动建立租户，用户，角色，服务，端口 - osxlinux - 博客园</A>                <DT><A href="http://www.21ops.com/cloud-computing/openstack/3269.html" add_date="1403691728" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC+ElEQVQ4jY2Sy28bdRDHv/PbtWN7XdskFg/JCQ01CgpP0dADqlBuHIBzgCL1D+BCWxEeEgKiNFAJDhW9IXLghoSQSEECGSFBeOVQNRVNi6tNqe2kGweT1Ov1xmvvb78c6lSpkBDf08xoHp8ZjYHbpQCwb9+ZTCYfUUpltNYN/A8JAAwPDx+wLGs+m81WLcvayWQyzXQ6vZjL5Y6SlP8szmazBwHU4vE4AXBgYIAAaBgGAVAp9TFJtZt/mwqFwmAikbgyPT3NUqkUzM7O6nw+H01NTUULCwu9+fn57vj4OAEc65Oo3VqjH3hlZmaGe/XnVTva61cqFV0sFmsAcv/CHxkZ+bxWq2mSYfPGVuQ49Ygk2zth5FxfZ7cbRCR54sRxDeBwfxV16+r5fD6dTqeFhLH48+9ycu4tQe8XlD77UE6d/oRmLC6RDmkahgKQ3J1u9gm4trZWsW0bExOP4/ChDd7/wHVpXP4Aj3oreOzQ0xK561FjJ6aWlpZaAKoiEgEQBUCRlM3Nze/m5t5HqLs6alR54Qsf068u49OfBrBRrWFno8xvvi3hx8XFVZJX+gAEABkbG9tnmubZM2c+YhQx6vZIdgLeuHaR9eoqr1Wd6MLFy/qrhS/DYrHoATiyez8FgOVy+bnR/fufff6FF0MRQKSHjoC9TAFeKGzUa9JwaiqTyfCJiQkLwBuTk5MmAJr9TvcN5fPIZbMGQOpeCNdtSst16bqutL0WPK9FkGKlUhCRQdu2MwC2TABIJpOXHMd5meARQJ7cbna06wXiez7cps9t12er3UXgtwxSvxeLGZ1er2fe+gGSIiJcXv7+wTv2GWe3687oyvlLKK8HSKYi3JNPIEGBs9k8dezt06/vfaKbK7wrAgB3108+ZHUMM90O60N6VVXWU95Tz4xYD98bi5t/2J2W5Y799eZrL2mNbaXUlud59k2MdxABwF2Fwa+dc1d/Pbfi4IfzbeM3u6J15+9YeHBIjbLRNq3hWEo8+Ea24/t+EARB+x/+qqBYJXsyPQAAAABJRU5ErkJggg==">OpenStack安装与配置 - 新世纪Linux社区</A>                <DT><A href="http://www.openstack.cn/" add_date="1404101179">OpenStack中国社区 « OpenStack中国社区致力于为OpenStack技术人员提供分享和交流的平台, 推动OpenStack在中国的普及和应用, 协力云计算产业链各企业打造开放, 共赢的OpenStack生态系统。</A>                <DT><A href="http://repos.fedorapeople.org/repos/openstack/openstack-havana/epel-6/" add_date="1404459297" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrUlEQVQ4jW2SW2yMaRjHf8/7fd9Mx/SgDqtlIyVDteqwaSIbQxgSF5s1cV2u3KxEKhmHC3cu3TjvuieUy7XJUhEMLnQd1jrVZNCwqDZabdGZznyHx8VoM8pz9b5vnv+T//v7P8Kkiq1ub3Ysp03RJMJCAJSsIH+5vtvx7Max7vJ+Kb80rU2dV2GDINb4m+8HFIoexhgg8MMhpzOTPvTrNwMWJVKXBVlXPjAUstn9W5K2TXGMQNfDN2zbd4bCUO+VzNVD6wEsgKZE6m9BNpSLR3MFTh7ZwS9rl1J0Pbqzr8n2e9zvBfUK82rrWlYMvOjqkNjq9mbbth+U2wZY3jKfjqPbufvoBVvaj5EfKxCOVvNDS5ygWGCw+5ofqFliHMtpmyxWhZ8WNwDwx8lLqCpTImGMl8P7NIIdqUIQyzZms1E0OTkJVUVM6VwsuoCWgBkLK1JJ4Ba+hKNJeyIqEYxTQf3MauqmV/Fj3QwAljU3oKr0vc8zGqpHjMXY4CtEDCoslKbETtUgoCbWihWp4cTeBLHZlZNNMTzqsX7PRZyxQT6+fIhqgKIFaUqktKphGeGaWbif3hOb5tPSUMuqFY3EWxfQce4mr94O8s/jPrLPX+PnhhFjjX/hgW2cCpxoLe7oCCM9/3L3uXLnlmLbhnjrAi6k/+P2vacYIxMcJirgTyNiQISgmCvhH18ip9Toez7y1b6Ok8bzVc8a9T0IAuzoVOQLesexWfNzM54fMDD0AfnOBIXOp9cPP7EDr0h+4H8q5zSyf982Ksgzd850GufXc+t+D719Q9+KlUuZ9MGNALYKH3L9PdUhx2LlkjiVU8J4vk+6K8PWXcepCDtf2VbozKQPJOFgicmiNamNGE6hVEejEWZOqyKXL9L/brgETtVVyAic83FPZ9O/Z8rdfAZ/PhUoPj8pTAAAAABJRU5ErkJggg==">Fedora People - repos.fedorapeople.org</A>                <DT><A href="http://docs.openstack.org/developer/openstack-projects.html" add_date="1414118230" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Openstack开发者手册</A>                <DT><A href="http://blog.csdn.net/hunkcai/article/details/15503529" add_date="1407749035">Centos6.4部署OpenStack - hunkcai的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.choudan.net/archives.html" add_date="1427860170">臭蛋</A>                <DT><A href="http://blog.csdn.net/cybertan/article/details/8720307" add_date="1427860170" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">openstack各组件 - cybertan的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://blog.csdn.net/ugyn109/article/details/7406718#comments" add_date="1427860170" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">CentOS6.2下源码安装openStack keystone - ugyn109的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.osforce.cn/openclass/85/show??fr=weibo&mu=140609MwfkTx" add_date="1407809915" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/UlEQVQ4jW3TzUtVURQF8N+53tQsIqSgGpiDeEU4qFARZ0GF0OcgKmhQgdYoommjoFF/QlCDiCSIQBRr0odFvNInEVFBDUwkRCrEQUi97J4G9ypPaY/2YK911l57nWBFjbELZxJ68LKdPijTnNKG/egOZLiR1oJfsw77Es5HGgOb0FfhSORSQifWQmQBO5YR1HEschJNmI3cHOcujoQCWFMLgcllBJHWQCum8BDrcTwyEfkcmMD3Ynz+N/1phSuRjRmPIlsDCd7gAS7g3E8G9/JzpV8QKvwJpJHHhfSZwJ0qL7qZ/R+ottLArwK4PvA+40mVcqC5whDuB/oy5gLXOxisJUgiLyO/IvOR4UC5nvaUi8XM7kJVNWPbKKVnNC4Z38unhMORJPAcq9GLNRl9kYGH3CqxNnA24XQDTVsojxDTOj5G7gUORFr/Mr6KV4GmTr4uvnSIcmR7pCUwt5MU1QQf5MkqY6aO5iy/+eZRSjXrzhfhmf7L+Amq5CyLt2/Blyr9CSMpbSE3d4kg0BzoSXCVN1fJksjRjKcxv8K1RobqOb/A+07ewiiHIpcDpcicXEmeg8WmQmfgIPbEXNlUYEsBKGFD5HbGAGa7Cn+WotzB2BjtSb7KtuK3TWE60BZ5Gxjv4t2yIK0I1o+MSXzDcJX+Bk5F6nF9hpEV8/4BpvqlQQ14tBgAAAAASUVORK5CYII=">开源力量公开课第六十四期 - OpenStack在企业持续集成中的实战 - 开源力量 - 向IT技术大牛们学习！ - Powered by EDUSOHO</A>                <DT><A href="http://docs.openstack.org/developer/ceilometer/" add_date="1410492017" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Welcome to the Ceilometer developer documentation! — Ceilometer 2014.2.dev18.gc5ce0a7 documentation</A>                <DT><A href="http://www.oschina.net/question/565065_66271" add_date="1403173402" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">CentOS6.2下源码安装openStack keystone - 开源中国社区</A>                <DT><A href="http://wenku.baidu.com/view/11fcd75f58fafab068dc0216.html" add_date="1402868606" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">OpenStack Havana安装测试报告_百度文库</A>                <DT><A href="https://wiki.openstack.org/wiki/Main_Page" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZ2Tvy/DURTFP+d5RSNCdPEjNrEwoH8AYjR3F/F/iP9DxN7ZYsEfIDqLsmEhRERp+46hX6KiVU5y33Deuzf33HueLqeKJexNwxBgeoMEz0h70WYbmOsx8RNuHdMBPPbX5C9lxuI35g1xDrxg1HYjDOQxs0D/Bx2B1ywCcNwXtVF/is9htNFWID1E54YbQ82694FVIAGvqk4trkEYBCslXc/cnJ6pwzANupgoLobgSZAh1SLWFqQCKChwAlTovA0psI5ZhpRAdxFYAY1nMh+hJCh3yC9JVBeANVojug0dXvaMCByDC6BgVIFyFzOVbYoV4RFwJkHe/RiiE9d0d6OdOFDgDIIh1VSdXLoCJmit8agv96c13kRgIAuAlWbDhyFff6HWbqSQr7vZIA/MArmMHvjuxH7M/M/N/6wpgO67aP4Fuo8SO5h/fmf23gEKpoUL/1SIegAAAABJRU5ErkJggg==">OpenStack</A>                <DT><A href="https://github.com/openstack" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">OpenStack · GitHub</A>                <DT><A href="http://ftp.redhat.com/redhat/linux/enterprise/6Server/en/RHOS/SRPMS/" add_date="1440502939">openstack的源码包下载地址</A>                <DT><A href="https://wiki.openstack.org/wiki/ReleaseNotes/Havana" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZ2Tvy/DURTFP+d5RSNCdPEjNrEwoH8AYjR3F/F/iP9DxN7ZYsEfIDqLsmEhRERp+46hX6KiVU5y33Deuzf33HueLqeKJexNwxBgeoMEz0h70WYbmOsx8RNuHdMBPPbX5C9lxuI35g1xDrxg1HYjDOQxs0D/Bx2B1ywCcNwXtVF/is9htNFWID1E54YbQ82694FVIAGvqk4trkEYBCslXc/cnJ6pwzANupgoLobgSZAh1SLWFqQCKChwAlTovA0psI5ZhpRAdxFYAY1nMh+hJCh3yC9JVBeANVojug0dXvaMCByDC6BgVIFyFzOVbYoV4RFwJkHe/RiiE9d0d6OdOFDgDIIh1VSdXLoCJmit8agv96c13kRgIAuAlWbDhyFff6HWbqSQr7vZIA/MArmMHvjuxH7M/M/N/6wpgO67aP4Fuo8SO5h/fmf23gEKpoUL/1SIegAAAABJRU5ErkJggg==">ReleaseNotes/Havana - OpenStack</A>                <DT><A href="http://longgeek.com/2012/07/30/rhel-6-2-openstack-essex-install-only-one-node/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA4klEQVQ4ja1TMQqEMBCcPUQEERF8gFr5AUtLv2Dng/yLtZDSP9jb2omN2miuUhJzxuO8VMnszuzusKE4jjkenNcTsiTA+W+NGPslSRKUZXlL2LYNeZ5jGAZZwLIsmKaJoigwjqNWRIwbYqDve3RdByLSCuzjEpFqokj+5ItIVjo4J6ZpiiiKFLyqKkzTBCK6FiAi2LYNz/MOLAgCZFmGuq4xz7O+AwBgjIExJmFt20rv/y0SAPi+D8dxLpcqDEMFO0ZY1xWu66JpGm3FZVmkAiR+Js757Q6c86QRviGf8x6b+AZ06VLOo1wSCgAAAABJRU5ErkJggg==">RHEL-6.2 OpenStack Essex Install (only one node) « Geek Blog | Python Linux 云计算 | OpenStack 虚拟技术 HPC | 性能调优 自动化 服务器架构</A>                <DT><A href="http://my.oschina.net/hjswust/blog/120133" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">OpenStack Identity Service 身份认证服务——KeyStone - hjswust - 开源中国社区</A>                <DT><A href="http://wenku.baidu.com/link?url=Zum4imX6u2uBxiXvVGu-Ig8kBp8pjGfOlEf8Myvt7x4wMgnTntctgJ2rhz9uFGMZ2ywF_QJar5YJkEDbHQ6ik7jb73wCKOd_nhI358CLxPa" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">CentOS6.5+OpenStack+kvm云平台部署_百度文库</A>                <DT><A href="http://www.cnblogs.com/osxlinux/p/3388031.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">keystone 手动建立租户，用户，角色，服务，端口 - osxlinux - 博客园</A>                <DT><A href="http://www.21ops.com/cloud-computing/openstack/3269.html" add_date="1440502938" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC+ElEQVQ4jY2Sy28bdRDHv/PbtWN7XdskFg/JCQ01CgpP0dADqlBuHIBzgCL1D+BCWxEeEgKiNFAJDhW9IXLghoSQSEECGSFBeOVQNRVNi6tNqe2kGweT1Ov1xmvvb78c6lSpkBDf08xoHp8ZjYHbpQCwb9+ZTCYfUUpltNYN/A8JAAwPDx+wLGs+m81WLcvayWQyzXQ6vZjL5Y6SlP8szmazBwHU4vE4AXBgYIAAaBgGAVAp9TFJtZt/mwqFwmAikbgyPT3NUqkUzM7O6nw+H01NTUULCwu9+fn57vj4OAEc65Oo3VqjH3hlZmaGe/XnVTva61cqFV0sFmsAcv/CHxkZ+bxWq2mSYfPGVuQ49Ygk2zth5FxfZ7cbRCR54sRxDeBwfxV16+r5fD6dTqeFhLH48+9ycu4tQe8XlD77UE6d/oRmLC6RDmkahgKQ3J1u9gm4trZWsW0bExOP4/ChDd7/wHVpXP4Aj3oreOzQ0xK561FjJ6aWlpZaAKoiEgEQBUCRlM3Nze/m5t5HqLs6alR54Qsf068u49OfBrBRrWFno8xvvi3hx8XFVZJX+gAEABkbG9tnmubZM2c+YhQx6vZIdgLeuHaR9eoqr1Wd6MLFy/qrhS/DYrHoATiyez8FgOVy+bnR/fufff6FF0MRQKSHjoC9TAFeKGzUa9JwaiqTyfCJiQkLwBuTk5MmAJr9TvcN5fPIZbMGQOpeCNdtSst16bqutL0WPK9FkGKlUhCRQdu2MwC2TABIJpOXHMd5meARQJ7cbna06wXiez7cps9t12er3UXgtwxSvxeLGZ1er2fe+gGSIiJcXv7+wTv2GWe3687oyvlLKK8HSKYi3JNPIEGBs9k8dezt06/vfaKbK7wrAgB3108+ZHUMM90O60N6VVXWU95Tz4xYD98bi5t/2J2W5Y799eZrL2mNbaXUlud59k2MdxABwF2Fwa+dc1d/Pbfi4IfzbeM3u6J15+9YeHBIjbLRNq3hWEo8+Ea24/t+EARB+x/+qqBYJXsyPQAAAABJRU5ErkJggg==">OpenStack安装与配置 - 新世纪Linux社区</A>                <DT><A href="http://www.openstack.cn/" add_date="1440502938">OpenStack中国社区 « OpenStack中国社区致力于为OpenStack技术人员提供分享和交流的平台, 推动OpenStack在中国的普及和应用, 协力云计算产业链各企业打造开放, 共赢的OpenStack生态系统。</A>                <DT><A href="http://repos.fedorapeople.org/repos/openstack/openstack-havana/epel-6/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrUlEQVQ4jW2SW2yMaRjHf8/7fd9Mx/SgDqtlIyVDteqwaSIbQxgSF5s1cV2u3KxEKhmHC3cu3TjvuieUy7XJUhEMLnQd1jrVZNCwqDZabdGZznyHx8VoM8pz9b5vnv+T//v7P8Kkiq1ub3Ysp03RJMJCAJSsIH+5vtvx7Max7vJ+Kb80rU2dV2GDINb4m+8HFIoexhgg8MMhpzOTPvTrNwMWJVKXBVlXPjAUstn9W5K2TXGMQNfDN2zbd4bCUO+VzNVD6wEsgKZE6m9BNpSLR3MFTh7ZwS9rl1J0Pbqzr8n2e9zvBfUK82rrWlYMvOjqkNjq9mbbth+U2wZY3jKfjqPbufvoBVvaj5EfKxCOVvNDS5ygWGCw+5ofqFliHMtpmyxWhZ8WNwDwx8lLqCpTImGMl8P7NIIdqUIQyzZms1E0OTkJVUVM6VwsuoCWgBkLK1JJ4Ba+hKNJeyIqEYxTQf3MauqmV/Fj3QwAljU3oKr0vc8zGqpHjMXY4CtEDCoslKbETtUgoCbWihWp4cTeBLHZlZNNMTzqsX7PRZyxQT6+fIhqgKIFaUqktKphGeGaWbif3hOb5tPSUMuqFY3EWxfQce4mr94O8s/jPrLPX+PnhhFjjX/hgW2cCpxoLe7oCCM9/3L3uXLnlmLbhnjrAi6k/+P2vacYIxMcJirgTyNiQISgmCvhH18ip9Toez7y1b6Ok8bzVc8a9T0IAuzoVOQLesexWfNzM54fMDD0AfnOBIXOp9cPP7EDr0h+4H8q5zSyf982Ksgzd850GufXc+t+D719Q9+KlUuZ9MGNALYKH3L9PdUhx2LlkjiVU8J4vk+6K8PWXcepCDtf2VbozKQPJOFgicmiNamNGE6hVEejEWZOqyKXL9L/brgETtVVyAic83FPZ9O/Z8rdfAZ/PhUoPj8pTAAAAABJRU5ErkJggg==">Fedora People - repos.fedorapeople.org</A>                <DT><A href="http://docs.openstack.org/developer/openstack-projects.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Openstack开发者手册</A>                <DT><A href="http://blog.csdn.net/hunkcai/article/details/15503529" add_date="1440502939">Centos6.4部署OpenStack - hunkcai的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.choudan.net/archives.html" add_date="1440502939">臭蛋</A>                <DT><A href="http://blog.csdn.net/cybertan/article/details/8720307" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">openstack各组件 - cybertan的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://blog.csdn.net/ugyn109/article/details/7406718#comments" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">CentOS6.2下源码安装openStack keystone - ugyn109的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.osforce.cn/openclass/85/show??fr=weibo&mu=140609MwfkTx" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/UlEQVQ4jW3TzUtVURQF8N+53tQsIqSgGpiDeEU4qFARZ0GF0OcgKmhQgdYoommjoFF/QlCDiCSIQBRr0odFvNInEVFBDUwkRCrEQUi97J4G9ypPaY/2YK911l57nWBFjbELZxJ68LKdPijTnNKG/egOZLiR1oJfsw77Es5HGgOb0FfhSORSQifWQmQBO5YR1HEschJNmI3cHOcujoQCWFMLgcllBJHWQCum8BDrcTwyEfkcmMD3Ynz+N/1phSuRjRmPIlsDCd7gAS7g3E8G9/JzpV8QKvwJpJHHhfSZwJ0qL7qZ/R+ottLArwK4PvA+40mVcqC5whDuB/oy5gLXOxisJUgiLyO/IvOR4UC5nvaUi8XM7kJVNWPbKKVnNC4Z38unhMORJPAcq9GLNRl9kYGH3CqxNnA24XQDTVsojxDTOj5G7gUORFr/Mr6KV4GmTr4uvnSIcmR7pCUwt5MU1QQf5MkqY6aO5iy/+eZRSjXrzhfhmf7L+Amq5CyLt2/Blyr9CSMpbSE3d4kg0BzoSXCVN1fJksjRjKcxv8K1RobqOb/A+07ewiiHIpcDpcicXEmeg8WmQmfgIPbEXNlUYEsBKGFD5HbGAGa7Cn+WotzB2BjtSb7KtuK3TWE60BZ5Gxjv4t2yIK0I1o+MSXzDcJX+Bk5F6nF9hpEV8/4BpvqlQQ14tBgAAAAASUVORK5CYII=">开源力量公开课第六十四期 - OpenStack在企业持续集成中的实战 - 开源力量 - 向IT技术大牛们学习！ - Powered by EDUSOHO</A>                <DT><A href="http://docs.openstack.org/developer/ceilometer/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Welcome to the Ceilometer developer documentation! — Ceilometer 2014.2.dev18.gc5ce0a7 documentation</A>                <DT><A href="http://www.oschina.net/question/565065_66271" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jW2TS2yUZRiFn/f7/n9u/aedGVumtEXGQrFWgveqUYPEKBpduXBDCBuTLtCVSzYkunDjxktiNKxM0KQhuKnd4YQokkIIiEZbGmjTlmk1zVw605n/9n0uitggZ/Uu3ic5yTlH2K6TKE5iABjtLzHSu5+Em2UzWGP69wtAB4sgAFjgzrklASyHRp4tjPdPZAvJw6muxE7tKAmDOGzW/SuVudopvrnyNfdAd2Hn2NMnhsd3fNi/p0ckNpjQgGBFRFRS02yEzF9cnap98tMRoA6gAQVY5+hTH+x/fffHxYGM9ZthFPkxIiq2FhP6Rowfm3RaR717c4/U8t6BYGb5NCAasDxfGn3o1d1ndj7o0aoFKK1UwnN1EFsdW3Qq44iNLEEnkkxKdQp78mPVbq8dXl7+2QHoGh94t38k53Y2wlBp0Sqh1K2r6wurtxpfmTiyg/sKx0sHHhhKiEOzFWfqf7c61pExQDmAyvWlX3Adse3Yksq6cvPa+tLSZ7+9TKWyCLD48MBZ/8hoOZnUa5X5+rfBzMpZrq3MAThAWifULhsZ0Q4mNEhtrT1JpbLI+3uTXB+KKZdnV88lnqC8UAX87Smo7XlaKyICyqEHgJfmI34sxwCUF/66F/7XQTvqxAs4asDEkSTA9A55b9fHd33JO0uXATg4/EzxUOk7EfvH6o3G95QXplleX7nbg8x7z330+GulExJGYWzQbkqryo1as7ba/sEKulBMvzk4lk8ZC61aQGO9U7/9Z3Wq9fkvxzRAqJybTjEz0TvkuUEnsja2kitmkr3D3Y/2lbJj3fmUE7QiE/lxnO1J+KlCylubrZ4JLi2Xt4q0XKs2+nLV7GDXWz35JFFg4igwYiMTm9CYMDCIwiQzrg1Fkr9OL041v7g48V+RQOz1yqX1rBe5nvtKT39GO1pENKIcUW5CKSfjqo1qoGfP355sfHrhKBDcf0xvjB7se7J43MsnD6c9txsEfzNqb2745yuz1VOcvjp5vzFxZ6CCbMXKi/seY0dqBKuE+uYi5+Zm/vcD/AP1b1emLqf/pQAAAABJRU5ErkJggg==">CentOS6.2下源码安装openStack keystone - 开源中国社区</A>                <DT><A href="http://wenku.baidu.com/view/11fcd75f58fafab068dc0216.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByElEQVQ4jaWTv2sTYRjHP3dJzJk2Q6RoMzQi6HCiCFdKJCgiVHFQkEIp1Eymgz8G5y7i4uAiiCCoiAoqIkTyBwgOSrAEQ0HaKuhwSaVNaKNJo+auyT0OodFrLgj2Mz7P+/2+3/fHo+iGKWwBP8D8+9h/ifcPF1C9Gq9e/+TQ4SLpTB2Auw9qXLteoeX0SLCZFy/rrK8Lj56uEY36uXXnOwCJuMbJ0ZBrrStB5Vt7i1CoXd4RUVlaanb6G3XPBPlZi2SqRHxE4+p0BC2ocG4iTGzIz0zO4uCBbezbGyA70yAR1/446IYpIiI3blZEN0zRDVM+f7HFi6MnFkU3THnyvCYiIrphSidTdLAdRgsqDAz4mFuwGZtcZjy5zOLXJg1LWFltATC/YHcfYXIiTCSismd3gGrV4fyFMmv19p1MXS7z7OEgibhGLm8xejzUbeBT4fSpPlZWWyRTpY4YoFBscvFKmcf3d6EFld6vUK05JFMlCsUmm/kwZzN1qewy7jJIZ+qe4g3ysxbpzI/eBoGAO54XjuMeHddPPHumjzfZX7zNNogN+Tl2ZDs+H7zLWXz8ZDMyHGR8rL+3Qbhf5d7tnf9M8TfKVsf5N9mtvVgM6ArFAAAAAElFTkSuQmCC">OpenStack Havana安装测试报告_百度文库</A>                <DT><A href="http://longgeek.com/2012/07/30/rhel-6-2-openstack-essex-install-only-one-node/" add_date="1403598222" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA4klEQVQ4ja1TMQqEMBCcPUQEERF8gFr5AUtLv2Dng/yLtZDSP9jb2omN2miuUhJzxuO8VMnszuzusKE4jjkenNcTsiTA+W+NGPslSRKUZXlL2LYNeZ5jGAZZwLIsmKaJoigwjqNWRIwbYqDve3RdByLSCuzjEpFqokj+5ItIVjo4J6ZpiiiKFLyqKkzTBCK6FiAi2LYNz/MOLAgCZFmGuq4xz7O+AwBgjIExJmFt20rv/y0SAPi+D8dxLpcqDEMFO0ZY1xWu66JpGm3FZVmkAiR+Js757Q6c86QRviGf8x6b+AZ06VLOo1wSCgAAAABJRU5ErkJggg==">RHEL-6.2 OpenStack Essex Install (only one node) ? Geek Blog | Python Linux 云计算 | OpenStack 虚拟技术 HPC | 性能调优 自动化 服务器架构</A>                <DT><A href="http://www.openstack.cn/" add_date="1404101179">OpenStack中国社区 ? OpenStack中国社区致力于为OpenStack技术人员提供分享和交流的平台, 推动OpenStack在中国的普及和应用, 协力云计算产业链各企业打造开放, 共赢的OpenStack生态系统。</A>                <DT><A href="http://longgeek.com/2012/07/30/rhel-6-2-openstack-essex-install-only-one-node/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA4klEQVQ4ja1TMQqEMBCcPUQEERF8gFr5AUtLv2Dng/yLtZDSP9jb2omN2miuUhJzxuO8VMnszuzusKE4jjkenNcTsiTA+W+NGPslSRKUZXlL2LYNeZ5jGAZZwLIsmKaJoigwjqNWRIwbYqDve3RdByLSCuzjEpFqokj+5ItIVjo4J6ZpiiiKFLyqKkzTBCK6FiAi2LYNz/MOLAgCZFmGuq4xz7O+AwBgjIExJmFt20rv/y0SAPi+D8dxLpcqDEMFO0ZY1xWu66JpGm3FZVmkAiR+Js757Q6c86QRviGf8x6b+AZ06VLOo1wSCgAAAABJRU5ErkJggg==">RHEL-6.2 OpenStack Essex Install (only one node) ? Geek Blog | Python Linux 云计算 | OpenStack 虚拟技术 HPC | 性能调优 自动化 服务器架构</A>                <DT><A href="http://www.openstack.cn/" add_date="1440502938">OpenStack中国社区 ? OpenStack中国社区致力于为OpenStack技术人员提供分享和交流的平台, 推动OpenStack在中国的普及和应用, 协力云计算产业链各企业打造开放, 共赢的OpenStack生态系统。</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">keystone</H3>            <DL><p>                <DT><A href="http://docs.openstack.org/icehouse/config-reference/content/keystone-configuration-file.html" add_date="1403230187" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Identity service configuration file </A>                <DT><A href="http://docs.openstack.org/developer/keystone/installing.html" add_date="1402866095" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Installing Keystone — keystone 2014.2.dev24.g7029722 documentation</A>                <DT><A href="http://docs.openstack.org/developer/keystone/setup.html" add_date="1402869141" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Setting up a Keystone development environment — keystone 2014.2.dev24.g7029722 documentation</A>                <DT><A href="http://docs.openstack.org/icehouse/config-reference/content/keystone-configuration-file.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Identity service configuration file</A>                <DT><A href="http://docs.openstack.org/icehouse/config-reference/content/keystone-configuration-file.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Identity service configuration file</A>                <DT><A href="http://docs.openstack.org/developer/keystone/installing.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Installing Keystone — keystone 2014.2.dev24.g7029722 documentation</A>                <DT><A href="http://docs.openstack.org/developer/keystone/setup.html" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Setting up a Keystone development environment — keystone 2014.2.dev24.g7029722 documentation</A>                <DT><A href="http://docs.openstack.org/developer/keystone/configuration.html" add_date="1451381824" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Configuring Keystone — keystone 9.0.0.0b2.dev134 documentation</A>            </DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">neutron</H3>            <DL><p>                <DT><H3 add_date="1460623050" last_modified="1460623050">agent</H3>                <DL><p>                    <DT><A href="http://labs.bigswitch.com/users/login" add_date="1460623050" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABAUlEQVQ4jWNggILz7/8LMC68+5+BAGBccPcqMp8JxjAUZPzAwMDAgMsQxoV3/zMuvPufgZFBC6sBDAwMDP/jlRnxGYIOTp26LMtYWlo28/qNm2kMDAwMQYH+xklJSedgBqAb+D9emfHYm58aViLsN3x8/f8zMDAwMDIwMDDAOFs2b2REdjI216GrR/ECTAJdAy7NGH7y8fX/j2wIqfJ4FeESZ0IXoAiQ4wW8gYMencjqYGqZCGlGZ6OHPhNM8+ZNG5j23//PgW4zemJasGCBNkxzWlrmRoZTp05JINsET/NoAJc4k5mZ2Qt0QWyAqHzCuPDuDUIGMS68+3/V3S+6MD4AprWeTtw25gsAAAAASUVORK5CYII=">Big Switch Labs</A>                    <DT><A href="https://confluence.ustack.com/pages/viewpage.action?pageId=12780452" add_date="1460623050" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACIUlEQVQ4jY2Rz0tUYRSGn/PdMa+gg6ZkhkFZhuA0QkYQ2CowbBW0q41pTdqi+gOCXEQIQUFI6AxIFkQbETJykf1YRUIEXg3KEFokMUmDlhTjvfOdFlcbbUx6l4f3fXjPOQ4AsTM72X6ghrT5Dl8sm2lfooodzXv4WpaBT9YAYItrkMhT4gdv0NR56J/h+NkjlHAVI2M01NcBCACNF0qJ2HkEF9XPLGbriRafRrgJgNoOlmScUpnFSCWqC0zqNkj6YYN3d5ZAHwIgUkvU7SWTeYDIHMoMnjwiKrcxUhkCGYKkn28Q1qvFOFMg5agqVrtZDkbJqU/Jlg4c6Q3Dmib7q5H3976tBwDsT5zAmGEEA+QItB1jo4jpQ0QAH6tteAPPViPrAQDxc5cQc2slkJdisblOplJ3146dAkD67QTVzT4iR/NhVaxeZCqV+ttuCgAAXvI61vasmWQRZ3wjayFgb1sxTYkRrD+I2j4ARFyM3oeeAr9AogiSPvHOGFJ0DLQVkVZUp/mhLZTJY0RaVlYZRfU5BGN4gx9CQPx8EkMM5DDKPGhVeED1+Sm7calAmAw/ozksCwhbgZdkbZdBOI5lAhvUEfgN+cPxgpn+Obz+aeDNSmGLpzVkbQMqs7hmJILyBKMV+LqIs5xFnSuAwdrXf2CBf41IpAkkACCii6DlWHkl7Gp3KXNPInoK+Ig3cHnDz6wq3pVCtBq1Q3ip4U29/6PfIx/QGMm7b/wAAAAASUVORK5CYII=">BigSwitch调研 - SDN网络团队 - UnitedStack内部Wiki</A>                </DT></DT></p></DL><p>                <DT><A href="http://hi.baidu.com/quantumcloud/item/0e2a48331e5209b5134b14cd" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACqklEQVQ4jU2TXWiXdRTHP+c8z3+sNWYoXQjlRQhpiHZho+iiKMgb7zKhhCn0LnRTZCQStfUCQRFBSTQJEbzsYmjCRPGFRgOFKFyIjGFuGC232fb3//L8fufbxTOkq8PhfDl8D9/zMUamBOBZSEIyUBeyYRLKGRMoAsugqPBsq9oENjylkCRlabVOT3f0waG/NXejIykrIrRwq57GXZ1kr56RK2UsAJxAgPP2G/Mc+36Jg+8t0lox9jw/yxPbpjkxtozhIECgKlY7p7aEQYirU23MjJlrdzh/oc0vE3foduGnsSYikAUYeM44KYDE7PXgmy/mmb2ReXpHP5J48qkB1t5noBJzsXPnACbHagNEFZRIoJJ335nj0sU2p060OHl6A5cvr+GxwV4w+PjrdTRw+vrg4IF5hvYO8PCWBuREad0EBlevtMmFce2PRC5g67Yexseb9PUaL72whizYsmmG9u3g0s8dxicegFThIgOw47kBAB7d7ngFr738F2/uu8nQ7pt8OnyLlX+DajnwAqb/bAEBGUpLQQg++fJ+hl7pZ+PmHj4b+YdzZ1v0hBMGRw7f5sGHSgYf72Vyss0zz/aDHEsVpaqEWyCDR7bew8ihBX4YXaQoIIUoKAlLDL+/wLffreerww3WrS+BQClwstXb3Bn+cJ6jo0sAkAMKJyTCnBTO/tfnOHe+SQEIx3LGyR1ksLwijo4uEWSMAlNJEQ4WuMCjIgI+/2gBBBZCctySA4nCoGGO3BCZbBASAHIjvEBhNFv1abiwboXTSRglff3G/rfWItWplBhuRqEGFqJQkC2za/e9FEX98iiAF09JqpQVd0G58mtH12daSspqtaTff+vqx+OLmpxoapW8GqbBUZntGpMUkIUniOhCZAjHcqqRDQcZ5Aqk/6Ev/gM0QsFr0GxaPAAAAABJRU5ErkJggg==">openstack neutron多节点手动部署配置详解-Havana版本Vlan模式 (1)_量子云技术博客_百度空间</A>                <DT><A href="http://docs.openstack.org/liberty/networking-guide/scenario_dvr_ovs.html" add_date="1460623081" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">OpenStack Docs: Scenario: High Availability using Distributed Virtual Routing (DVR)</A>                <DT><A href="http://www.codesec.net/view/202144.html" add_date="1460623081" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHklEQVQ4jXWTPYrDMBCFP4ctFvcuB6/JCXKUpMkN0ir91u7l1jdwYx8lsOByyY/KvUA6bWEspGjyQBgPem/eG0lF5fEo+CvyWqXs/AD4/BLc3SH18gXoui7bbAoDgNQCwPPmKCqPXwVi4vV61YzRNA3GGKQWnje3OHB3lxCttYFwOp0AKMsSgHme8wgxrLWY9hz+u2+bCL1is2YyxiwrIofs7Zm+71WBZAYaOcbqZm2aDBEIg9Qi7I+HUJuGMQhQebzU4gEvl62Xy9YDYWk1WDiVx2/e2dXi7I+HxAlEpyC14Ha/Cdm0Z7pdHiFGNoO48+PnkRHW/LDcxLcRNLKGREBqSY5qGkamYVS7qxFWuLvLMmvkcA80a6/PWXvKAP8dBJrKH4chXAAAAABJRU5ErkJggg==">Neutron基本架构</A>                <DT><A href="http://blog.sina.com.cn/s/blog_4b5039210102v29m.html" add_date="1460623081" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACOklEQVQ4jQXBW2jOcRzH8ff39/s/px7McpjDMNHIabQLkUM0PC4YLlhy6UIuJYXNMZQoV26IC7kgF05jyuHCShSFotQKJcrqeWZje/b8f7+P14tyeZ8iUU6DKEFr0CCK6AkCtSGhYUIbgpcrcZVKBUMSgiz0ggC4D8AzeAN59AISNAHncAgzI8IoJOgtMrSTNEcqdAhtxwQFktnw7fduiTjiNIw2EyGuQgOkT1AOOWpYwAXvg/kaOLphCHIoC6sB6KXWiN9k96rciyTIEV0ITiGBhFtwFXXhNqKAQcySGXTdxG22Dv28PGOgddGyiQ2TR8rl2T2PExrgMVYi3sW9JYCl9FjcqrlO68To/vK7rVOXbVjfPKultTBmTKIyQATaSaGEDUV9Zl5kjxFExg219ly7uXjajqXF8dO7u52VUB0RfEI7PLvG6wv8wfAZkUIqK9ZYcePOw9yRw9lKhT51hNPIrAs4hhcm3F5gF8l56IRO4yIsXwv95l3dQJ2rcVx2+hT+JOEj/CBeMtpuk77HxoFE6qwoc3cVXO7g8NlznDqB7yJ0MqXE9aec+CquiPk30TssB3jVShb7G2e62+XRMzXcURHhAQsn0L6FzjkUm2A38Aj/FzxUKy3N1SUtbqN3ByD+M4lkEisWUFdPxXABah42QQGq0QqFjo6ZDQ1JoxgPFDFPmsc1YUZ9DnBkA/Rj9RDM8pl8PiZJ8sH4BDwnjqUpJTPCq14+p1Tzog/4RnwEkvq+PBjx33/9B1mnBi90FwnWAAAAAElFTkSuQmCC">Linux Network Namespace_进击的麦兜兜_新浪博客</A>                <DT><A href="http://blog.scottlowe.org/2013/09/04/introducing-linux-network-namespaces/" add_date="1460623081" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABi0lEQVQ4jYWTPW/TUBSGn2NfJ45o3Cl/AdFKDAV1QKEomfioVHUC/luRogISEjNd2qpioHP5FXQh7ZA41Dr2PQxg10nq5mz36r3PPe/5kIePHhv/w8wQERaj6R7ALYpUFQCRADMPQBRFjZAKICKYGb1eDzNDVWm1WghwdX3dmEFQP6gqg50+X7984vvZMYejA3b6z6qsVgLa7Tajj5/5cX7O+nrC8ckpH0aHdDrxakDp0TmHqmJmFEWBc66ydy+gLgqCABGpfNcLuAias9BUqPsiWCUof8/znFx1yU5wl7gUiQhR1OLPTcb20y1237xiMpkQhuEyoHwwm81I05SiKJhOU8ZXYy5/XfL+3VuGwwFZllF3OjdIqsr2ky2e9/s45xgOXjD+PSZJuuzv7/Ht6IgoivD+FiD1XVBVdl+/ZGNzkzxXnItwYYj3Hm+ei4ufnJyeEcdxVYcKUFqYpinZzb80zcAwyozjuMPa2gO891XHlnYh6XaRJGnsSFEUc+12dYGI4OsG74jFWfkLiJLA5B8vH4QAAAAASUVORK5CYII=">Introducing Linux Network Namespaces · Scott&#39;s Weblog · The weblog of an IT pro specializing in virtualization, networking, open source, and cloud computing</A>                <DT><A href="https://wiki.openstack.org/wiki/Neutron" add_date="1460623081" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUUlEQVQ4jZ2Tvy/DURTFP+d5RSNCdPEjNrEwoH8AYjR3F/F/iP9DxN7ZYsEfIDqLsmEhRERp+46hX6KiVU5y33Deuzf33HueLqeKJexNwxBgeoMEz0h70WYbmOsx8RNuHdMBPPbX5C9lxuI35g1xDrxg1HYjDOQxs0D/Bx2B1ywCcNwXtVF/is9htNFWID1E54YbQ82694FVIAGvqk4trkEYBCslXc/cnJ6pwzANupgoLobgSZAh1SLWFqQCKChwAlTovA0psI5ZhpRAdxFYAY1nMh+hJCh3yC9JVBeANVojug0dXvaMCByDC6BgVIFyFzOVbYoV4RFwJkHe/RiiE9d0d6OdOFDgDIIh1VSdXLoCJmit8agv96c13kRgIAuAlWbDhyFff6HWbqSQr7vZIA/MArmMHvjuxH7M/M/N/6wpgO67aP4Fuo8SO5h/fmf23gEKpoUL/1SIegAAAABJRU5ErkJggg==">Neutron - OpenStack</A>                <DT><A href="http://blog.youlingman.info/debugging-iptables-with-raw-table/" add_date="1460703517">利用raw表实现iptables调试 | 天地一沙鸥</A>                <DT><A href="http://www.cnblogs.com/fengzanfeng/articles/1339347.html" add_date="1460706555" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">TCP/IP详解学习笔记 这位仁兄写得太好了 - 冯赞锋 - 博客园</A>                <DT><A href="https://bigeagle.me/2016/02/ipset-policy-routing/" add_date="1461059183">使用 dnsmasq 和 ipset 的策略路由 | K.I.S.S</A>                <DT><A href="https://intxt.net/block-ip-with-ipset/" add_date="1461059195" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAOklEQVQ4jWNgGPKAEZmjoGPggE3RgysXDiDLw/gMDAwMTLRyGf0AUWGADkZSGKDHP7o4A8OwCAOKAQB38RQKB8hfOwAAAABJRU5ErkJggg==">利用 ipset 封禁大量 IP</A>                <DT><A href="http://blog.csdn.net/tantexian/article/details/45395075" add_date="1461315696" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">openstack neutron(tap、qvb、qvo详解)（转） - Better Me的博客 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.cnblogs.com/peida/archive/2013/03/05/2943698.html" add_date="1464163011" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">每天一个linux命令（53）：route命令 - peida - 博客园</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">glance</H3>            <DL><p>                <DT><A href="http://docs.openstack.org/developer/glance/" add_date="1403254014" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Welcome to Glance’s documentation! — glance 2014.2.dev29.g95fc85d documentation</A>                <DT><A href="http://docs.openstack.org/developer/glance/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Welcome to Glance’s documentation! — glance 2014.2.dev29.g95fc85d documentation</A>            </DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">cinder</H3>            <DL><p>            </p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">nova</H3>            <DL><p>                <DT><A href="http://docs.ceph.com/docs/master/rbd/rbd-openstack/" add_date="1460623064" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABkElEQVQ4jaVSPU/CUBQ9bV8TJE0oX4uDYRIHFwd2YhAGYiJGKyb4D9ycnBwcXHTwB5g4NCTWmLhLooMy+BESRUEnhsqAAjUSGSrUwbZ5lLLoHV7uve+ec+697wH/NMaZmPD5/PfzqZZb8bSseFWgO5JAy0kGHXd0/ZOwLOPhOIHOi7Ji4xg3MF0wSsCqIQBwlppdpy/eV5fOCcfGaXBZ0/KirDAWyU5sJrF5UyowNLMoK4y2JjVhIGDiemaXLAB893svofxJlK4nlIhhngG3MbScZBCWm3SOxVKt2/723UPEAllq+9WnpHW/USoGhwgAYCESEQFgr1J5jY8Hp6x8wu/3bd2WL6344FFtDRHUs4uN01pNM5X1i3qzCqDBAPVCu/2h5aQvahzbt3fgJSTsmPlNlJWw6Q98HgBjzg76AKBmM0fU8kIUwAP8LlZdyVybua5NIMoKBwAC4SUA6Oj6s0MRHV0/BgCB52MmxjuwA/rZBJ6POgkEnl92qx14BVFWmGI6eegEW3aVntsd9c3/bD/bqJNDNNUVdwAAAABJRU5ErkJggg==">Block Devices and OpenStack — Ceph Documentation</A>            </DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">docker</H3>            <DL><p>                <DT><A href="http://tuxknight-notes.readthedocs.org/en/latest/docker/dockerfile_best_practices_take.html" add_date="1450238135" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACT0lEQVQ4jWWTO2uUQRSGnzMzuzubZONGlKitEASjFoqCaOcFG8VbtBYL/4J4RxFBBBtBUAQrRa1sRLQVRVG8JCksLDWJScyyi9lkZ+ZY7H7fJniquTG8z3vOK/sOn9QYAiG0AKFdinMFjHU0GnWSKlmJCKqKL5Xw3uNCCKwaXMPqwXXEGAGw1jI18ZPa7G9Gjh6hVCqSkiICIUR8qcTX0TFGx8dxIbRYNbiWTVt30KjXAejrr/D5/Vvqf6Y5cewIzlpCDIgYnLOsXNHHvYeP+PDpE04QUkw06nVeP38CwJ5DI6QYEREmp6a4duMmc7UalUqFqxfPYYyh2ZzHGIPJ2IzJl8vW1trcl2xvrc3fOARUE8459hw83j50DlUlpYT3nju3b5FiBBEWFhZIMeWGO7TtbEqJH9/HARjauAURQUQIIfDi5Sv+zs/jSyV279qJGMkVdT4wxBj58v4NAOs3DCMiGGNYXFzk7v0HzMzOUK0OsGP7to58XY5grWXztp05Z4ZQLBY5c/pUrqBYLJLSUgQBVcUYw9DwltxEVUVVcc5xYP/eZR5o0v89UFUWmk0Ayj09iIA1lmazydkLl5mrzVGp9HP9ykUGBqrLEbIRzVojko10t5XW2CUt7ZYDct42G6SUUIXUae/VS+eJISDG4Kyl1Qqk1FGgqljn8OUessj4cg/WOUCpVqtU+nqJnclsLbYYWNGL956UEs65AtOTv/j28V0nkeBcgZmpCZIKj58+o+BcHqZ2Ej3fRscoe48sjXPG3na/G2ftmp7fZ3H+BzaBF12WwHSWAAAAAElFTkSuQmCC">Dockerfile最佳实践 — Dhub 0.1 documentation</A>            </DT></p></DL><p>        </p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1672911369">python</H3>        <DL><p>            <DT><A href="file:///root/Documents/php/php_manual_zh.html" add_date="1406623115">PHP Manual</A>            <DT><A href="http://www.perl.com/pub/" add_date="1396148874" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACZklEQVQ4jZWSQUsyURSGz73eiSStwQIhjZKZbExC0Ghpq9y5iEhclDsX+geivxDUqh/gwlW5dRVGuWkEIRBykY7JyChOEIhg5p2Z22KE79t21ud5eTnnQZRS+MsQxhgh5OPjQ9d1v9/v8/kYY5TSh4eH5+dnjPHZ2dne3t50OiWEAIAjlUqVy+VKpXJ3d6dp2v7+PgCUSqVcLjebzcbjcbPZXF1dDQQClFKMseP29nY8Hquqquu6aZoA0Gg0isUix3HBYDCVShmGMRgMRFF0uVyMsXklVVU/Pz9DoVC9Xpdl+eLiwrKsTqcDAIuLi4qi1Gq1ZDJpmibBGKuq6na7Y7EYY2wwGGxtbYmiaFnWcDhsNpuHh4fhcFhRlG636/f7sWVZgiA0Gg3GWDqdFgSh2+22Wq3Hx8fRaCQIwnQ67XQ6Ly8v9/f3hBBsmubBwcHp6enX19fT09NoNJJl+erqyuv1TiaTQqGQyWSur68RQhsbG4wxgjGezWb5fD4ej1er1Xa7vbKy4vF4CoXCzs7O9/f38fFxMBh8f3+f/wEAbEaSJEmSAGAymZyfn+dyuWg0GovFstmsoihvb2/pdPrn5wfbnH2rfr9vGEYkEtE07fLy8uTkRJIkjuPW1tZ4ntc0zeFwEBtACDHGeJ4XRZEQEo/HDcPY3d11Op1erxcAEomEz+ejlOL/PTFNc2FhYXt7W5IkTdNubm4wxjzPO53Ozc1Ne+cfgBAyDMPtdgcCAcYYQqjf77++vgJAr9eTZXneHAAsy+I4Ttf1er2+tLQkiiKl9OjoKJFI2LIsLy+vr6/boeivev8CmRg4HYjud04AAAAASUVORK5CYII=">Perl.com 官网</A>            <DT><A href="http://www.python.org/" add_date="1396148874" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACN0lEQVQ4jWWTP2gUQRSHv907zSVRxIBiIjaCTRobKwuLQLARosKBtqKNoqnTCIKFIEI6IxY2wSaFGJSIIioGMaeetkbEGKNJxJPjLrszO/Nm1uJ2zSYZeAzMfL/3fvPnBWwaI7dePrCJOead6RObIMYgidJG67u12xfHAA24nA83J3BOTj4eG+5zYnHW4sXivauAvwwcACpFfmsCazl+bRondj2szbf7gZ4iXwYYGZ+96q09aIwKjFaTRrXKouOSM4Zwe1c1TX3OdwGlDQlOj7957pwd8k4IvCcgpVTe3kGDEk5skSddrC57G2lJoptdg69uhD51Qx2rZqPtLPIhuj0DWCQmdKpSTtUlYKCcg74g8oVzp6nXLole1O+N3flTHx5GFEhM6FUf0F/eILaWZK0583Nu+v5S/VkTECAFzOLr4cHdvTKKU+BikBiguywm0V5sxYlFtRpTtYkrk+2F0TM93YdOhU5V/sMSkVdHFF60BoJQRBZy679qTx9GP0Yv7Oh1Z0NfFMcFcQxOE8fpO8CEXkcTYox2YlmqP2r2VNyJdUFBVBADfJxPngDtIPtZ/cB+IEmXz9Vy+Pdqcyr0UYpTYBU4BcCX7/bT0fONt8C3MmCAFaAFpMVqe3dJFXHgLIglOLIyBKwBKuMbIeCzhQbw19tYd6wW4vA8Pk119iLLwNdsjrf0QtRqVa2OPngT6dyJnRv4PPteXwcsEGcFLZAGmxNkd7IH2AfsBLZlLttZ1VU6LQ3AP75vsPXueofxAAAAAElFTkSuQmCC">Python.com 官网</A>            <DT><A href="file:///usr/share/doc/python-docs-2.6.6/html/index.html" add_date="1394970799">Python 2.6.6 documentation</A>            <DT><A href="file:///var/www/html/python-2.7.8-docs-html/index.html" add_date="1415006517">Python 2.7.8 documentation</A>            <DT><A href="http://127.0.0.1/django/" add_date="1406945090">Django 1.6.6 documentation</A>            <DT><H3 add_date="1596439270" last_modified="1596439270">python开源项目</H3>            <DL><p>                <DT><A href="http://www.open-open.com/news/view/1d71bd8" add_date="1406707580">2013年最好的Python开源项目汇总 - OPEN资讯</A>                <DT><A href="https://github.com/aluzzardi/wssh" add_date="1406707597" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">aluzzardi/wssh · GitHub</A>                <DT><A href="http://fomori.org/cherrymusic/" add_date="1406707612">CherryMusic | Home | open-source HTML5 music streaming server</A>                <DT><A href="http://www.open-open.com/lib/view/open1389852374523.html" add_date="1406707651" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACRklEQVQ4jXWSP2hTURTGf+e+1/TlX3lpmlIRQVEipgQkUkWsBEV00EEc1EVcXHR0FsEpUxCsi2BLiyKFIlZ0EAsO4p8gmLmii6AUkUo7pEka3z0OvZWY4oEL9373fOd857sX/g0BPLf3gQNAvOsu1pOP30NWIHLn/cBBoA0MANuAx115WzoDpIFrQB/QD8wBz4AbQAY42Us0XRV3Aq+AHQ4/7whngDWn5Apwr6cp4iR+AC4PDg4OeJ733hijImKBdWOMGmPq2Wx2OzAJVHuLVLrAN05RG7BurTvsIxtGvgXGN8kZBySBo4VCQaemptYnJiaioWzGJuP9tlqt2pmZmfbY2JgCx4BzwPSmB+PAV6ARBEF+fn5eR0dHpdFoyMO55zx68pJYrJ9cLmcWFhZsGIZF4IXzLPCB3cAvAN/3DwVBQD6fJ51O677EF4Nt82nXCc2EGUTExOPx4ysrK3dE5LeqZnzgt5t3KJFIXEwkEoRh6IdhSPPpTWj90L0XXgvgN5tNm0qlTgOngIbzhbIxZhK4XiqVVFU7diMiayMbRR2NImujKLKqasvlsgLvRGQO6DNATURywNUwDCPnC4CoioCH/H0sSCaTHeCw53l1oGOc/Glgz+rqagSItRZVRQQVQVUVay2ALC8v+8D3IAjud38kgNuxWEzr9Xqk/4laraZBEChwdstvVFUBbuXz+fbs7KwuLS1pq9Wya2trdnFxUSuVio6MjPwELjnO5qhb4gjwYHh4+FupVIqKxWInlUp9Bu4ChV7yHyVp7cA3CYDMAAAAAElFTkSuQmCC">Python开源项目大全 - OPEN 开发经验库</A>                <DT><A href="https://github.com/flftuu/blog" add_date="1406710167" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">flftuu/blog</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Python学习手册</H3>            <DL><p>                <DT><A href="http://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/" add_date="1409901112">Python yield 使用浅析</A>                <DT><A href="http://docs.jinkan.org/docs/flask/tutorial/templates.html#tutorial-templates" add_date="1458901023">步骤 6: 模板 — Flask 0.10.1 文档</A>                <DT><A href="http://www.linuxeden.com/html/news/20131217/146475.html" add_date="1414561267">像老大一样调试Python</A>                <DT><A href="https://github.com/pyflakes/pyflakes" add_date="1414577119">pyflakes/pyflakes · GitHub</A>                <DT><A href="http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html" add_date="1414650109">Json概述以及python对json的相关操作 </A>                <DT><A href="http://blog.sina.com.cn/s/blog_a15aa56901017liq.html" add_date="1406272451">python 详解re模块_Rocky_新浪博客</A>                <DT><A href="http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html" add_date="1406272951">Python正则表达式指南 - AstralWind - 博客园</A>                <DT><A href="http://www.blogjava.net/lincode/archive/2011/02/02/343859.html" add_date="1404455809">python 的编程规范 pep8</A>                <DT><A href="http://blog.sina.com.cn/s/blog_66d7a4550100tw1b.html" add_date="1407483535">CGI，FastCGI，WSGI，flup，spawn-fcgi之间的关系_Joewolf_新浪博客</A>                <DT><A href="http://zires.info/2011/01/fcgi-scgi-wsgi-cgi/" add_date="1407485604">fcgi，scgi，wsgi，cgi | Zires</A>                <DT><A href="http://www.cnblogs.com/dkblog/archive/2009/04/16/1980757.html" add_date="1418269008">python下编译py成pyc和pyo - dkcndk - 博客园</A>                <DT><A href="http://www.oschina.net/translate/open-sourcing-a-python-project-the-right-way?lang=chs&page=1#" add_date="1418278997">以正确的方式开源 Python 项目 - 技术翻译 - 开源中国社区</A>                <DT><A href="http://developer.51cto.com/art/201309/409266_all.htm" add_date="1418280897">以正确的方式开源Python项目 - 51CTO.COM</A>                <DT><A href="http://www.ibm.com/developerworks/cn/opensource/os-pythonpackaging/" add_date="1418283049">Python 打包指南</A>                <DT><A href="https://docs.python.org/2.7/library/argparse.html?highlight=argparse#type" add_date="1418382708">15.4. argparse — Parser for command-line options, arguments and sub-commands — Python 2.7.9 documentation</A>                <DT><A href="http://blog.163.com/ws__fyy/blog/static/12243381720123181013666/" add_date="1418719091">struct.pack unpack - 小呆的日志 - 网易博客</A>                <DT><A href="http://www.wklken.me/posts/2013/08/20/python-extra-itertools.html" add_date="1427860202">Python-进阶-itertools模块小结</A>                <DT><A href="http://blog.csdn.net/xiangmin2587/article/details/8182775" add_date="1427860234">eventlet 模块的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://www.oschina.net/question/253614_115412" add_date="1430186185">Python 的神奇方法指南 - 开源中国社区</A>                <DT><A href="http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html" add_date="1440502939">Json概述以及python对json的相关操作</A>                <DT><A href="http://www.ibm.com/developerworks/cn/linux/l-django/" add_date="1457952181" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA50lEQVQ4jd3STyuEURQG8N8bXpSIspixsmczCysp61koPoCVfKFZjEyTBXuKfABWsqMmZWFjIZHyJ8rCYo56u/O+H4CnTvfc5zz3OafO5c9jqIJfxg2mIz/FOe5S4XCFwThGMYkx5HEOICvh6sHnWIr8Al9Rvy8zGsE6jvGOOezgMKKDGl5xgo1oIMMadjEbZvtoxYMiHrCNzbg/YivDE2YKwpWYZjUxuMQezgrcc2pwjUXMYyoxeMMtrrDwawBN9KJDIwoHeEniKGqN0PbQLNsC/fVOlEzwXaEfQI42PvCJrv7f+I/4AQehLHq2KP0GAAAAAElFTkSuQmCC">Python Web 框架，第 1 部分: 使用 Django 和 Python 开发 Web 站点</A>                <DT><A href="http://www.dotnetperls.com/slice-python" add_date="1471921827" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABkUlEQVQ4jV2TQW4UQQxFn6trwhANYsEm4iyckh234DBcgA0LJJQommR6usv+LOxmOpRUcrXt//3tqraff1ZJwgXDxQjwEBKIXF++v+P/FRXvUwPJUIhmRjMRZsCN4b6nNUsrgdfum7OZYZYIq2yzPH88QrckkGAIRsDi6f+3DGgGsiy+fT/cw6HBVMmzwzzgZUDfkHYrjZkKbEwNPp/gOEFv4AEXh/MCj9eNYKfADFrSMDWYWio4HfLsAc9LKnJtBHpLkiqgNZia8ekIp7uML543MDvcNbBfT6ukZB4hPJKvGRwmozfok+VsAFXeCFhdtxa02zclb69OQEiE8q2EoH9bO7Pg0eG3w3Mk4EODr+8HEvzoEw1YBJcG54DzBK9RMwjAyaGEdhWr6ijfVfAqeFGCr4IeBRxKkiBvIbbGZIzKmQWXSHtVKuprAbckrxcUu5m4YK0Wlp1dgX4p1iXS4VXYq4Uo8LoDD+1+pnNJumgXtJSYBGIuwqXs2M2sP3kGzgFzDSYfQqko/6ghrtyqA/wFb3kd7H9apYsAAAAASUVORK5CYII=">Python Slice Examples: Start, Stop and Step</A>                <DT><A href="https://www.google.com/search?newwindow=1&safe=active&biw=1858&bih=993&noj=1&q=openvpn++%E4%B8%8D%E7%A8%B3%E5%AE%9A&oq=openvpn++%E4%B8%8D%E7%A8%B3%E5%AE%9A&gs_l=serp.3...56202.63095.0.63302.25.21.3.0.0.0.423.2685.2-4j3j1.8.0....0...1.1j4.64.serp..16.5.1371...0j0i13k1j0i13i30k1j0i8i13i30k1j0i30k1j30i10k1.2hGRpC51I0E" add_date="1472201295" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACIklEQVQ4jYWSS0iUURTHf/fe8RvHooE2VlT2FNqUGWmNEYUR9lhEEVJhUIsoXOQuap1Rq6KHNQt3LaPAIOxhlNTChUwLMU3NR1CklUzg6xvPd1ro2KhTHjjcA/e8/uf/hzmmqsUiEheRLhHxp/2TiDxQ1aK5+ZmFeSJSrwuYiMRVNZKuMxnFz51zu9T3GX/6iPGmRqS/F5WAUMEawuUVRI5UYjwPEWl2zlUYY8YMgIjUW2vPBkPfSV6uYbKvJ+uW3rZSojfuABAEQdw5d96oajHQqr7P8IUqpL8X43lEjp3EK4mBtfgt75l4+4po7U3cytWZPbcyjUlTidv642ipDu7foX7bh2zgs92jDhHpUlWdbNmuEw15OvqweqE7ZjboCAEFADrSjs1LkRM7NAt3+bWRebfYudFx9XguwFqbwePs9z/mT/6NLdAHMBpex28W0/C1Y1Zy05VFM75nUwiAZVGT/v5sgdcA3UurOPUrxvXOFhJD7fOmdn4LeNc5NbpkfWimv5mWZ8KXFKdfXqInOYBnc6gsPEjZ8mKssbQOtvEkMczYl0oK8z3un4lgppbYkhZS3Fp7bnD0Jxeba+lODmTFviFcxq29NeRHDUEQ1DnnqtNSjohIo3Nutx+keNz9gmf9zfQkB0ChYMkK9q2KcaLwMJFQGFV9Y4w5YIwZzyBBI2lRLcD9PVXN/SdFqlokInUi0iEiE9P+UUTuqurmufl/AKTzsFGmvUNUAAAAAElFTkSuQmCC">openvpn 不稳定 - Google 搜尋</A>                <DT><A href="https://hexo.io/zh-cn/docs/setup" add_date="1551183376" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACS0lEQVQ4jXWTO4sUURCFv6rb0zM9Du6sa7qBZqIgCiJspPgHBBMzRTDzD/hYGV0fGAiGiiAoCEb+A8VIEB+gYCYamPrYhXG6p/veKoNe1x0fFdyq4NTlVJ1TwuYYuTISa+vn2wZZdwVgHKfLjJa+/YUBpE2+nsUBBpffHhe1C4RsNwAxvjfxGz/ivodt82+8bCYwuPTqsAY5r3lxxGLC0zQBSOgGDYHUlM89xuXx6ODTGQa90cudHdVlUT0RtSPVZGJFRwkqCpDMrWyMXlFo5tHd7H5t06vT0dIHBchUboat209WTUq7hp5uH90h8/1Morsnx+eLoLeP7pBd86Sqjha2LpzMtHsLQFsa2pOmTHUyFufycHr/ggx7ATcXM5Nhkfnp/QuyOJeH2tylmSalZZcBGJiDikhqDF+tkqxVUcoqAbBWRVmtEo3hAuK4GvjGBwoiILiLGbIlVx4c28m4btUa5MqWXDFrdyYgur4//bVN940KQYgbSkM0EGYE24hfI3gQHBFXFR/XSU49/sjnb1MAFrd1eXdmD6otxsH/HEEBc3eCIMNeYNjP/MskCsBcP/NhL0hHEXdHwNZ72sexiqwIXRX59H2a7rz+4t/LhKq6qvpqmbj75qt/XqtTriLeKYJj1ayRQjgnwqkUciknEysyJQQVgJTMy8bo9fuaWe3u3GtSulaNDnyctfLKy0MqeuGfVs4CVpdPLNqV8ejAsxkr//+YQntMKb130yvji3sf/Ymf1WbzqZ59sTDo58sA40m9wvWDX//CAD8BWoEuLlmCFCcAAAAASUVORK5CYII=">建站 | Hexo</A>                <DT><A href="https://hexo.io/zh-cn/docs/" add_date="1551325399" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACS0lEQVQ4jXWTO4sUURCFv6rb0zM9Du6sa7qBZqIgCiJspPgHBBMzRTDzD/hYGV0fGAiGiiAoCEb+A8VIEB+gYCYamPrYhXG6p/veKoNe1x0fFdyq4NTlVJ1TwuYYuTISa+vn2wZZdwVgHKfLjJa+/YUBpE2+nsUBBpffHhe1C4RsNwAxvjfxGz/ivodt82+8bCYwuPTqsAY5r3lxxGLC0zQBSOgGDYHUlM89xuXx6ODTGQa90cudHdVlUT0RtSPVZGJFRwkqCpDMrWyMXlFo5tHd7H5t06vT0dIHBchUboat209WTUq7hp5uH90h8/1Morsnx+eLoLeP7pBd86Sqjha2LpzMtHsLQFsa2pOmTHUyFufycHr/ggx7ATcXM5Nhkfnp/QuyOJeH2tylmSalZZcBGJiDikhqDF+tkqxVUcoqAbBWRVmtEo3hAuK4GvjGBwoiILiLGbIlVx4c28m4btUa5MqWXDFrdyYgur4//bVN940KQYgbSkM0EGYE24hfI3gQHBFXFR/XSU49/sjnb1MAFrd1eXdmD6otxsH/HEEBc3eCIMNeYNjP/MskCsBcP/NhL0hHEXdHwNZ72sexiqwIXRX59H2a7rz+4t/LhKq6qvpqmbj75qt/XqtTriLeKYJj1ayRQjgnwqkUciknEysyJQQVgJTMy8bo9fuaWe3u3GtSulaNDnyctfLKy0MqeuGfVs4CVpdPLNqV8ejAsxkr//+YQntMKb130yvji3sf/Ymf1WbzqZ59sTDo58sA40m9wvWDX//CAD8BWoEuLlmCFCcAAAAASUVORK5CYII=">文档 | Hexo</A>                <DT><A href="https://blog.csdn.net/lewky_liu/article/details/81277337" add_date="1551357808" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">Hexo瞎折腾系列(4) - 站点首页不显示文章全文 - 不积跬步，无以至千里 - CSDN博客</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">python 模块文档</H3>            <DL><p>                <DT><A href="file:///usr/share/doc/python-lxml-2.2.3/doc/html/index.html" add_date="1416292532">lxml - Processing XML and HTML with Python</A>                <DT><H3 add_date="1596439270" last_modified="1596439270">ssh 模块</H3>                <DL><p>                    <DT><A href="file:///usr/share/doc/python-paramiko-1.7.5/docs/index.html" add_date="1428657637">Paramiko API</A>                </DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">web应用框架 模块</H3>                <DL><p>                    <DT><A href="http://docs.jinkan.org/docs/flask/installation.html" add_date="1418616117">Flask 0.10.1 文档</A>                    <DT><A href="file:///var/www/html/flask-chs-latest/index.html" add_date="1418620845">Flask 0.10.1 文档</A>                    <DT><A href="file:///var/www/html/wsgi-latest/index.html" add_date="1415584027">WSGI.Documentation</A>                    <DT><A href="http://pythonpaste.org/deploy/" add_date="1415331283">Paste Deployment — Paste Deploy v1.5.0 documentation</A>                    <DT><A href="file:///var/www/html/routes-latest/index.html" add_date="1415672486">Routes Documentation — Routes 1.13 documentation</A>                    <DT><A href="http://docs.jinkan.org/docs/jinja2/" add_date="1418629024">Jinja2 — Jinja2 2.7 documentation</A>                    <DT><A href="http://routes.readthedocs.org/en/latest/" add_date="1447080818" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACT0lEQVQ4jWWTO2uUQRSGnzMzuzubZONGlKitEASjFoqCaOcFG8VbtBYL/4J4RxFBBBtBUAQrRa1sRLQVRVG8JCksLDWJScyyi9lkZ+ZY7H7fJniquTG8z3vOK/sOn9QYAiG0AKFdinMFjHU0GnWSKlmJCKqKL5Xw3uNCCKwaXMPqwXXEGAGw1jI18ZPa7G9Gjh6hVCqSkiICIUR8qcTX0TFGx8dxIbRYNbiWTVt30KjXAejrr/D5/Vvqf6Y5cewIzlpCDIgYnLOsXNHHvYeP+PDpE04QUkw06nVeP38CwJ5DI6QYEREmp6a4duMmc7UalUqFqxfPYYyh2ZzHGIPJ2IzJl8vW1trcl2xvrc3fOARUE8459hw83j50DlUlpYT3nju3b5FiBBEWFhZIMeWGO7TtbEqJH9/HARjauAURQUQIIfDi5Sv+zs/jSyV279qJGMkVdT4wxBj58v4NAOs3DCMiGGNYXFzk7v0HzMzOUK0OsGP7to58XY5grWXztp05Z4ZQLBY5c/pUrqBYLJLSUgQBVcUYw9DwltxEVUVVcc5xYP/eZR5o0v89UFUWmk0Ayj09iIA1lmazydkLl5mrzVGp9HP9ykUGBqrLEbIRzVojko10t5XW2CUt7ZYDct42G6SUUIXUae/VS+eJISDG4Kyl1Qqk1FGgqljn8OUessj4cg/WOUCpVqtU+nqJnclsLbYYWNGL956UEs65AtOTv/j28V0nkeBcgZmpCZIKj58+o+BcHqZ2Ej3fRscoe48sjXPG3na/G2ftmp7fZ3H+BzaBF12WwHSWAAAAAElFTkSuQmCC">Routes Documentation — Routes 1.13 documentation</A>                    <DT><A href="http://www.sebastien-han.fr/blog/" add_date="1450358738" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADdElEQVQ4jSXR70/UdQDA8ffn8/3yhTvw+GFMiWPcyS/xhNXWqhPnDEEFREe6UbYeNZsMyHykrbnVVitdq00H1hFkm01sUKIUsay1zMIe6IzqAR5wd1yAB7iOO+DuuO99etDrX3iJKvcOVXlgP3ZHMc+4ttP/9RCWzAw62zo41t5GYm2Nb64OMB/5l1dr63h/cABlphi82o/b7UaPLi2RQrF3dy2Gkc56Ik5OXg5Ck6wnE0xcv0YBggXD4MjrJ/CN/4Wnz0NXbx9+vx+Zv2kzAFarFcuGTNI1jbzcPJRSKBOef/MMAF0Xu9l/6BBhlSQ++5A9O9xszM9HHjz2CmYqhZQaZjxBXe1zpKUboEmUUJzo6EQA9XvquPjuOzyWn89TLQd5etduAr4A0lVTQ3xlBSEEwdl/uD46Snh5GaUUG7JtbMvdiEDhsBcx5PGQm5uLqeCloy9z6nALekHhZmzWLFLKxFSKkbMfMBKaQ5gpmhuasKIIoLg19iv17Z2k6zpGWhrzoTkiDxcRY/FV9cbxNs71eJif9nN77De8fh+nTp9mmzQQwuT+agxNE9y9e4+JSS/f3hghEgmzOO1DjK1GVTgcZnpqiie3V2GzZXNl6Cv21tczPztHts3GmbffIhQKEYvFMAyD5uYDTE/6+PnCBXSAe3/cRwhJcCnEj1/2U2S3I1IpIitR/DMBgsHg/yuApmn8dPMHxke/h/AyMp6Ic+f3O+zauZPCgkK2OJ30fn6J106eJB6Pc/vWL2RYMhCawGLJQJM65ZWV6NEYIBEdvR61taIcV1UVA4MDHG19kZXlCOe7u1hcWCAcXsbIMEiuJ0mlTIqdDkY/vYQSiuxiB3J4eBibLZsHExPcHL1J32d9LD16xPp6ghdaW5FSp+ZZN3a7nS0lpXw3eA1lyYSCTew73IIobT2idCkpLStj0uvFtbWS8OoK0UiE8x9+RPcnH9Pc2ERams7x9nYaGhupqqgkPcvKlHcS3dB1NE0j4PdjtVqZngkgpaSxoQHTTFLtclHsdKBQfHH5Mg+8Xv4e/5PQ0iJra6voFosFhEDTNAzDQApBdVU1JQ4n7507SyKRIJZM0lS/jzxbDkUFjxONRolEIjxRXY2emZWFJiVSSjRNAyHwB3zMBAMAWKwW5ufmiCUTeHp6KC8pxeF0UFFexvDQDf4Du8Zs7+/D2ZAAAAAASUVORK5CYII=">Sébastien Han</A>                </DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">线程并发 模块</H3>                <DL><p>                    <DT><A href="http://xlambda.com/gevent-tutorial/" add_date="1418701555">Gevent指南</A>                    <DT><A href="http://eventlet.net/doc/index.html" add_date="1414635507">Eventlet Documentation</A>                </DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">参数和配置 模块</H3>                <DL><p>                    <DT><A href="https://docs.python.org/2.7/library/argparse.html?highlight=argparse#module-argparse" add_date="1414723727">argparse — Parser for command-line options, arguments and sub-commands — Python 2.7.8 documentation</A>                </DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">web应用请求 模块</H3>                <DL><p>                    <DT><A href="file:///var/www/html/requests-docs-cn-latest/index.html" add_date="1415156672">Requests 1.1.0 文档</A>                    <DT><A href="file:///var/www/html/webob-latest/index.html" add_date="1415672466">WebOb 1.4.1 documentation</A>                    <DT><A href="http://bingotree.cn/?p=109" add_date="1429156380">WebOb的简单介绍 – bingotree</A>                </DT></DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">数据库处理 模块</H3>                <DL><p>                    <DT><A href="file:///var/www/html/sqlalchemy-rel_0_9/contents.html" add_date="1414378851">SQLAlchemy 0.9 Documentation</A>                </DT></p></DL><p>                <DT><A href="http://192.168.1.200/data/" add_date="1429861285">Index of /data</A>                <DT><A href="file:///var/www/html/python-apt/html/index.html" add_date="1430102023">Overview — python-apt 0.9.3.5ubuntu1 documentation</A>                <DT><A href="https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/" add_date="1464748090" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABbUlEQVQ4jWP8////fwYKABMlmqliAAs2wVdLljAs4NrMsP23I8PHT9oMXOx8DPpikgxJOqIMxjKM+F1wKy6OIVa1j2Him0qGm9dTGZTevGH4w7+UYcOjZwy+c/4xnH3yH7cBr5YsYVht/oDhyY80BrEv2gxni5gZ1lQGMqy9I84QIV7GIGm8g6F6xy+G559wGPBh1y6GE368DDy3AhkyLVkYJPkg4tLFxQw5R/QZTMw2MfDxfWN49gnJFf+RwDl9/f/yXwz/S9b/+U8sGPhoRDGATUKCQfw7LwM/3zeGWccR/vz98iXDHjcDBvkXHgxSDX8ZNl/9j90AAVdXBvONnxi+qK1naNj5Dx7ar5YsYdhZpsAgf66SwVebkcFXG5EWGJHzwu+XLxnOz2pl6NS6yXDyVxHDv5suDPy8Vxh+ib5mYHhtyGAty8nQ6cEFjx0MA2AAJSV+1WMQ4ZZiCJGTZ0izZERXit0AUgDFsQAAk0e5PLfVRg0AAAAASUVORK5CYII=">Beautiful Soup 4.2.0 文档 — Beautiful Soup 4.2.0 documentation</A>                <DT><A href="https://wp-lai.gitbooks.io/learn-python/content/0MOOC/docopt.html" add_date="1498032160" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">docopt - 创建漂亮的命令行交互界面 · 小赖的Python学习笔记</A>            </DT></DT></DT></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">python api </H3>            <DL><p>                <DT><A href="file:///var/www/html/python_standardlib/book.html" add_date="1416218897">﻿Python Standard Library</A>                <DT><A href="https://pypi.python.org/pypi" add_date="1418694821" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACN0lEQVQ4jWWTP2gUQRSHv907zSVRxIBiIjaCTRobKwuLQLARosKBtqKNoqnTCIKFIEI6IxY2wSaFGJSIIioGMaeetkbEGKNJxJPjLrszO/Nm1uJ2zSYZeAzMfL/3fvPnBWwaI7dePrCJOead6RObIMYgidJG67u12xfHAA24nA83J3BOTj4eG+5zYnHW4sXivauAvwwcACpFfmsCazl+bRondj2szbf7gZ4iXwYYGZ+96q09aIwKjFaTRrXKouOSM4Zwe1c1TX3OdwGlDQlOj7957pwd8k4IvCcgpVTe3kGDEk5skSddrC57G2lJoptdg69uhD51Qx2rZqPtLPIhuj0DWCQmdKpSTtUlYKCcg74g8oVzp6nXLole1O+N3flTHx5GFEhM6FUf0F/eILaWZK0583Nu+v5S/VkTECAFzOLr4cHdvTKKU+BikBiguywm0V5sxYlFtRpTtYkrk+2F0TM93YdOhU5V/sMSkVdHFF60BoJQRBZy679qTx9GP0Yv7Oh1Z0NfFMcFcQxOE8fpO8CEXkcTYox2YlmqP2r2VNyJdUFBVBADfJxPngDtIPtZ/cB+IEmXz9Vy+Pdqcyr0UYpTYBU4BcCX7/bT0fONt8C3MmCAFaAFpMVqe3dJFXHgLIglOLIyBKwBKuMbIeCzhQbw19tYd6wW4vA8Pk119iLLwNdsjrf0QtRqVa2OP3gT6dyJnRv4PPteXwcsEGcFLZAGmxNkd7IH2AfsBLZlLttZ1VU6LQ3AP77asPbdn+HVAAAAAElFTkSuQmCC">PyPI - the Python Package Index : Python Package Index</A>                <DT><A href="http://python.usyiyi.cn/" add_date="1428046538">Python 官方文档中文站</A>                <DT><A href="file:///var/www/html/python_standardlib/book.html" add_date="1440502939">Python Standard Library</A>                <DT><A href="file:///var/www/html/python_standardlib/book.html" add_date="1416218897">?Python Standard Library</A>            </DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">django</H3>            <DL><p>                <DT><A href="http://www.runoob.com/django/django-template.html" add_date="1472526821" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC9UlEQVQ4jV2TXWjWdRTHP9/f7/+87Um3OddI59p0OscIodDGIG9chhfNLqoLo5Duops2LKwuoxaFCRFdBFFUFGSES4pMLXqhZEJdFjbXHE/mRUhue/a8/P+/3+lim0nn6nA453BePl+xZoYQ9tJ3BzpLxcKDihpFsV8QhJuJxHMx1E9MjJy+tpYLoNVyAXbs+7HHc0X/jJwGJBGDgcA5YdEw47esHl6YuGfqw7UmWnNe+/H+ydaOwtEQIlkjBglMEoDMzAxyBecNUV0Iz40Pn5zEWEl4ffqBw7li7p3KRbJaFcnhJLCbRgSIkVAqo83bzDca2aHxu09+pBfPjnWtb3fT1eu++91XsPqyvPOGRZmTqZ6JHZ0NW9/XpvnLrQw1/8yGjnq/rpBdWqyle5KWsn/EeespJeVw5PABBwkQbWU1ITkSZfJ5b2maKGHJ/80Xhsv6W3K5hxLnuC/GaK3rWji4fy9eecslTgZkWUat0aRcakFCIURbDotM/XHGMlczSaMJ0G0RgqKuLy6pXLyFn3+dY6G6zM7eLZw7/wtdHe10dbQz0Nujan3ZDCMGw3D9DkOGYUC5pcRn3/zEe1NnGOztYbZylVs3tDO4rYe3PvmcL3+4QLlUxMzW7uodThXnhQxLs2C77xiwXQNbuThf4ffLFQa39jAzf4W7hrZz5+B2a6YpIJwXZjaTEPW1oXuFCCGwqXODHh0btdnKVS1Wl2lvK7PDb2J4105zeC00rpkkxWByzp91wj5I6+GKClHe+RgyT7Nh6rtts+3bsxtPno1tGy2kUsgcXrmYFBxpGmabrnlCAMenx54ol0tvtoa+NKHkjOBA0irvGKz8NYmpLfGPm/O1au2x8eFT799A+fj5g6/my3akUU8JqQUJWEWZVZSTvPO5fEJzyV6eGDn17A2U1+yNCw8/iYtPO6/bMSPGlbhzAowYdSlrhMmnRj59+z8x/U/Ox77dvyVXLB+KZvuAboRhzMnx1VK99vHze0//dbOc/wUaI2d/q1QWBQAAAABJRU5ErkJggg==">Django 模板 | 菜鸟教程</A>                <DT><A href="https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#ref-templates-builtins-tags" add_date="1472538770" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACRElEQVQ4jW2Tz0tUURTHP+fOa2beezomFZFB0A8Za0pRoyAiCoICVy2Cok1hm1ZuWraoZZsgDATTRUIUIkYQLmoRFlpmrbJF/QFlUoROM2O+efe0ePMeM+rdncv3nPP9nvM9srW7Y0YMJ9SqFREDoKqICJs9VQWwYsSoZVZaew+qWtuYoKBoEgrSGItETYzBqLW29pEgVBQkAopEyRrVjZNVRFBrbcpt23GnVlVi6moV3/V4MTxGft9+fiwt8fT+ENl0mum597iuG2MjzbE2Y6KwVC5TqaxyrKubzo4CvudRaO+gbecuqmHYMBMnSRZhLQgQoKdwhN01sKrly7ev9PVfYfH3L5p9H2ttUsDEQwmqVVpzLYwPDjM3OcXk0AhOKkVltUKhPc/z4Uf0X7xMsVRKmCYFjDGUKmUGrl7n/KkzjIw/5sKN/hozg0kZmjyfbDoD61bsAIRhiOd69B7uohqG3Lp3lz/Ly9EWjEFVUVWsWqitcAODIAhYKa7gpFKcPHqcllyOoFolrHmkvmu9xZIZqFpGJ55QKpeZePCQhanXbHEc/GwW09C13lJ1EnzP5+Xbac5du0Tf6bNsb91G5d8qz15NcWDPXgBWisXNZxBb03NdPi18ZubjPIhAsEZPdy+3B24iIkzPvyOdyTSs0VFNjkitteK5Lk2+D0AQBHTmD/H95yKDY6O8+TCH73pYa7XmXLvhmNZf4t9yCTeTZS0IyGYyjbjomHRWjKCqNpYTP1Ul19SMMQbPdROpqmrFCGp19j/XsiDFnSpWCAAAAABJRU5ErkJggg==">Built-in template tags and filters | Django documentation | Django</A>            </DT></DT></p></DL><p>            <DT><A href="https://docs.python.org/2/" add_date="1501554008" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACN0lEQVQ4jWWTP2gUQRSHv907zSVRxIBiIjaCTRobKwuLQLARosKBtqKNoqnTCIKFIEI6IxY2wSaFGJSIIioGMaeetkbEGKNJxJPjLrszO/Nm1uJ2zSYZeAzMfL/3fvPnBWwaI7dePrCJOead6RObIMYgidJG67u12xfHAA24nA83J3BOTj4eG+5zYnHW4sXivauAvwwcACpFfmsCazl+bRondj2szbf7gZ4iXwYYGZ+96q09aIwKjFaTRrXKouOSM4Zwe1c1TX3OdwGlDQlOj7957pwd8k4IvCcgpVTe3kGDEk5skSddrC57G2lJoptdg69uhD51Qx2rZqPtLPIhuj0DWCQmdKpSTtUlYKCcg74g8oVzp6nXLole1O+N3flTHx5GFEhM6FUf0F/eILaWZK0583Nu+v5S/VkTECAFzOLr4cHdvTKKU+BikBiguywm0V5sxYlFtRpTtYkrk+2F0TM93YdOhU5V/sMSkVdHFF60BoJQRBZy679qTx9GP0Yv7Oh1Z0NfFMcFcQxOE8fpO8CEXkcTYox2YlmqP2r2VNyJdUFBVBADfJxPngDtIPtZ/cB+IEmXz9Vy+Pdqcyr0UYpTYBU4BcCX7/bT0fONt8C3MmCAFaAFpMVqe3dJFXHgLIglOLIyBKwBKuMbIeCzhQbw19tYd6wW4vA8Pk119iLLwNdsjrf0QtRqVa2OPngT6dyJnRv4PPteXwcsEGcFLZAGmxNkd7IH2AfsBLZlLttZ1VU6LQ3AP75vsPXueofxAAAAAElFTkSuQmCC">Python 2.7.13 documentation</A>            <DT><A href="http://192.168.140.213/python2/" add_date="1501554311" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACN0lEQVQ4jWWTP2gUQRSHv907zSVRxIBiIjaCTRobKwuLQLARosKBtqKNoqnTCIKFIEI6IxY2wSaFGJSIIioGMaeetkbEGKNJxJPjLrszO/Nm1uJ2zSYZeAzMfL/3fvPnBWwaI7dePrCJOead6RObIMYgidJG67u12xfHAA24nA83J3BOTj4eG+5zYnHW4sXivauAvwwcACpFfmsCazl+bRondj2szbf7gZ4iXwYYGZ+96q09aIwKjFaTRrXKouOSM4Zwe1c1TX3OdwGlDQlOj7957pwd8k4IvCcgpVTe3kGDEk5skSddrC57G2lJoptdg69uhD51Qx2rZqPtLPIhuj0DWCQmdKpSTtUlYKCcg74g8oVzp6nXLole1O+N3flTHx5GFEhM6FUf0F/eILaWZK0583Nu+v5S/VkTECAFzOLr4cHdvTKKU+BikBiguywm0V5sxYlFtRpTtYkrk+2F0TM93YdOhU5V/sMSkVdHFF60BoJQRBZy679qTx9GP0Yv7Oh1Z0NfFMcFcQxOE8fpO8CEXkcTYox2YlmqP2r2VNyJdUFBVBADfJxPngDtIPtZ/cB+IEmXz9Vy+Pdqcyr0UYpTYBU4BcCX7/bT0fONt8C3MmCAFaAFpMVqe3dJFXHgLIglOLIyBKwBKuMbIeCzhQbw19tYd6wW4vA8Pk119iLLwNdsjrf0QtRqVa2OP3gT6dyJnRv4PPteXwcsEGcFLZAGmxNkd7IH2AfsBLZlLttZ1VU6LQ3AP77asPbdn+HVAAAAAElFTkSuQmCC">Python 2.7.13 documentation</A>            <DT><A href="http://eventlet.net/doc/" add_date="1501733498">Eventlet Documentation — Eventlet 0.21.0 documentation</A>            <DT><A href="http://blog.csdn.net/liunian0o0/article/details/54096208" add_date="1502174369" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACkUlEQVQ4jTWTzWudZRDFfzPz3I/E9jbeRM2HAbFGFCIuRIRGFxVLUXAjSEUR96KL6qKgCwWl+AeI/4KLLgWlLvzaWBVxIYKKIKgl0SQmuQtv0vd95rh409XsZub8zjn21en7hJw0wBIpKdmneoIlyAmBgDRwEgBUqNZQEgcDU8UUyAdwMpjf2GB85gwn19fpLy/hgyBluIlmZ5/J9z/wy5tvUFxQ3bvNchZfeIbFF59ndPpuMhM3IwlcIhHmlTKaI4Z9zIxSHYyWMnOCtcvvMv/0eQzITMyMaoEmBxzt/gsKYmFEfzTHdHcHq0EpCqqLtffeYeHJ80iViuFyNj+8wu7Vq/z326+0+xOE0zsxoreyRMz0usNSZf7s48w/dQ5RkUG0lZ9eu8jOJ59SFCSVxDEzDvf+Zrq3TeRN6TgrF54lqUDgGWx//gU7H3/W6ZZID4KAmkQtRDpGYiQuF7MPrhPqYdZZNfnmO4o6eFhCiswWwmm9AWsRBVHwpBJliAyk2nkcTlqDWYAKWOImqolQjy43SajFQ3Dj+l9IAjMMMX7iHArHs5KWFBmtO6UCJOmJLEGFeGm8+LbPDhg/9iiyxNKZWVlm9p57Odq6Th4ckE0HFxe9uTHD5RXayT5VLfbl2v3ywZAHPnifUxuPIA9SSZgj4PDPP2g2t6hNpTdeoH/HbUy+vsbPr16iektRBnV6xI8vv8Jdl15n8bkLRJTjvIvB6irDO1fBDGWCV6abW2QITyihpIZgmvz+1mX+ufIR47Mb3PrwQ/SWbidumcMGjo5a8vAGzd42+9e+JWlwRSdBGTgt6YHV9higQH7chUqLddZa99zNphar1sGT8GpAYNUBSEsSIXPKcYtd3UwKoZb/AWRoSOxcHDTnAAAAAElFTkSuQmCC">openstack 锁的使用及其原理 - 流年的专栏 - CSDN博客</A>            <DT><A href="https://stackoverflow.com/questions/11312525/catch-ctrlc-sigint-and-exit-multiprocesses-gracefully-in-python" add_date="1502354495" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXklEQVQ4jbWQsUsCYRjGn/fuSu/Sk3ALmlzNtoagKRqSaHMKGkKhEOV0KWispSXPQaglAnNobOgfaCyIcgicmxO9zFPv/N5WwTs5gt7x+5739/2eDwgw/bK67HcnBQG4Ag3L0LJ/BoBFDuDzTiGUCAywDC3bNbRtANCrwxaBziRZanAGcjADwR8AX1uGesEZyFGzXwO43VsKn07GaJa5lY/GMefUAYooEvaELDnCEW9M2I1V7GdPg04hlLAM7dYqqut67ftLNwdpMB5dgRfXdVMgHIFpx9egfbwYk0eDA2LKAWJMkK6cUOhOGdkpZmoQiy29OmwFq1AKb5CgQyakAXqQJKpELn/eJzPK1JKhPhHjk4EmMzUVmU/coVLkeXff672pk155YXUsxikCJQFeYVCSgCiAV920N311b+r37FslH413S+qaV86rggfIBbG38RRAN+2ZHzsTMKvGv80vvziHGAusG84AAAAASUVORK5CYII=">multiprocessing - Catch Ctrl+C / SIGINT and exit multiprocesses gracefully in python - Stack Overflow</A>            <DT><A href="https://pip.pypa.io/en/latest/installing/" add_date="1505962710" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACT0lEQVQ4jWWTO2uUQRSGnzMzuzubZONGlKitEASjFoqCaOcFG8VbtBYL/4J4RxFBBBtBUAQrRa1sRLQVRVG8JCksLDWJScyyi9lkZ+ZY7H7fJniquTG8z3vOK/sOn9QYAiG0AKFdinMFjHU0GnWSKlmJCKqKL5Xw3uNCCKwaXMPqwXXEGAGw1jI18ZPa7G9Gjh6hVCqSkiICIUR8qcTX0TFGx8dxIbRYNbiWTVt30KjXAejrr/D5/Vvqf6Y5cewIzlpCDIgYnLOsXNHHvYeP+PDpE04QUkw06nVeP38CwJ5DI6QYEREmp6a4duMmc7UalUqFqxfPYYyh2ZzHGIPJ2IzJl8vW1trcl2xvrc3fOARUE8459hw83j50DlUlpYT3nju3b5FiBBEWFhZIMeWGO7TtbEqJH9/HARjauAURQUQIIfDi5Sv+zs/jSyV279qJGMkVdT4wxBj58v4NAOs3DCMiGGNYXFzk7v0HzMzOUK0OsGP7to58XY5grWXztp05Z4ZQLBY5c/pUrqBYLJLSUgQBVcUYw9DwltxEVUVVcc5xYP/eZR5o0v89UFUWmk0Ayj09iIA1lmazydkLl5mrzVGp9HP9ykUGBqrLEbIRzVojko10t5XW2CUt7ZYDct42G6SUUIXUae/VS+eJISDG4Kyl1Qqk1FGgqljn8OUessj4cg/WOUCpVqtU+nqJnclsLbYYWNGL956UEs65AtOTv/j28V0nkeBcgZmpCZIKj58+o+BcHqZ2Ej3fRscoe48sjXPG3na/G2ftmp7fZ3H+BzaBF12WwHSWAAAAAElFTkSuQmCC">Installation — pip 10.0.0.dev0 documentation</A>            <DT><A href="https://blog.csdn.net/wsxx1020/article/details/78521564" add_date="1631760975" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">APScheduler（Python化的Cron）使用总结_xx小蟹的博客-CSDN博客</A>        </DT></DT></DT></DT></DT></DT></DT></p></DT></p></DT></p></DT></p></DT></p></DT></DT></DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1699408301">k8s</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1672912544">docker</H3>            <DL><p>                <DT><A href="https://hub.docker.com/" add_date="1533094450" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC0UlEQVQ4jXWTT2yUdRCG33fm+7bd7b+U0qAJ0tItIbVJifFAgBRZikaMBUyzthyIBzwYE/XkwXC1HiXBiyaaeCCx2GxMJJ5cEIRaDx6kAQq0tVrKySbNprF19/t+Mx7QUhuY2ySTdyaZ5yE21a4jwz1ueIeq++DWAgKAVjykkxR8MlO+ML1xnhub7oGRUQpPu9uPMLsYqL8DgMI6ABynaL+bfzF7aezMxgABYPkjIxdEpO/vWvXU/SulXzZfBgA7CsXn6+L4vJlNzZXHhgEIH25+fZTkyeX7i3uW7k6s/Bvq3f3FHo+jp+Yup1cfRoyHLXuPNrc1Nf/q7l/NXvr6DDsOvtaTqau7Wl1NCgsTpVvoPFQPAGhbCV3NXR9oFA/MfJ8cBsYNgAPA9v6hvmx9XK5Vqy9EGsXvuvnlhYnSLQDId247wYhvEU8vmVkW7rPAeACA7kLx2GqtenfxWmkqf3ikrBq/p1t37fnIPf18ef72zXxh+H2q7wW8zYFY6Opk3Nr5bG+uveNBJpc9G6sMbunqnSaZiOqgwL0ZCRZ2Foq7RfgGwD53KMEGd2Th1k7KqbrGplfcrKKZ3H5KdBEGAB5HgDuVsUbRZ3DvQDAHoe7p+pfpIRXwQ4o0pNXVLy2xs0Y2ZqKoQQD+FTy0w8IfEG0EPUsyRzAnZI6OLBxZatTg5rfn1hbfnr9WmlLRnXCuiIXws2r8cpImn5IAwMjNggPB3A0gGWdiuM1JSIcwObkGAKp4NVj4SdI0+ZiUE6EW/kxryWlSl6hKEVFQHMAD83BudaVy6N6V0h0A2HFgqBfCgZAm5zaAJCdnymP5bX0v5XKtLfspmiHT5aXa2nTl+nfL/9G4dfeBptZntt9YB2kTys+lyVpx/odvbjwJ5fo4Ph82o7wu04sjo4S8iRCuG/1bg/wGpFBnJ0QGSTn4OJn+V490jvYBoQUOgFLxEB6r8z92qk6culgycwAAAABJRU5ErkJggg==">https://hub.docker.com</A>                <DT><A href="http://blog.csdn.net/wangtaoking1/article/details/44180901" add_date="1508834083" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">Docker学习笔记 — Docker私有仓库搭建 - Just for fun - CSDN博客</A>                <DT><A href="https://docs.docker.com/registry/spec/api/#deleting-an-image" add_date="1508982802" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADJ0lEQVQ4jW2TbWjVZRiHr/t5/uc1N+LkXsk5nRJoGFsiRrm2ltBJMaoNZlL4QUt6MSIKIorzpaAXE6GwyT4EiwlRgvVhbMwNiUlFnASby2hqL2ZsOra5s+2c//957j6MhoHXpxt+v2/37xKWEEABFh5pb5OYeVmdbywl9LayZ8qQ8ngBTx7jj0hb9xA3If8dl+pbktV3V3YZY7YVXfQV8PWkLP6e2l0lNVVSh9NdJOLtROFpzl95Tg72FQFEwVyub4lXb6wYskYWZ0ozeyr6+69yC/R4Zy2V5b14LGN/PsxUXwhAIdvRtbCz49vlIgQKEn/nu032w3xWcxgdbgmW88FnR9zA/k8BAt2+7f7I6s7rU7ON5NRsmutJyR1r4iTsIqXkk9igTdB+WiVSMAL+WiHqWJngrH7c3Bv00/TCKjd7YuOZLyf0jBh5L9+JNfvwMoG4BM5fJiceQD74eccKN3+x4rEto2NDb3wx1th4QHY/1PNLochLJ0eeHpTDo2/jXB3oalRCRBUxRYz9lZL7DKNHMZoIFvyrmUcrGqorzevGuvlMhZ+9JIe+X49zO/DhGpQI8RbvLT5K46MsWmrGhzOkyrdGMTtox6d8sngjFah6vRrzKWz6GJE24HFIaJcebMB78D4CfZ8gUc7cdDcl/1Fl0+0uisIyY2PJmZpQKhH9C2Mz+DCD9xmcz+CjDM5liMIMsXg5LrrA/PQrvHXvmDjWm2RyynjvzhpMG+n4UbExQCzqQ9AQ7yMESJcFIH8wv/gUudY5AGN9Vouln0wUukOL6dTe3P5PftRi4TXiqWliqRjxdIxY0hIk/sH7bqZmm8ndlwdkw+gP1cYGjztrDwvAntbuYwIbPh/e9wBdkzVMjm/BisHILJE5z5ubl5apKojo5vHxEa96Lr9u3QGBnGmpJ163ZvWpghSigQsvPnHjCtdvNeWV6btqV53q6TV3VpmZc6Pbf8tmw2WZcvXDyb6Gk13XgokH1XHCKd+UlIsSFXwilqoPhF04bQ+23nN65t29z/8ttfM327is89rWzjYTyEE8TWi0YikN5jDkVTgyPnD8fzr/CxcDaI7c+FgNAAAAAElFTkSuQmCC">HTTP API V2 | Docker Documentation</A>                <DT><A href="http://blog.csdn.net/shenshouer/article/details/53390581" add_date="1511837074" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">Harbor部署 - CSDN博客</A>                <DT><A href="https://console.cloud.google.com/gcr/images/google-containers/GLOBAL/" add_date="1543907037" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACP0lEQVQ4jaVTO2sUURT+7mtyzW42zWphsAgWgkraQLogVommEAsfhRIIiFgEZyekEKw0uzsLQUiK2FkEC4sIotilyi9QiH9ACzckwVlm53HOtcgM7Eqwyded13fO+c69wBkhTnMGQTDW7XaHfPV6Ha1W68//CAQA5/v+O2PMQp7nGQBZxFhrrfI832m324/L3EECCYCDILhtjPlIRNBaQ4iTsHMOzAzP8xBF0YMwDLfLGl12WF5ePsfMTSEEEdE+EW0ws5NSlk28PM+tcy4tbAcAJQGYuaa17kkplZSy0Ww2vwzu6vv+FIDtkZER7fv+xTAM3wA4Yfd9f1JK+RbAB2a+GYbhncXFxevOudcAIIRYVUr9GB8f/1qtVmejKOpmWTa1vr7+SxYJz2q12g1mvlKtVu8CABG98jxv3vO8eSJa29rayoQQT3u93rG1tm6MWSnFAwCZJAmklEtxHF8bEHYIWZZJ59zQ6XURaAK4b609H8fxGoA5AKtpmrpiwhUAUEq1rLW1fr//u6iBGDjhc611yMxMRAvtdvvTPyLe0lrvKKVkv9/3O51OB4DUABiAGB0d3Yii6JG19ioRrTUajUuFFlJK+RnAS2MM4jj+dnBwsFE0Z1Xuu7u7m83MzPxUSt0DcMEYM1epVObSNK0JIay19iEzCyJa2tzc/F5M7koCB0Ds7e3tT09PX1ZKTWZZFuV5fszMLwA8McZUkiR5H4ZhE6c85SEEQTAGAEdHR3R4eJhMTEyMeZ5Hp32mM+MvEE0BuNuV++YAAAAASUVORK5CYII=">Google Cloud Platform</A>                <DT><A href="https://www.cnblogs.com/yufeng218/p/8370670.html" add_date="1544154208" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">Centos7上安装docker - 风止雨歇 - 博客园</A>                <DT><A href="https://www.jianshu.com/p/10ca00d2cb60" add_date="1552480937" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">gitignore配置 与 隐藏文件设置 - 简书</A>                <DT><A href="https://console.cloud.google.com/gcr/images/google-containers/GLOBAL" add_date="1553679294" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADL0lEQVQ4jX1TXWhbZRh+3u+c7Jyc/HetXeOwqYiEIQy06Ia7GYh6scluvBARpoPUgLh2jIrMzk/GVt3EVKfEFWaGY1O2i8HwYrtSxuq8mMzdjJLUpWFpmpOkTZqk+TE55/VCW8sYPlcvzw/vzfMAAAAmKVngIUgphZTyETwLgGndtC4kcmGZSOv/mdaEf26ZSOsykQtvfEAAcDh+97Ee/8AEW91IsdjunxobqgDAxNnsdgA4dmDrXQAYjaX9fX2aSYo6vVxZPPZ5dHuBJi8WXtWdWpzJEWrWK99mVnPvJxef492hRalryiEhgKVaZ+rTeP7jSAQYdAW/crr975LdmW+12lE6fj43tWp5D3JzaddkdHAGAF4bn/X0bdaXewMOtVS1kHrQ6N5Lo6d0NVwDgA/jmRfJ2HzTJapfilS22UqlTXsyOjgDZmJm6hnQlFaX6UHRxu/JJqoNS3nmWU0BM4GZJqODM6n7pp3KtluiY4GcuiIiMmeAACLic2NDFUNV3hPES24dq16nY/wXOVQBEYOAiMwZTl0RHcsmlYjIthnllXkGgnwikQ7bDuONxwOleCbvudq2WNu/a1PzpefNT4xO44fDb9NseeVX1noHQEQkAEAIBZdjO1sHv87ugTNwy+fzHM2Ug6mbyc6ToV5P8A8zkAr4PEfrqv/W3o/+3HM5trNFQgEAqETEEAIAcWHp/g5bUf3zC4XyXMkXyOUbLzzhV9AWmjuzYJaTBVdgudTaAdBPRFmAiNWubYNgMwA4VLFiwYG5hb88NahwbKKqUG27+y9Xt/0wdKoBQNdiZrYhQls01Ws4uP/l667vj4ROUac44XVred02Tw4F+n/c2ksXqJ2f8Lq1vMaFU799s+2z4N7bhtfl4NAWTaUTF/OjLncg1mjU79lW+9CRN4PXI2duG9Mjw42N/V/jjl/IvSIU7QvDcG9brZfHxJ0rN05XSuY+RQhNVfVro7G0f3pkuIENW5CSxfTIcOODM8s+VdWvKUJolZK5786VG6dpzbRf/qw/9XT4nWpTPX/yQF/t4QUCwPjZosfr7L41l5z97pzc3VoXXr90SXlU4P+wlvkb55tta9btGzEAAAAASUVORK5CYII=">Container Registry - Google Cloud Platform</A>                <DT><A href="https://deepzz.com/post/dockerd-and-docker-remote-api.html?spm=a2c4e.11153940.blogcont581105.9.27844495mQ7Gt7" add_date="1556525332" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC0UlEQVQ4jSXMzW8UZRwH8O/vmWdnZ3fdrZ1tp7udLAJSLAUKhvTgrTSBxGhiUilIlOg/IAcM4cbBg4l6VRN6MTFGIMQbCWCqBBteYoPYaGWBLbbFTbvd7b5032Zn5nl+Hvz8AR/6bM4EADBrg6LesHksU7uwWSn2/J5lJr2dsxXc1p4FUkRERBIAAK0oGlfPFyNXv3u6ufah0j6REEL2peWRmciR42GnKf5/JcBawUpw/oFx/cuhmBXtT8fBBIDBflvNfZWt/luePBMEHhEgmEkY1GnxvR/6U8lkIml43UApRQABsYRh231Pfu3vNrVhEIMka5gJXv1drBfUS6n6dpvdIbvaaJUaLSklgQxihqqtC3cva48kCNCIyPDNj97Zd+C1/aJ1dGJsZb2ymF9hjU7X+8uLbNdrSn1LMBmQRKxBZhxjE+PTbxzcl1Tw1eFU8vD4CGIWgiDfjlyeW6gDDAAQABEDxO2trVi9/PXsj3cfLrFWqu39/NO9by5ds2qbXrsuowATEUswKQ6E3xctldeKxfuPnmky9uQy3V5QrjXv/JbPuJnUVr0aSyluMkcEmBmUMaZGM+nC8lqx1HAG04+XX5SrjR07MsVSYylfOOA6Q3KKIcAQmoIo7Pfe+rwUJoWQN7+/eGxi1E6/7LoDewbtX65++krOXWlFP3j7C4ttpkD4inOpSdcZ+fjc+Xj29fyzVTs7sLG49mjuTyfnPCmsWoPjZz85P+yMuKlJP2RBhLHMDLPWoT/97qn7BTF75VbX0EEUs5dv3F7qTZ84rUKfWe/PnhQEORDbvcueAhMJY7vZ8SuLYWujkZ0EdLI6r1GuVOtOOsWMXfZUOr5bjDozcTMdhL4QxsKDebP9ODcg91rLQ+HfPd+zeqt/LMwLYYQqiJv2qHNSHHLPMNgQItS88c/DRNza2Oq8ard29rW3W76MGNX1p5pZgBh8aPj9/wA5bWFf3XWeigAAAABJRU5ErkJggg==">远程连接docker daemon，Docker Remote API | Deepzz&#39;s Blog</A>                <DT><A href="https://www.lijiaocn.com/%E6%8A%80%E5%B7%A7/2017/05/19/docker-enter-net-from-host.html" add_date="1559197819" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADZklEQVQ4jV2SW0xcVRSG/7X3njkzBxguQ9CBUi6WWoJmrKBAMIqlpn0gGhs6xkQbm6jR2JIYm/ggD3hp4oMvhlSjD9ZWkxogISaWB/GCpKEx1EtapbEBwQJCyyDMDHM75+y9fACv6/3/1/q/fxH+M0wAcWlTW4e17/HeQKTuQbYCYam9dK0v9VNNYubD0/2vvA9mAhEDAP1fXP7osRNq/5Nv2FX1lut6sARzToOClh81/gwqZ788c/bY0WcAeABYbqsF8CqX3H/44WDsxAfdzXvEW1HbayqW9NX1JD3dUICXGy2z7Fh6qbT27rbqovXLE+MXwSzE1vKta+z2g8ftyhrurcrpgecfU5Er5+mpaCUOmDmcerZHxMy0WONik9gZfaEdCAJgBQAgMgCKrHDlHieXxfASycbW+/AjVWA0ThQoquPogUMY2SgQN7MpzqlIbXL37jtANKX+lV9ro92gkjh9dR31zb1YvDwOMzbApwpsVLQ9hPVMiAU7nEBQLKhwaDs7gEEIABl3dfE7KQSR9Gl78wec667GaNkNOjgzhdm0B8tNk1Q+YZLxrPfr1dl/DGJblWxMfXFO//E7O75i0a4nUH+tjz/t6sJY7CQihSHWQmpSfnKX5y4gtzGP/r8gAgYAshPDl9z4Sjrg8+TYUpTPfF9NZ3+rACmwdhwyuQzrbIrz89OfAQB+jtE2g7//QWqSwvYrXiypw3v8CLQqgs+4xEKxuxGXfqHgrK1eB0AYGmIBQODwoADAJYd6u73NNTszN62xukBcEGbht8BsmKQkEOvUtW9JBK0GMAPNzVIBMBiKwY7Ut5R29vRRSbnJL8+Qr7oJZBcS57MMIQhGw1++QyBos8jnjyaI3gWQlu0tu/YWR3YO+I6cfC0Q7SzzUgljVq6LQG0jsvPTkH4/sQEbN0fEhkw+Z+y9+24J3H7vA/CcXwSxvIhwVY/Y1RJypieBgSMCqbhxSRn3oz54yvJy81co/c2wMZF6ZAffhPP1x7BrGjoqZHaEWlujL4HdnpQolL7cprJN+s5E5V3KI4XQwiWzWXOP8CVvaJFNyuRtHaZsflJQOrHoQF1QOvn2Fv3OTnV8fFyG+zv16FjmOctNPWHSG594ZTviKrnSpoQ471qhF5Hd7GK78B26NfL65MjnNwHgTy1jhONQMvXUAAAAAElFTkSuQmCC">从宿主机直接进入docker容器的网络空间|李佶澳的博客</A>                <DT><A href="https://blog.csdn.net/wennuanddianbo/article/details/80890619" add_date="1559198356" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">容器网络--为docker容器添加网络接口 - ^_^ - CSDN博客</A>                <DT><A href="https://docs.rancher.cn/rancher2x/install-prepare/best-practices/docker.html" add_date="1583120596" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABjklEQVQ4jZ2SPWgUURSFv/N2Iv4kuwkiQkhlZRMEsQ2IoIU2aSJrSGUR+2TTStqI2BoFK0EGLGwECWhjZSVYiWghJhskKYRoSDaTecfCmY2rmUU88OBd7n3fPffyRKn5J5dRGOdu8x7/ooV0iuixhFa6QPRbxHngGq20hhUBCFHdB5YQ7/gcXvH0eo45jcKEaKUGXiBWMbOAK3oK+IDjJNY2NZawziVFcpNIA3ULqxh1FGYQTcwZ0GYBcAexAvpRVNaBq8CJXoCFaGM9Q9SI/lQANAWcBcciPgkcPWQIEeJrlqbvgwVyOcIwMPGb+06fXZQ0A4SK5Eug3R/wSxUAbwB7/w8QOfD9b64yonvACeY5wsAQcAEYxJzCPAI+ItWQO5iI/YZ8YK0XsBNucHzXZMkgR8IyZhK4ghjBbIG32M9v0xj9wuLFvFzegdlSsw8GGKovI938w/hXApe403zffwejI0Lq8wsP1wFg/ZuBnSLKi2PMLlnIqgBJ9/bwVsZc+hi53XViCVilcWy9CvATkPyBkhudBJEAAAAASUVORK5CYII=">Docker调优 | Rancher Docs</A>                <DT><A href="https://blog.csdn.net/u011327801/article/details/100578335" add_date="1590653708" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">Error response from daemon: readlink /var/lib/docker/overlay2: invalid argument_运维_誓言-CSDN博客</A>                <DT><A href="https://stackoverflow.com/questions/55334380/error-readlink-var-lib-docker-overlay2-invalid-argument" add_date="1590653727" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXklEQVQ4jbWQsUsCYRjGn/fuSu/Sk3ALmlzNtoagKRqSaHMKGkKhEOV0KWispSXPQaglAnNobOgfaCyIcgicmxO9zFPv/N5WwTs5gt7x+5739/2eDwgw/bK67HcnBQG4Ag3L0LJ/BoBFDuDzTiGUCAywDC3bNbRtANCrwxaBziRZanAGcjADwR8AX1uGesEZyFGzXwO43VsKn07GaJa5lY/GMefUAYooEvaELDnCEW9M2I1V7GdPg04hlLAM7dYqqut67ftLNwdpMB5dgRfXdVMgHIFpx9egfbwYk0eDA2LKAWJMkK6cUOhOGdkpZmoQiy29OmwFq1AKb5CgQyakAXqQJKpELn/eJzPK1JKhPhHjk4EmMzUVmU/coVLkeXff672pk155YXUsxikCJQFeYVCSgCiAV920N311b+r37FslH413S+qaV86rggfIBbG38RRAN+2ZHzsTMKvGv80vvziHGAusG84AAAAASUVORK5CYII=">ERROR: readlink /var/lib/docker/overlay2: invalid argument - Stack Overflow</A>                <DT><A href="https://docs.docker.com/config/containers/live-restore/" add_date="1607592146" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADJ0lEQVQ4jW2TbWjVZRiHr/t5/uc1N+LkXsk5nRJoGFsiRrm2ltBJMaoNZlL4QUt6MSIKIorzpaAXE6GwyT4EiwlRgvVhbMwNiUlFnASby2hqL2ZsOra5s+2c//957j6MhoHXpxt+v2/37xKWEEABFh5pb5OYeVmdbywl9LayZ8qQ8ngBTx7jj0hb9xA3If8dl+pbktV3V3YZY7YVXfQV8PWkLP6e2l0lNVVSh9NdJOLtROFpzl95Tg72FQFEwVyub4lXb6wYskYWZ0ozeyr6+69yC/R4Zy2V5b14LGN/PsxUXwhAIdvRtbCz49vlIgQKEn/nu032w3xWcxgdbgmW88FnR9zA/k8BAt2+7f7I6s7rU7ON5NRsmutJyR1r4iTsIqXkk9igTdB+WiVSMAL+WiHqWJngrH7c3Bv00/TCKjd7YuOZLyf0jBh5L9+JNfvwMoG4BM5fJiceQD74eccKN3+x4rEto2NDb3wx1th4QHY/1PNLochLJ0eeHpTDo2/jXB3oalRCRBUxRYz9lZL7DKNHMZoIFvyrmUcrGqorzevGuvlMhZ+9JIe+X49zO/DhGpQI8RbvLT5K46MsWmrGhzOkyrdGMTtox6d8sngjFah6vRrzKWz6GJE24HFIaJcebMB78D4CfZ8gUc7cdDcl/1Fl0+0uisIyY2PJmZpQKhH9C2Mz+DCD9xmcz+CjDM5liMIMsXg5LrrA/PQrvHXvmDjWm2RyynjvzhpMG+n4UbExQCzqQ9AQ7yMESJcFIH8wv/gUudY5AGN9Vouln0wUukOL6dTe3P5PftRi4TXiqWliqRjxdIxY0hIk/sH7bqZmm8ndlwdkw+gP1cYGjztrDwvAntbuYwIbPh/e9wBdkzVMjm/BisHILJE5z5ubl5apKojo5vHxEa96Lr9u3QGBnGmpJ163ZvWpghSigQsvPnHjCtdvNeWV6btqV53q6TV3VpmZc6Pbf8tmw2WZcvXDyb6Gk13XgokH1XHCKd+UlIsSFXwilqoPhF04bQ+23nN65t29z/8ttfM327is89rWzjYTyEE8TWi0YikN5jDkVTgyPnD8fzr/CxcDaI7c+FgNAAAAAElFTkSuQmCC">Keep containers alive during daemon downtime | Docker Documentation</A>                <DT><A href="https://quay.io/repository/" add_date="1615518007" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADH0lEQVQ4jU2T3WucVRDGf3PO7rvZbHZTNpGmzceugfSi0mrVCsY2KUVaC2qjiAZFVLDojaXipeBfYPEDbJEqQYtBKqhUNNhKaFViQ4rUopay0W5jomkkX9umu2/e95zxIjXkdzEwwzw38zwjAAoioADlArtjzAGn2utV1wMYkWtW5Gwi9seKUwyv1Qi3OJcn19LAYa+8QIgNAU3dWgiRFECAM4aB7A1ea5qjAiAKMp4na+r5KiP0zJukS3R0qbjIRBMlUYWgsElJBj4uX5Z1PrIznpG/r/PI3grzAIy3cexap9GLGWr/vH7QaRT6cvmKH72r1V/dc4/3tZt+trLoR5/rc+dz1C60i/60nuMAttTCLmt563qkPtGYSWx89yPRfLP88keZqoulq+8JSd2xTS6N/8l0sk7syGlTi2IXWLY+n+acUctLJmGsq0B2/5MSFDplaXhIl8Z+lOTDT2nm0X6NSr+xePoksvlO4vt7hSVARIzlZYOhJ4y82lzC5A8cQoHKm29I9pvPtK1QFCMiUx8e1XjgiBiU5T2PofXWhk7xsNN4a1uiCuQe75e6zVvlxplvdfH789oa3pTibU1UJ68y+fmgBOUJtT98h9tyN667F18FZ6TJ/G/jSgpWkNWyZrC2X4Mxzk0nc1D54lOt/X5RG3btlVzPvfJXUK/lf2dJtxXY2Pe0hoUOcTsfxP76M3bkLCYN1uusfSXL9lRgttTmnYPQ5B7aL/GGdi3lN0iUzmhHayvpQlEmM40at3eS+vgI9lLJ1aXFoJyyBzPMitFnfRKi8ZJk+/qp33afzJhAK18OSlNlXhp37GYh10TlwhgNx4+q2liTgjjHq6ZrmjPeM9CcNonZ6aVo4v131MbLWmxeR/LkCZ1677BqWNViRyv1w1+rW6hFjYEknGPwgRlOrUa5WseQV7oXTdKlC12qcWTDiRKqUFfchEkGrnrlsuR8ZKvKaFxl345FFlZveyJH/vYMb6vyTBxilgUkteKNhkigYFN4I3wSLXGou8Lcqllr33mshX1q5cUIemOveQGskbkknBWnH2yfZmit5j+9FnFGvaYaKwAAAABJRU5ErkJggg==">Repositories · Quay</A>                <DT><A href="https://octowhale.gitbooks.io/docker-doc-cn-dev/content/engine/admin/live-restore.html" add_date="1618392392" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACAklEQVQ4jYWTO2iTYRiFn/N9f/JHqRTBgktHwaEiGpt0dujiKF00sxeol6nQxkBIK/FSu+ig1MHdCzhIN3FwSJVSBxGkS1EQqaVocGjyX14Hm7ba25m+D85z3nc4r9hNVXP//pXu6t+QaQu8Q6i2gqgz6VTV+rxnWJ4DJEw3Knqzbh0yz1Ml2ha8aX0u5bqD8y5HDoM0AhwzpNxvlDWzaQMTyADyNTvmHdcclFxImLYAiAEMvM+iNAbB6yTlcRLzUgCFmh13jmEzSj5HrgMaeHV2NExGhCPMdkP7J4vmOKPChI04x1imi+7oN5CyapAVuLXJJkgQgc9C0uYrxmSrybP5O/rmZJTihGL7F2PAkg/JSTggxogl5EMCM5bjVerRCifjlKXcIWYK4zbhJPi+wpfZiuqrbYpRiykzmj4k8PsIzGhGLaZaMf2zFY3N3dOyd0xawjvBFfWPW8WJwRhG527oLUC+akcDz7CJloyHsxUtABTrNkjKVRmhiS4ZrwRQrFlJjssYi4nj7vuyPgCcGLWe+bp+DNSsiGcEcZCEB42KXuQfWWbuoqKNIlXNFQMuYZwz+Cg4gjjsAxbiiB4HTxoVTf9fPG1uFUD+gmUyvdwGzuL4DOxvRpz+VFV7vco73sSQ+c6zMG7VgVv2vL9svWtgsD20rUx7e/ZS1dzfoN3D/gBYj93LPGcXYwAAAABJRU5ErkJggg==">Docker 宕机期间保持容器存活 · docker-doc-cn-dev</A>                <DT><A href="https://my.oschina.net/xsh1208/blog/1837768" add_date="1622001029" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEklEQVQ4jW2TS2xUZRiGn+8/58ycOcx0ppOpM7RQm9JqWwmKlxpvwagpMbpi4YYYYmLSBbpyyYZEFy6NujAajCs0aQhuKnFTJwZBKRrrJUCp2NqWmUrKXJjpzJzL/7sYQYK8q2/xPcmbvO8r3K6jKI6iARgrDDGe241yUmz5G5z6/QzQxiAIAAb49+xKAMPU6OPZvYXpVNbd7yad7ZalJAiiYKse/LR+uXaMz+Y/4Q7oFmy/Nnlk+NHc24VdaZFIowMNghERUXGLRj1g6fvybPXT0wepUAOwAAUY+9Ajb+2eGnw33++ZTiMIw06EiIqMQQcdLboT6UTCCnMjmfGq17PH/2H1OCAWYHhiaGz4hXtPFAaTNKs+ylIqlnQsPzJWZLBczxYTGvx2KJ6r2tnhzESlJ9kKzq99ZwNsm+x/PT+acdo3gkBZYqmYUn/+vLlcXql/rCNtBkZ6Dw/tye6IiU2jGXm1a822ickEoGxAZfoSTzm2mFZkcFO2XFm4vrr6wW/PUiqtAKzc33+yc3CsGI/bG6Wl6uf+ufWTLKwvAthAwoqpnSbUYtvoQCPVa60ZSqUV3hyJ8+uOiGLxUnkutpficgXo3J6CupkngDYiIoKySQPwzFLIN8UIgOLy33fCNx20wna0LLbq11EoMYzO9acO1CZ3fsQrq+cB2Df8WP65oS8Ec6H8R/1L5pZPsba5fqsH3htPvvPQ1OARCcIg0liOq1Tpcq1RLbe+MoKVzSdeGhjvdTXQrPrUN9u1q4uV2eb7Zw9ZAIGyrtgFbzo3kHT8dmhMZCST9+K54Z4H+oZSEz29ru03Qx12oiiVjnXcrJvcuFg54c+vFbtFWqtW6oVMJbV928vp3jihr6PQ12JCHelA68DXiELHPccESPyXr/+abXx4dvq/IoGYhdL8ZioZOknn+XTBs2wlIhaibFFOTCnbc9SNim9dOn11pv7emVcB/+5jenFsX9/D+cPJ3vj+RNLpAaGzFba2Gp1vSxfrxzj+48zdxtRVd6rdWJ++70HucUdRSri+tcLc4rn//QD/AGg1V5lOKkFuAAAAAElFTkSuQmCC">获取docker连接数的方法，或查看docker的连接 - 谢思华blog - OSCHINA - 中文开源技术交流社区</A>                <DT><A href="http://www.360doc.com/content/16/1122/16/17572791_608554926.shtml" add_date="1511958371" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAdElEQVQ4jWNMXszOQApgIkk1ioY5MT/mxPxAlsMUYWBgYME0A1MbhJGyhANJg4AgVmlMIxghnoYIpSzhwHQDmn4mZP6cmB8pSzjgcshsfH7A5RnCGjCNJ8EGuGZ0DZiK0ByGJaaxugSnk3AFPxww0jHxEQkAH3QxVAd7lBQAAAAASUVORK5CYII=">Docker registryV2源码解读【一】整体架构与启动过程</A>                <DT><A href="https://github.com/yangtao309/yangtao309.github.com/issues/1" add_date="1521699656" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">Docker废弃资源、碎片清理 · Issue #1 · yangtao309/yangtao309.github.com</A>                <DT><A href="http://dockone.io/question/270" add_date="1521699808" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADTElEQVQ4jWWTT2xUVRTGv3PvfX9mptOW1lqL4LS2xYWJKHSqSCk1ITZpY7owYkjcEExcaNWVCxekLtkoQRKDGmOIcUGiKyUpi5kUEVpoTYCFWlREtLSlpX3TeTPz7n3vHhdTDdHf+vd9yUm+Q/gHZgIRA0D/d+WdZGmAY9MBEgE8Z+7y3lQRAN/vAQBtpgkgzk+ubhfp1DFiHiOl0nVDANbUINRMrKOjV/Znz99fIsD1cP9UtUs2ZArKTx1io1NJWNZsNGytEnJsfVLOfuV4k/nC+kEQMSZY1AsAoMgKbD4XjtsTl+7VGGxUttllIefZUUMJ8IqNopvCdXzhOKd2FYMeTJD994S+qWDEddPfxuGGJkEkG5oda/Q303/98iIOPq4BID+5ul2mUu+oxtQbZqP2SaUSvh+YcEkAAFmMsBAWRJCZJscm8QfT8xdfeqY9d6j/+9ooAFwZbr09PZgeN2E0zNK6injHg+nGQdVz9oanPL9NCBLW9RBXwzcvD2U/3HbmdgsI7xH4Uv9UuZUSq2Zo7vTMXv8cgHNPFtc6yfLrykNDNzMkRBIiSV5IeOP6wDX9pSmZH20U/0GgKoiPkBI+Bp/7DAAe/erO6OKt0u+5XPYh4bneLsv2axFGz84MZYus0zkT1IZY614iCGaWRHIBUtw6fIfbdhYqJ1bumeOuCwCiQbiSelb+XJi9/vNay9tr3LzlEX9DklwWkpaFpMRR0nMUbRMk+i9OL1/4dVmNlxaDj7u72ztjFnepr1AaE5Lysz/cbWxsTr3akqVrjVtSO2B5DXHcYWL2yuXIrq9VVKA9wNTmYblvz77cpzVtjhPAtOdC5SMdmatzlxZ3o/WBIxSVIDiGNZo5tgRSQDoLCL4JJCMDTz88bLRpnRnIHBUAUCrH77q+N7bvQNcCovW3WNtionmVpV+F44Ug/g1aH8u61RGMd/1ULZXba0Hli80h1afcfnox09XbdNJxZKcuV8+vhMlCsJEkvsPc1uQik/E6LVM+1nGBYy3Z4urs8y1nFUAMZloiCpeAw08V1w94vvfy1ibxREeVUySRsCuCKIhuxE7Dax7Hvey5J63hE/gfmw9S54zcemo2jYmi/1+tr1B7bHchGAWAvwHxvZ2yajg5zQAAAABJRU5ErkJggg==">怎么删除过期的容器和镜像？ - DockOne.io</A>                <DT><A href="https://cdmana.com/2022/01/202201150702388866.html" add_date="1652354827" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB1ElEQVQ4jT2SvU5UURRGv7XPFRykJqGnw0I6fARegEeRVyD2aiNvgJ0TsCH+FDM0QE9ALDA4QMA43Jlx7j2fxRnsTnbO3ll7r4+6HtqWFBHZGQkhZGPlIECWMMaSKgBkyzYCJGEZhMK2hCXJtpEqqRRlG7AlmcA5S0iyLEkSICv+z06RnA1ECuecUgVERBBARCqwAaSUptPpeDxOVZo208l4AvEwrCVNJn+z3bbtaFQjy46c89zcfK/X395+Dentm3f7+5+urn692tq6vPx5cPB55/3O+dn33d0PCImqoD881EdHR92P3V6vv7S0dHJyMhgMjo+Pm6bZ29u7u7vvdJ6WTULMTrC6+rzb7a6srAyHda/XX15e7vd719eDjY2N09PTm9vbVFV2pq7/zM93Dg/79/e/FxeftW2+uPixsNBZX3/59duXZtqsrb0Yjcbn52ebm5tN01CPhpICIKoqtW2WDFEAbOfcVtUTyU3TClGPhkguB7cDFDhbuGwpFTeWACrnopIi2czEQth2zgQUg9hSRAAxc1q0owjsLCvS7LcQStIjaxlflpFlSy6VKEGSbWfkqkS1dD2SPgY2Wzae4QfYqgphmzPM4mXbckQIgS3L5WXBP2KYKFkJkes0AAAAAElFTkSuQmCC">centos8安装containerd</A>                <DT><A href="https://github.com/containerd/nerdctl/" add_date="1652355014" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">containerd/nerdctl: contaiNERD CTL - Docker-compatible CLI for containerd, with support for Compose, Rootless, eStargz, OCIcrypt, IPFS, ...</A>                <DT><A href="https://gitbook.pptfz.cn/linux/%E5%AE%B9%E5%99%A8/containerd/containerd%20%E9%AB%98%E7%BA%A7%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7%20nerdctl.html" add_date="1652342927" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">containerd 高级命令行工具 nerdctl · 打工是不可能打工的</A>                <DT><A href="https://mdnice.com/writing/c57c45c557bf46b0835958134892abc4" add_date="1650957599" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVUlEQVQ4jaWST0hUURjFz3ffDKONNgMNGv5BqU3QRhCiRTEjZWmBU9BUm2h2JmG0ECJb9ChqodWitoEtXGmNQWlgkFa2MYo2EQUVpY2aOuqb9+77f2+LYSDBSunsvu/+OJyPe4D/FK2aVJUBcQY8F1BVsepNSlLHobyfhxw8Tv4aXpLWWG4sQemJvt2xymgzA5v4djs59hsjL03KWnJw0hdC9xnr79lDeQBgUCUDgPRAtiV1rPl+JBK5Asae1Z1/cLgYLT0ko/qSPeYF0OM5otzzES0mZrgMCQCbI9Gz9duqq2sqYqO2xSEd/xxkASK5nPTDoe0z2ZXB3v3BnltxmgJIFgyI5NHMbIXG3abvU3lNt91uOEbO98z4lo7BKgBYMpwjOc2Tmuk9VqVkUGWgeDYDAGkp+7yS8nDeMF9NdDW+gRDjCJaFSFvcm+6TJRq3D8xNz5kLuv5UJRJQyVtlwLl7SLM8LHN7GAD5wh32PRe+xxMfjOxBMxgtXTbM0Zft9TOFrwaqO0dqKs9kKgKNNz7GNG61ambWFbBGAEhDZ09C9qwDKZMLucW6EAuTrdkPAQCLu4IAbNi50wqYyyxBcYtKI3nOX0x27vgKqIxn2meEa9+UpGxd+vK2Zf7T69HPC++GAAB3Wh0A5Nq8zXf0ZGCFmx2hstqAa/x8BABIxBnGIVYyF7o3Ja9OQM9V8XvpfgBWoRMkcao37Jr5BgJ5FLs42QUZDBsK3TWvNfxYbwPL2663EfneP7CUgtSA8jeCkBgLIAFAbfKBQqnWp5QC7NwA/wf9AvOJGy85gFLuAAAAAElFTkSuQmCC">实战：Containerd高级命令行工具nerdctl安装及使用-20211025 - mdnice 墨滴</A>                <DT><A href="https://github.com/distribution/distribution" add_date="1652410506" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABdklEQVQ4jY3TvWpUURQF4HUmk2QUCWJhoVUQBLHwByWx0aewsBV8mChBLRIQtNBaFBFsbIIvYCdEUJNCsRSMI5KJn4X74mUw4obD3eesvfb/TZKgpQSX8ADvMcb30u9jKfsJZrFahE5+1ulkjBUM+sQB5vHc/8vjCjjonNwp4CWuYQM72MKH0l8V9qJsVzryMn5ggrV6G+I4RnWOYa6w22X7DeeGSW4kmauKJphJstda+9hr0Se0wiZJZpIcTHI9eFuNGuNkry/9ybTujkV8Lc7rVH2wjdl9x/TH2Qw2y8GXQZKWRJJDSQ70I/+F3JKMkiwUbzhIsl34kSRLrTXVxOkShq01SZaTHK2gW8G9Smenyjj1jwxO4w32quz14Hxd7uJJ6U9xZor4sNev3Rr92c5gvYALuFULtdhzcKK3heP6rnZgt8obeIeruDiV+gife06eFWcwbfSoZ3S4hy1Un3axprZyejydfhk3Meq9zfv9F16Z5vwCz01H2UDrUX0AAAAASUVORK5CYII=">distribution/distribution: The toolkit to pack, ship, store, and deliver container content</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1672909663" last_modified="1672913389">kubernetes</H3>            <DL><p>                <DT><A href="http://docs.kubernetes.org.cn/791.html" add_date="1526636810" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADOElEQVQ4jW2Sb0xTVxjGn/fee0qLCBT/QTETsaFQDCIV3HQSEln0g4pA2izZxhLN+k1ETYwmTFEy3fxAtviBkclEGS6CUdHEqAlxE2JCgEJXoOiYQ9SCoLXaoOvl3nv8AO0a4/PlnLznvL885z0PISJOcytxq71VNwSHmmVs/xIAvC9LfstGqzjc5pCj7wGA9D9grsABojaHTICIwhdmAKC7AOCQOSAQSEOUIoDUL9qqDKLYTefLXBurbh8sL1pRmpKoywQHJgMj2y51jl2muq2nzBWX82SVrx9vKf8xDCAAnOnE/rGpmR+qz7kX7t6Wk+ubDuDRRAAAUJC5LHdnoSX3zBpP2amLA8HUJP2RsG2EbQNgh391eaeCGq+94A519PvUvfU9WmV9j9Yx4FNrW9yhqaDGDzX2jQBg8z2QbM5eRiabuunVrepK+9rMhmt/yZc6x9nXxWast4TAwZFhSqADDX2MA/JeR56lc/BmNSVsOWbz9UkUnsFPV4Y9BVaTlQkKX5oQIx5sdEESBBAARdXw/e48PA+GVFmVqHvI560qs64GAClj19WK0fGXK1OSYs0Pn/qpb9RPOWmJXCAiKc4EEKC+eoo77mfcMxYQ1pqTYFoUu0ooPnvU/JHxX0ngXM9EigXm/kdRNIRmVYADgiiC5j2GZlXIigbOARAnJlKswAV95Amn271DeZbkzAVM48lGg1j1c09k0EQcdc58PAu8VWdmBXKNTNzfs9NqBQDRam/VTWfb8cb/X4qzZHVhS8ffypFzbqG+8mPEGRgsy+PxVfEqlB7/AwApn+WvkI6fd/3yaPmOP63ZdhaVqSJ9TbP7gS+g8OomV6hrcFLd19Cr7Wvo0boGJ9Vvm1whX0DhNc3uB0CRPtwlhsNg3nU6/3r34w1xBmnmm+05yf6gTDoBtCzRQInxC6i4IF1svOEd+e53z3T6pk8H/f0XnwAgMUzSZ5V9Hq9nze01dbVuvoSMcWzJ4viYhTFMVB9OvP7n5IX+M2f3n6xIzV83rCraJ689bffwIYUTBoBhc9MJbG46AYC9dxaRELUngBMBsDl7GbdDs6QZRy1pxlFuh2Zz9rL54BOiQO8AcJVJYKblk8YAAAAASUVORK5CYII=">Kubernetes 重新配置活动集群中节点的 Kubelet_ Kubernetes(K8S)中文文档_Kubernetes中文社区</A>                <DT><A href="http://docs.kubernetes.org.cn/736.html" add_date="1517908560" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADOElEQVQ4jW2Sb0xTVxjGn/fee0qLCBT/QTETsaFQDCIV3HQSEln0g4pA2izZxhLN+k1ETYwmTFEy3fxAtviBkclEGS6CUdHEqAlxE2JCgEJXoOiYQ9SCoLXaoOvl3nv8AO0a4/PlnLznvL885z0PISJOcytxq71VNwSHmmVs/xIAvC9LfstGqzjc5pCj7wGA9D9grsABojaHTICIwhdmAKC7AOCQOSAQSEOUIoDUL9qqDKLYTefLXBurbh8sL1pRmpKoywQHJgMj2y51jl2muq2nzBWX82SVrx9vKf8xDCAAnOnE/rGpmR+qz7kX7t6Wk+ubDuDRRAAAUJC5LHdnoSX3zBpP2amLA8HUJP2RsG2EbQNgh391eaeCGq+94A519PvUvfU9WmV9j9Yx4FNrW9yhqaDGDzX2jQBg8z2QbM5eRiabuunVrepK+9rMhmt/yZc6x9nXxWast4TAwZFhSqADDX2MA/JeR56lc/BmNSVsOWbz9UkUnsFPV4Y9BVaTlQkKX5oQIx5sdEESBBAARdXw/e48PA+GVFmVqHvI560qs64GAClj19WK0fGXK1OSYs0Pn/qpb9RPOWmJXCAiKc4EEKC+eoo77mfcMxYQ1pqTYFoUu0ooPnvU/JHxX0ngXM9EigXm/kdRNIRmVYADgiiC5j2GZlXIigbOARAnJlKswAV95Amn271DeZbkzAVM48lGg1j1c09k0EQcdc58PAu8VWdmBXKNTNzfs9NqBQDRam/VTWfb8cb/X4qzZHVhS8ffypFzbqG+8mPEGRgsy+PxVfEqlB7/AwApn+WvkI6fd/3yaPmOP63ZdhaVqSJ9TbP7gS+g8OomV6hrcFLd19Cr7Wvo0boGJ9Vvm1whX0DhNc3uB0CRPtwlhsNg3nU6/3r34w1xBmnmm+05yf6gTDoBtCzRQInxC6i4IF1svOEd+e53z3T6pk8H/f0XnwAgMUzSZ5V9Hq9nze01dbVuvoSMcWzJ4viYhTFMVB9OvP7n5IX+M2f3n6xIzV83rCraJ689bffwIYUTBoBhc9MJbG46AYC9dxaRELUngBMBsDl7GbdDs6QZRy1pxlFuh2Zz9rL54BOiQO8AcJVJYKblk8YAAAAASUVORK5CYII=">Kubernetes 示例：使用 Stateful Sets 部署 Cassandra_ Kubernetes(K8S)中文文档_Kubernetes中文社区</A>                <DT><A href="https://www.cnblogs.com/styshoo/p/6731425.html" add_date="1521012896" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">Kubernetes存储之Persistent Volumes简介 - BookShu - 博客园</A>                <DT><A href="https://www.cnblogs.com/ssss429170331/p/7685163.html" add_date="1510714867" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">kubeernetes节点资源限制 - 深空灰 - 博客园</A>                <DT><A href="http://docs.kubernetes.org.cn/227.html" add_date="1509329702" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADOElEQVQ4jW2Sb0xTVxjGn/fee0qLCBT/QTETsaFQDCIV3HQSEln0g4pA2izZxhLN+k1ETYwmTFEy3fxAtviBkclEGS6CUdHEqAlxE2JCgEJXoOiYQ9SCoLXaoOvl3nv8AO0a4/PlnLznvL885z0PISJOcytxq71VNwSHmmVs/xIAvC9LfstGqzjc5pCj7wGA9D9grsABojaHTICIwhdmAKC7AOCQOSAQSEOUIoDUL9qqDKLYTefLXBurbh8sL1pRmpKoywQHJgMj2y51jl2muq2nzBWX82SVrx9vKf8xDCAAnOnE/rGpmR+qz7kX7t6Wk+ubDuDRRAAAUJC5LHdnoSX3zBpP2amLA8HUJP2RsG2EbQNgh391eaeCGq+94A519PvUvfU9WmV9j9Yx4FNrW9yhqaDGDzX2jQBg8z2QbM5eRiabuunVrepK+9rMhmt/yZc6x9nXxWast4TAwZFhSqADDX2MA/JeR56lc/BmNSVsOWbz9UkUnsFPV4Y9BVaTlQkKX5oQIx5sdEESBBAARdXw/e48PA+GVFmVqHvI560qs64GAClj19WK0fGXK1OSYs0Pn/qpb9RPOWmJXCAiKc4EEKC+eoo77mfcMxYQ1pqTYFoUu0ooPnvU/JHxX0ngXM9EigXm/kdRNIRmVYADgiiC5j2GZlXIigbOARAnJlKswAV95Amn271DeZbkzAVM48lGg1j1c09k0EQcdc58PAu8VWdmBXKNTNzfs9NqBQDRam/VTWfb8cb/X4qzZHVhS8ffypFzbqG+8mPEGRgsy+PxVfEqlB7/AwApn+WvkI6fd/3yaPmOP63ZdhaVqSJ9TbP7gS+g8OomV6hrcFLd19Cr7Wvo0boGJ9Vvm1whX0DhNc3uB0CRPtwlhsNg3nU6/3r34w1xBmnmm+05yf6gTDoBtCzRQInxC6i4IF1svOEd+e53z3T6pk8H/f0XnwAgMUzSZ5V9Hq9nze01dbVuvoSMcWzJ4viYhTFMVB9OvP7n5IX+M2f3n6xIzV83rCraJ689bffwIYUTBoBhc9MJbG46AYC9dxaRELUngBMBsDl7GbdDs6QZRy1pxlFuh2Zz9rL54BOiQO8AcJVJYKblk8YAAAAASUVORK5CYII=">Kubernetes是什么_ Kubernetes(K8S)中文文档_Kubernetes中文社区</A>                <DT><A href="https://jicki.me/2017/08/08/kubernetes-1.7.3/#etcd--2" add_date="1511340637" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC8klEQVQ4jW2TTWhcZRSG3/Pd7373L/dOJpNMkiaNo6ZNLCkoFClZuBKCiwYUXYhdFrpSKm4EQbLoot2JO10ICiK2S5tdJaDgQtpFbGmhsY6lP8Pkx87MvTNzf777HRdiGiUvnM3h8HDg4QUOhHlN8I0vbGYmHBLmNcFbnzsHd/uHvLEhk9mdKgea0S04rFKKyT+GRGsmZq4nfbyB4cMlL72xXWnvfEanzhf/AXQefFutzFUHC6tlGD0fXZjw8sezcnczmHxxamW5cSFOzfJWq2udamBjdO74J09T9NZz/C73XxE2Ab8WVvTqfLDY+CD3XbXVS2LbtUfub2ZuJiwwjaLeLU8vuuZazebh2Zwu7wOM7hvghLRs+4hwlKPGQsXV0AGAAoAAgCzHbtz1yBjPEYRxhXPiX8Cojof3f0lHo7mxt+zIV2wY4P+NUrjTI/zVzUAEaIYlAeDMD+zfrWQzgfvg06UGrzaFdZgEgICUBdJMw4CQaFwV71xh9dIEPu5oe730Zt+rByJkrQE61CR80lCORFyg9C3+U156HV4vL19zJY6lRmHGZdBWC+XRaVhK7oNMaSDiBK/UGHAsFCVbNYenZKhRkoOkMIRSF9h8lMNPc0QPm3gcjkNN1cBZgdp2CysnIry8MI1IGShK9tSweUvU65Q8GeIrW3A/ChTeXJ4GRyNoOyEsZaPsxCgHKY5UFU6fnEDFt6GEaMPkH00kP/8oAMC16AVJ8AwzFhsVnF8ew1JkYAZDcFbApDkMCIoYFuF2yTgX7V1fx/z7uQAAY9BnRgkARIST81VM+hayOIVOBjDDDK2dvnnUTr73XPH2c2PuNQQF4+aXUgLA3Y64Iqv6qCfFKsAhM2hhLpzRuiMCT+nmk6d3bt/b+frDi81vbn53ZvefYnkMz3vmipnFb22MKwd+aEFJwopmPS0F3ZJp66eadb3f7Ska2EkGACNx6IfH39171gUiA2D7gPJ7B/0zM8XJVXckU46QgQg1ekTEfwO4C1Cmp4oaKQAAAABJRU5ErkJggg==">kubernetes 1.7.3 + calico 多 Master — 小炒肉</A>                <DT><A href="https://www.maideliang.com/index.php/archives/25/" add_date="1542265277">etcd集群备份和数据恢复以及优化运维 - 麦德良</A>                <DT><A href="https://blog.csdn.net/styshoo/article/details/55657714" add_date="1542355077" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">Docker网络代理设置 - 添经地翼的博客 - CSDN博客</A>                <DT><A href="https://blog.csdn.net/u013042928/article/details/78751015" add_date="1542611560" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">如何在k8s集群中安装nvidia、cuda并使用GPU进行训练 - u013042928的博客 - CSDN博客</A>                <DT><A href="https://jimmysong.io/kubernetes-handbook/develop/operator.html" add_date="1552444747" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABXUlEQVQ4jbWSzyvDcRjHX5/n+2NMSS1arayZ5GCljeTH4qC5+kdcODjKUm4Orq6uXB2cpKSJpqUUpR2UZH19LYfNvp+Pw0YmF8pze3686v1+96hk1vCbkl9d/wWwv/VBgFKIoDX6i1ilsKQdMIauMJNpyvfc3DEQZyiB67SuHyucXaJ1OxDpIb/C7j62xfY6Pd34VYzBsigUuSi1AwAKURiYHqM/xuomR6eIADQaNIKfPDTrycMYcln6IgCez8k5fhWlvgEGwBIOj4nHmBhlfgbXZTBO8YqlNTwfu6leawJNOIzrUqvjv7C1QyiECLZFfpncLLEoFQ9ba1LDzE0iikwKoHRNLMriAo6Ngc4Q6REqHs8vKIVtDNFesuMYQ/WVjW0KlwwlmMrQEWpq5LbM3gH3D4igklljWTh2K4r6GyKI4DioD2uf81ZKQUAQtHbNqdbUam1xyMcP/f/zvQN8e3d5nRndcgAAAABJRU5ErkJggg==">Operator · Kubernetes Handbook - Kubernetes中文指南/云原生应用架构实践手册 by Jimmy Song(宋净超)</A>                <DT><A href="https://www.huweihuang.com/kubernetes-notes/resource/limit-range.html#" add_date="1552999853" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">Pod限额 · Kubernetes 学习笔记</A>                <DT><A href="https://cloud.tencent.com/developer/article/1140076" add_date="1561118285" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWST0iTcRzGP7+977t/zilJBUJCxLophFBQHcWD0SFjRcFoTREzRcpTReihIiSkQ6c0QlKLFUhEHbp0aoamQmSHpkUXS6ZsYW5ur3u/HTbZ/EN/nt/p++V5Hh5+3we2g1+0f9r9FUFxEhTnnyhq4ygKlNApJ4HLCIcB0Ihgcpd76ulmA9sWcYf04uYZgheLmwg3yOKllDAdcrvALUbLewMRxUU5wRUROrN3tmS9JH1cF6FdziKiqBUjb1bkdkHe0CaTBWMxaFknAu3SRofUF6fOiSMzB3B6r/KdRty2OdzJXg75BjYkGJYmHPjJsBfFBzLc4pyaVkzMHkF3vmbNNNHMESytmvJdR0nEw9gTrdTUxHki/XhoJs4EFh/RaUTHwKReMRadwu6oIP7zIHXVCwC8+9KFx3WN5ZXjzO5rooLzLNFFQPUB0C+78TDOGkvwaVEYi3YDEI066JHcZZ5PVTIio7wQ4aG0AtAjNnryvRiUbkZFdNIpE0uqAPD50gA8kFKWuY+bY8QIEFJDOQNlAav5X6kijamzmhykrLyZyNxb9iw85mu1h28M46SOBEFCaoiwuPiBBYADDQen8RDiFwOKyMwOjJJHeL0NLCaSzFfacTt0VoA0KcCVuxigEBSKEiDJK1IECh2YnmtgvqyGWEUJmpXBsmlo2JH8KyCLwThn1Mv1xaZa/g/WiwQQDmvs9Ofmz5MKarfX7EeIIZxSWYDfa9nVNFgL8gwAAAAASUVORK5CYII=">k8s集群运维篇–kubectl常用命令 - 云+社区 - 腾讯云</A>                <DT><A href="https://docs.traefik.io/user-guide/kubernetes/" add_date="1561447823" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADdklEQVQ4jVWTXWyTdRTGn////Wj7bm23dR+Ylc1WNt26zTGMZAY3icbAwLgRNIFM4kdCvFLiR4h3VcaFN8ZkN0JiiBoNZTeaEXFgpHwFiaTCXFnGimvnHHZpu9K9bd/u7f89XowROFfn5nfOc3Keh+HR0nwdHZuqVRM1kZksAbIA+DLAjWc3u0rLejk+OzsFQAAgAGAP0wMDA0fchYIjyet+njr06VNaXveqqgxHtSfe+eFwmvk8/clM9srZcDh0nyUWBHgQsI42NOyf6e//3geg7+B7yPT04mLsX7S5bNjWWo/E6DGcPv8LrGIx1Tcx0fUGcBcApDDAAVD90KuDtmJx+/Cu3cXePbvlgANsS30V2i3d9Ktcat36DP4ZHzenJcm51NV1PBKNpgGAv3ZqTf5/3qbv7MnMdMzbatdLQtyzGI2OfoGffp1QsoqDJkskim09ims+fiJy8uQcABYkcDa9cMBTEMreLc1fH3vi1F9fNmxoeL+VcquWmVcOa7cZkxUcyfqtVWbDrSLnZhkvxPa0XIjMvf2up9oIyW3eb9N/zr/jXJrdufnK2c/bp6xuulZ+XIpRHfum7TkIITC59DcLYLF8yBbjzYuR7ifpYDI3X1Kbq35YlgFAZaUfE/bHhgZXQsagcoFlVzW6J7npq8gO5oSBCfMcc1k6ObUiYOac4cX9L9XmlkPrb+QE0CtDvYc/frF2X48001EuW+S08jxi62IuS4e/HCcddpJkiV8zWm5+diZz9PK5q2MAJB687wG/rf7inYzDJ9mdVIbMDabAIguCLBhQAC4TVysxl9Eq93Vvu0Rry8UDIxHAFq6P36yo1DpL6YSwU4HfMKuYkwn4pBWYkibstX5eKhqXG57e0bfO8fUmNjvrrFDg5/kkQfMw1d3McsyJZckNtaoZ5KhhPH8XjMo90ehS5aMDgkG+qaVl5Y87k2dy+gKkdFTo6Rj9ZtRQuOCiUmqGWOoWpdNzLBH//XggUK+D1mIgAwCi7YwBVmPh5VCTyO/16POkc4fIqeAgCVdXNwoHF1IS1ZnrqaYRYARga2FaUzD2ugCAkcap016bOpnZ+LyarwnINkcFt1W4edbTpRQbt/K+DdoYfRDIIhh8cLr8cBrf9KBl2BNLHYibn9w27J0WyMcYlUrCuLFTy05+VJfoD58/oWL7W8Y68z+IU4KY7LcxVgAAAABJRU5ErkJggg==">Kubernetes - Traefik</A>                <DT><A href="https://github.com/kubernetes/kube-state-metrics/blob/release-1.6/docs/node-metrics.md" add_date="1619340350" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">kube-state-metrics/node-metrics.md at release-1.6 · kubernetes/kube-state-metrics</A>                <DT><A href="http://www.iceyao.com.cn/2020/09/16/k8s_topology_aware_route_readnote/" add_date="1627895537" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC8UlEQVQ4jQXB7WsbZQAA8OflXnKXS2OTtGlasrRstljR9GVznd1KJ2OdsHa4OdQJIuI/IQj+G4L4Tb/5QdAPbjLBtahj0oWmyWyTJu2SXFyWNHe5y90999zz3H4/qORHaYvCd7ToRpw/dAhl/KKU+p1bUUZdCjnTcjEeQeTI8kouiiIsLyVQXEQkFLMSe0HSBr7qnSv9cwLmBOmaJi5ojAGcV/C8pMmREV/FtOUFzUFQH4ZmiDogfapePnMmNzNeeFwnTSKFgv3zC0ESeC24pq5srVzHm1/f/HTz9nvr63qzLXVFk/pGAmtILD+uLaZm8TEDDlSqMGYpaExIpmN466utyWymH3PrxebLRscH1KCWPQzuXFz4/IsPoTRSeFrcvHcjvpWMZdW3UrOCqOM9dPDnD9tWxQnfEPgTKyUldKuvXli9eevjysn3Zr/75LCYUzO/fffoV/8BGkvHK62a1/Hm8tMYiwvZqW82VtbOZVi7enz0aPdgFwBAVdYqnno9h1gWHj0/8f9x94NL7++TilL2jrqne3iQDoTJ10d/fLZdPWzYfaLByPybs83OS2ISzDyUn5lty92Df4/q5QbKKJZFdwu1nWqrvttuPtN9jw56w5nFnAk8V3fQ2cvTqx8tP2z9re/rgi9AnZj/tTHAoO9JVNK0GADhRC6199NOUDM4o3ju7tvVduP8u4vHpZPhieETAhHOrs8sfbl8ZW0FnfJGqxGJaswOmEdt1xXWksucMdJzkRNKcSXkkFmk5xgTcX/frBYrhwiK/Z4hywrzfFHE6LONu+44q5JmALigiMAPAIBuYVD+dr/04MAeDDNTmatXLtlGf2RsZCyZwH+Ud57eL4h2xBwMLMvGCIYCAAHkhEGLySjih/7qhaWAB89bOvU5hOuvhSVP+SQV/uVF74yLGnJ+6cG0LM9HnG2D3Dcpo5IkxaY0ZxpgGSFJR3I+riRU7XbS2+65o4jLEEwKoQxggAI1RHGRc2AOh6ETBh36CnRAkXBZSWkqAAAAAElFTkSuQmCC">K8s拓扑感知服务路由特性阅读笔记 - iceyao的博客 | iceyao Blog</A>                <DT><A href="https://zhuanlan.zhihu.com/p/59660536" add_date="1640793235" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcklEQVQ4jT3TTahVdRQF8N8+59yr5numZlmgQVQUUaOkkUKDoonRQIIgCMLyQYOa5CxMigZBDjIsIiyKjIqmFk0alDxq0CTpSUEiWYZUfqX3Xt85578bnFeDDXuyF2utvVbYn2PFS8aeFtbXI/oKFWqhQb0ylTQSav8Ib/vZC42pV8x5XidV9DNcI2MkhMxOBJCIaGVJ8+btdbsS9uZljTUqqVbvukd+cZLJFGNpLMT/jGikBqtQudzora1CKRPVw9vkwYfY+TFlAxrxyyW2rmf1eJDQhzhzlb+uSo35RqcgdPLRu0RTc/Qxevx6niMn2L+ds1OudOLODeL14/LFYzTrqKITZcrNm8WOW9j1AUtnefUbHjzEyXP8ORXbj7DjXb48JTeOhVZET5UdCssz7jvAsUVKEWcuMPmDi5PBwOmM9gpXe5kpdWQnGzkATGbs3sEN93PbJrmwTdy7SV7AtGWULKesioiCjuhFE5XMZbFlHXdfT92wcQ2/XVDmGtEWSiF6tEKuPLRFJ6tMjFg6ze435MKHXJzx/nfiucPy6BJrR3TLw0FfBsY6sheVHFBHYzTsfYDzE3loF089IrqW1Q2lZUSsbVYYdERHI2SEaK9w041i306eeE+c+pvPFsSTH8lrV/H9s6Ivcut6XlscjM2WJggtW67j02f4/DiffEu28uBXnPidO17m8OPywNf8cIZZhTFdq4rYkxezmNu8gVs3icWfpEpEkP2wq1doVysRbhRjhFmVvbesVp09JxZ/lOoh+2nwRAymRUU16E9FpVbrvNm4ZJ9KrbGnasyV8l/vkEMjFZFl0KwWKudNvOO0ff8CDNsVBiQlEB0AAAAASUVORK5CYII=">理解 K8S 的设计精髓之 List-Watch机制和Informer模块 - 知乎</A>                <DT><A href="https://cloud.tencent.com/developer/article/1651126" add_date="1642083946" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWST0iTcRzGP7+977t/zilJBUJCxLophFBQHcWD0SFjRcFoTREzRcpTReihIiSkQ6c0QlKLFUhEHbp0aoamQmSHpkUXS6ZsYW5ur3u/HTbZ/EN/nt/p++V5Hh5+3we2g1+0f9r9FUFxEhTnnyhq4ygKlNApJ4HLCIcB0Ihgcpd76ulmA9sWcYf04uYZgheLmwg3yOKllDAdcrvALUbLewMRxUU5wRUROrN3tmS9JH1cF6FdziKiqBUjb1bkdkHe0CaTBWMxaFknAu3SRofUF6fOiSMzB3B6r/KdRty2OdzJXg75BjYkGJYmHPjJsBfFBzLc4pyaVkzMHkF3vmbNNNHMESytmvJdR0nEw9gTrdTUxHki/XhoJs4EFh/RaUTHwKReMRadwu6oIP7zIHXVCwC8+9KFx3WN5ZXjzO5rooLzLNFFQPUB0C+78TDOGkvwaVEYi3YDEI066JHcZZ5PVTIio7wQ4aG0AtAjNnryvRiUbkZFdNIpE0uqAPD50gA8kFKWuY+bY8QIEFJDOQNlAav5X6kijamzmhykrLyZyNxb9iw85mu1h28M46SOBEFCaoiwuPiBBYADDQen8RDiFwOKyMwOjJJHeL0NLCaSzFfacTt0VoA0KcCVuxigEBSKEiDJK1IECh2YnmtgvqyGWEUJmpXBsmlo2JH8KyCLwThn1Mv1xaZa/g/WiwQQDmvs9Ofmz5MKarfX7EeIIZxSWYDfa9nVNFgL8gwAAAAASUVORK5CYII=">flannel跨主网络通信方案（UDP、VXLAN、HOST-GW）详解 - 云+社区 - 腾讯云</A>                <DT><A href="https://prometheus.fuckcloudnative.io/di-san-zhang-prometheus/di-4-jie-cha-xun/basics" add_date="1660901981" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACj0lEQVQ4jXWTTWhcZRiFn/Pde9OJSSGQgnVhEUREQXDRhailKO2muFBRURFcKCjuFLfiSooLQURUpLqJCxURldaCm+AfiD8UK0Ei6KJRkujkb5yZzJ17v/e46IQW1Gf/nsPhvAcA22KC7dvs/FaEf4vwyG07dMSy7ddsH+b/sH2F7Vds157Q+/CU250tX8bA9gu2i8sPk+0Z25/ZtiNy3h00eTTMq4/eHqNfzkeztpLz4O9xXBJ633ZlOyVJAbwIHCdyjaTdL84U46Xv5WGf0Vdn6Z9eUAz7JWCgBu4HnpMUpe1bgSeAFlQZVP/wuaPfI8Yj1T+fI9Z/d3XoOmaO3yfnXKkoMvCM7fcS8CRQ2iZSSnnzT9c/fUt9/hvJOK9ecLvd1fDsuzjCUhK2gRngsQTcAVh2ShFuln8kb/2lNNWxU6HobythN2sX5N6mESBpEufOBBz0XpUpqThwEKXSYUsCpYQjK3VmnOYOCEmOSL4odShdqiPon15w7q5SXXsjtGNUllCUOMzUDTez++WnDM68EwASBkjAmmwoK2Jni+7T9zL+dUmMhs7bm8TOBmrHHi5+ou6zD9hNIyvtPd6KbC8AjxhaQzla/Nge9HAqdNFF2JZytubm6Rw5oYRbUAm8XAJvAA9OJGP3u8WUl8+FOrPYIdukonTu99h3+Kimj5wwRuAh0qlS0te23wSekl1P33RL1cxfJU3tA2z2AtcjqmuuD0OWVAEvSVqS7QRMAx8BxwDy+krTff7xInWm5Rxge/7kQi72z1WT7B8ADwM5SQpJA+Bu4FUc4+LKq6vZo3el2Fi3exuePXZPKvbPVUQMgZPAQ5KayQz+Pedsv93PXs913UTb1P3sP2y//l9z/gfoushrtth0/AAAAABJRU5ErkJggg==">初识 PromQL - Prometheus 中文文档</A>                <DT><A href="https://blog.csdn.net/zhonglinzhang/article/details/102721682" add_date="1582880713" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">【kubernetes/k8s源码分析】k8s 性能测试 perf-tests 解读源码_运维_zhonglinzhang-CSDN博客</A>                <DT><A href="https://docs.rancher.cn/rancher2x/install-prepare/best-practices/kubernetes.html#_2-kube-controller" add_date="1583119202" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABjklEQVQ4jZ2SPWgUURSFv/N2Iv4kuwkiQkhlZRMEsQ2IoIU2aSJrSGUR+2TTStqI2BoFK0EGLGwECWhjZSVYiWghJhskKYRoSDaTecfCmY2rmUU88OBd7n3fPffyRKn5J5dRGOdu8x7/ooV0iuixhFa6QPRbxHngGq20hhUBCFHdB5YQ7/gcXvH0eo45jcKEaKUGXiBWMbOAK3oK+IDjJNY2NZawziVFcpNIA3ULqxh1FGYQTcwZ0GYBcAexAvpRVNaBq8CJXoCFaGM9Q9SI/lQANAWcBcciPgkcPWQIEeJrlqbvgwVyOcIwMPGb+06fXZQ0A4SK5Eug3R/wSxUAbwB7/w8QOfD9b64yonvACeY5wsAQcAEYxJzCPAI+ItWQO5iI/YZ8YK0XsBNucHzXZMkgR8IyZhK4ghjBbIG32M9v0xj9wuLFvFzegdlSsw8GGKovI938w/hXApe403zffwejI0Lq8wsP1wFg/ZuBnSLKi2PMLlnIqgBJ9/bwVsZc+hi53XViCVilcWy9CvATkPyBkhudBJEAAAAASUVORK5CYII=">kubernetes调优 | Rancher Docs</A>                <DT><A href="http://blog.flylinux.com/2019/01/09/Prometheus%E7%9B%91%E6%8E%A7etcd/#Prometheus%E7%9B%91%E6%8E%A7etcd" add_date="1583205806">Prometheus监控etcd | 温涛-运维博客</A>                <DT><A href="https://blog.csdn.net/weixin_34204057/article/details/93777611" add_date="1591878509" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">kubernetes之node宕机，pod驱离问题解决_weixin_34204057的博客-CSDN博客</A>                <DT><A href="https://mp.weixin.qq.com/s?__biz=MzI0NjI4MDg5MQ==&mid=2715292437&idx=1&sn=8bdf2b23e5944665b63a1df5167cec41&chksm=cd6d14c1fa1a9dd762d6bb0eb35073c59761e53902b6ed1af36c47bc4d916fa17cb642ab2fe1&mpshare=1&scene=1&srcid=0815mOijeq24WZlEdBxlkXb0&sharer_sharetime=1565838588648&sharer_shareid=c887c41ad834edeccb4046e39c1fd7b5&key=b00bc6577437f0f5c33f73248eaf6cd851689ea067ef332c39c6c360bba9d8ed350fb7aaecba3741fe064b25ca5f715cce8ec3476f5a7c3d9827355cdb1081e87da6e4f752b4e9d9ad8123f69f2ae9d6&ascene=1&uin=MzY0NDAzOTIw&devicetype=Windows" add_date="1593327703" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVklEQVQ4jYWTsYsdZRTFf+fO7LxdVwW38L1dEfwjorGwEVMJgpq1sLaJnSipRJjONIqNxMo2ECMGAoENkZAuMdvaCIIWyb6nawxrkue8mbnH4s0um8pTfXzfueccvsuBQ9QEx3GDcrwzXh/vjNe5QfnE2zGuADBCGGDrytbbTr9J5xPg5wfaH5TaVejqvbfuXT4+I2qCmhxfGJ8sntJXhF4lgB6WkoNNASSQvtU/9kez92e3qQkBvPDd+A2P4gfEM+5NjALPjdMJoFBoTWSTqBCYf9TkO3ffm/2orQsbL7qqfqJkAnTq2DW+DvEh4Q0AUvchzwudcskJoKRjqsXilaCqzsZqTGhpVKpEcW7v9OwzxLWoQlGFENeWd3FOpUpamliNCVV1VpvfT36l4CV6Uisq3PoO8nU5zjj8HIBSf1v5DdYprehlt9lTKOj5TVuXNueWR0drqSSNhB8Zpz38gbQu3Bgv7CMuagL5/rBVC8kL9z7I1mkLSUhO2wfZeuFeSIAJsP0gLN1UJdlOYwNhUQrJ2GYpZFECYWzbqUqSuBlk+yUN/6pQGOfgoCGiDoWAw3OvUqKlSdovYm97fzfTH0cVIS2TYPLQfRgGk9htRJSxGkWmP5me/utOUBPT7en5fNydUaEWESoV0tJdaIkVhZ7WCgV/dg/7D6bvTr8GIqgxoHm52KFghDhw+hdMY5shxdydf845n/cP8uRse/btUKgsqRE1ucbaa174UrvoPt1/dv/3STPZdHqiUCo129vYu8vrdEdtrMknGspVRvwfLlLgocED/gM4lT/uKMXTbQAAAABJRU5ErkJggg==">Kubernetes 网络疑难杂症排查分享</A>                <DT><A href="https://www.qikqiak.com/post/k8s-hpa-usage/" add_date="1617185980" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACuElEQVQ4jY1TTWhcVRg957v3vckMnVibJhIELVJpsVDURRdCV7rprgu7ka514cKNFZXQTEGk7vxBhFIo2J0/iIh/iHRRRKkUsbhITWlMjK0lselMOm/em3vv97mYvGm761l/59zznfNd4m6YEaQd+ag4QNWX1NLTMQJQvTgo0qnv53ZeqGdqCu9iE6C9cKp4heLfjim1UlUiJQUkQ6shRW+zeOOrYzPv17N3BLZUj56uDrtG/kV1u6uWNIakokkJ1QTSb2tPys2b/cPfvL7zy5ojIx80dM558WnOUjACsQjmm7mw4YVFoI9R42a/NNLmcOQTV6/B2s7Rs+WezPB7VVZ5LmYPtYknH8ktxMSLV4e4thHs9iAJ6aog3P/DazOLgFHQGa1RdYc7hmUSAhZM7ODeCcw+KHx02uPgEw0MIuGFBjhnhZsCAHRO0KMDA4D1fwp1ThniEPsfa9EhQ9MRMRmbHvZwS7mwUiH3xpRk1EJnHmMHTkAScGa4slLgz6W+dTcD+kW0hasFl6+VcDCAhMlW+J0T8HWJEUBmoAh4a5DSL4vJr/UGAM0WVirrlYZmDgEs+nH783cEPADQkppxsv2AX7s1uLR8I80C3N6akKyVS1LVCsJc4XXkADbOwGUT2yD8DPSEZE+FYffzdrO1T5xcTuaej3Hzb7p8RU2f09jP6xDHGSg0p7ghXfOvWPV+EtpUSDFWiuuSNf6wFNfgfBfE9aDcymDepHag4jegYZWW2pR8A+QyYdNlrM6HoniLjm3vJ6Zg/sMbZXVhdEM0qW/6x+OTP393/MUOBLvMbT9z7p2z75rpTAhpffm33mWD3xHj8OOU5V9f+eDxChg9PA5xhE9Tpe8dW/1vfWn3oQMZKVk7941fv901nN239PL5k9OXcL/YfWix8eybq2eeefXfmXt/7L34H2wzbAp7lL+HAAAAAElFTkSuQmCC">Kubernetes HPA 使用详解-阳明的博客|Kubernetes|Istio|Prometheus|Python|Golang|云原生</A>                <DT><A href="https://cloud.tencent.com/developer/article/1759977" add_date="1636107239" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWST0iTcRzGP7+977t/zilJBUJCxLophFBQHcWD0SFjRcFoTREzRcpTReihIiSkQ6c0QlKLFUhEHbp0aoamQmSHpkUXS6ZsYW5ur3u/HTbZ/EN/nt/p++V5Hh5+3we2g1+0f9r9FUFxEhTnnyhq4ygKlNApJ4HLCIcB0Ihgcpd76ulmA9sWcYf04uYZgheLmwg3yOKllDAdcrvALUbLewMRxUU5wRUROrN3tmS9JH1cF6FdziKiqBUjb1bkdkHe0CaTBWMxaFknAu3SRofUF6fOiSMzB3B6r/KdRty2OdzJXg75BjYkGJYmHPjJsBfFBzLc4pyaVkzMHkF3vmbNNNHMESytmvJdR0nEw9gTrdTUxHki/XhoJs4EFh/RaUTHwKReMRadwu6oIP7zIHXVCwC8+9KFx3WN5ZXjzO5rooLzLNFFQPUB0C+78TDOGkvwaVEYi3YDEI066JHcZZ5PVTIio7wQ4aG0AtAjNnryvRiUbkZFdNIpE0uqAPD50gA8kFKWuY+bY8QIEFJDOQNlAav5X6kijamzmhykrLyZyNxb9iw85mu1h28M46SOBEFCaoiwuPiBBYADDQen8RDiFwOKyMwOjJJHeL0NLCaSzFfacTt0VoA0KcCVuxigEBSKEiDJK1IECh2YnmtgvqyGWEUJmpXBsmlo2JH8KyCLwThn1Mv1xaZa/g/WiwQQDmvs9Ofmz5MKarfX7EeIIZxSWYDfa9nVNFgL8gwAAAAASUVORK5CYII=">Caelus—全场景在离线混部解决方案 - 云+社区 - 腾讯云</A>                <DT><A href="https://kubernetes.io/docs/reference/generated/kubefed/" add_date="1512715174" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADbElEQVQ4jW2TS2xUdRjFz/f/35k7z86LAcaWBlDSEtBWSgUbUiIYTRtQ6yNRHkZDJBFNBMSNBq0kuNCYaAl1IbJwYcBqFETFKgmMEbAxausQpdQOpsVhOoxt58773v/9XNQ2LPytvvMl56zOAf6DmeXcDRBPDT2WL1tfF8rWCc79/ABugpkF/g/uhsbTg49nctap9/sNs7N7krsOTvNH5/KVXNH8jHO/dTFAN3vmBOevbM1Yi3d8esG85+SAhd+Thr0oKm1lM1JZJZsbgvTgXcBDba5vAtbIB+Rv7JsLYC7v6/tRf+vtvkmkMkUV8hFfy1ryyXt9KFcZfd8XEQtLNVVgWnqLV+59JIjNd1aeJ+k6TPxVh/732s8vdHYXmxb4y1bFJG0qr2j7Ri/aV7qgFPDtryUcO1fEwqBkm9k0TI/zi/3us7Ee530amncvSSTNJUa+RE31mmNDkwsNdU4MDJfpH0OhXGXMDwi891yYR9MWnfml5Lg4XMLQqFwe23Y4JuCrXZOcIB/B5rNDFXjdktc2OimeqPDEtM1jNxQPDFe5/XYXMTPil6oAK4ykOYzI6hYNet3KkbSmmYrNZbUObX5AYN2+63zkhQgFfQIOQbi7UUf7Sym8uSPM9VFJY1lLjaY1J3zLVojJqrfl8liJBUFEayR7dUGb1njg0QlfDhRxZrAEv5vQ0ermgIcoXCMgQPgzZXG25F2lJdPmusRowb6/xS3alutYFJUIeYmOx4u8p8tPlgLe+DjHty6UNC8guXO1GxE/yXjC4KvXAxtoMq8Gn+3N33EpaahyFWLXJj8KZYbLyVQxwQGPQCZnUcSvMQAcOmlAd5Jqvi2g9ex09Iug+cdTB7f7Uj6PLnQH2Uf786iLSrz4cACaBAnB1L01hKBP4MjpPJwOUkG/W3v1CT0RMuLPzBTJuPLoD+NLj+18d4Irpk2bW3W5YrFuG0VFAOB1Sb48XhEnLpaVx+XEoV3BwvrYTx0UaTuvMbMkok+4lDnw8pYFr+/uHTeLVaD3VI6uZW0bAGojglobdGWUwPu3BbX19X/toZq288wsaXZdRGSzVTja0+95+sPTacwLOiDlzDSVDdyYMrFlYxR7O3MHyBF6bdYzG0AEgHFVhx17x6jIVRazmnkzSJCtMaTfZX9HUn+FmYmIGAD+BaUao0aOmMfpAAAAAElFTkSuQmCC">kubefed | Kubernetes</A>                <DT><A href="https://feisky.gitbooks.io/kubernetes/concepts/volume.html" add_date="1514358269" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACA0lEQVQ4jYWTO2hUURRF1773zbxRIkEwYJNSsIiIjplJbZHGUtLo1H4gfqpAEh8Mk8j4iWm0UGJh7wcsJJ1YWEyUEAstJE1QEIkhaLTIzPscCzNJNB93dS/stc8p9hG7qWru77+yXf0bMm2BdwjVVhC1J52oWo/3DMqzj5SpRqRX69YB8zxWqm3B69bjMq46OOsKFDDIYsAxTcbdxqimN21gAhlAsWZHvOOKg4oLCbMmAAmAgfd5lCUgeJlmPEwTngugVLOjzjFoRsUXKLRBA6/2jobJiHGE+U5ofWfBHKdUGrch5xjJddAZ/wIyVg3yArc22QQpIvB5SFt8xphorvBk7pa+OBmVJKXc+sEIsOhDChIOSDASCfmQwIylZJV6vMzxJGOxcIDp0piNOwm+LvNpJlJ9tUU5bjJpxooPCfweAjNW4iaTzYTemUgjs3e05B0TlvJGcEm9YxY50Z/A8Ow1vQYoVu1w4Bk00ZRxfybSPEC5bv1kXJYRmuiQ8UIA5ZpV5LiIsZA6br8d1TuAY8PWNVfXt76alfEMIfaTcq8R6VnxgeVmzyveKFLVXDngAsYZg/eCQ4iDPmA+iely8KgRaerf4mlzqwCK5yyX6+YmcBrHR2Dvz5iTH6pqrVd5x5sYMN9+lsas2nfDnvaOWvcaGGwPbSvT/z3/U9Xcn6Ddw34DWJPdy1hx1h8AAAAASUVORK5CYII=">Volume · Kubernetes指南</A>                <DT><A href="http://blog.csdn.net/qq_34463875/article/details/78390083" add_date="1516691787" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">Kubernetes使用集群联邦实现多集群管理 - CSDN博客</A>                <DT><A href="https://www.cnblogs.com/iiiiher/p/7988803.html" add_date="1521015063" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">[k8s]k8s配置nfs做后端存储&amp;配置多nginx共享存储&amp;&amp;statefulset配置 -_毛台 - 博客园</A>                <DT><A href="https://github.com/kubernetes-incubator/external-storage" add_date="1521516303" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">kubernetes-incubator/external-storage: External storage plugins, provisioners, and helper libraries</A>                <DT><A href="https://blog.csdn.net/fanren224/article/details/72778704" add_date="1582104321" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">k8s node not ready PLEG is not healthy: pleg was last seen active ago; threshold is 3m0s_网络_fanren224的博客-CSDN博客</A>                <DT><A href="https://jeremyxu2010.github.io/2019/11/kubernetes%E9%9B%86%E7%BE%A4%E9%83%A8%E7%BD%B2%E8%BF%90%E8%90%A5%E5%AE%9E%E8%B7%B5%E6%80%BB%E7%BB%93/" add_date="1606790134" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABoUlEQVQ4jZ2TsWsUURDGf9+8O7XQu0X/ADsVwWo7QbCIRa6/7cVaQgjGdv+QlfRXaBcLjYXICUJsLJLYWSagGCuF2x2Lm/VeQBH94MHMvJl5bz7mA0juLpYYA72dAIuTIiZgBBA1CcCKoiiABjgA5sB6JAyAQdgT4K2kA6ApiqKo69qiMQ3wHrgDbAMnwM14UWEfA48iZ9/Mmr74oqQjoGSFV8BW1mAL2Mvuy6i5ZMAPdz8F1rKEr0AHeJwOOM3u1yLnu9xdktYl7bj7B+AbcBv4DHyMH1wDLgc/I+BWSul+27a7A0nm7s8l3TWzSdd1DlyX9MndXwNIOufuDrwxM3Vd93CxWBxWVZUIJoecxTNgI/M3IrYioSyHgFld15Rlzt+/QdPpNM1ms07SjWyEBzHCixjhnrtfBZ7ECLvuflhVlQkgpTRp23YHyEn8EiR6kHjldyQCDCW9Ax5nP3sKbGb+ZsR6bEfN0IDzLDXwMksYs9RAv0gWsR574V8AINZyn/9Z5bquf4kphDIHJn8Q05yl4JqoMTgr5xF/l/MYVnL+CSDqpFNOX7DjAAAAAElFTkSuQmCC">kubernetes集群部署运营实践总结 - jeremy的技术点滴</A>                <DT><A href="https://lework.github.io/2020/11/09/node-local-dns/" add_date="1632814033" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/0lEQVQ4jZXTMUoEQRQE0NfjBJoo5oKCJzBVMDXxLCbiBcw3MTMQNhU8xYImhqJgIOgR3MzVmTGwG3tmd5adSrr5/Kr6v5oO2MYuasNQ4CPgDm8dgdBDajoC+zDOCn3EHCH2wjjgGQ9ZcVXUOCzxiPOo3GRCyzJJvVclZpgOdE+YFZljGc8THMd731opqyJvSCO/+1vpINaWBtsVCHjFGa6xqf10cyize3LawkUU+MZ6JlLH2kKBAhVO8YIbXGIHX9jAE0Z9AimDW/zEiUZYixOErnsuELIVqoz0Obd0u1cZCY12WNUCYkLeWwVMcB9dh6DCUcCe/+da5TOlKQKmv9rkOYLCa6FuAAAAAElFTkSuQmCC">在 Kubernetes 集群中使用 NodeLocal DNSCache</A>                <DT><A href="https://www.qikqiak.com/post/custom-kube-scheduler/" add_date="1633941390" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACuElEQVQ4jY1TTWhcVRg957v3vckMnVibJhIELVJpsVDURRdCV7rprgu7ka514cKNFZXQTEGk7vxBhFIo2J0/iIh/iHRRRKkUsbhITWlMjK0lselMOm/em3vv97mYvGm761l/59zznfNd4m6YEaQd+ag4QNWX1NLTMQJQvTgo0qnv53ZeqGdqCu9iE6C9cKp4heLfjim1UlUiJQUkQ6shRW+zeOOrYzPv17N3BLZUj56uDrtG/kV1u6uWNIakokkJ1QTSb2tPys2b/cPfvL7zy5ojIx80dM558WnOUjACsQjmm7mw4YVFoI9R42a/NNLmcOQTV6/B2s7Rs+WezPB7VVZ5LmYPtYknH8ktxMSLV4e4thHs9iAJ6aog3P/DazOLgFHQGa1RdYc7hmUSAhZM7ODeCcw+KHx02uPgEw0MIuGFBjhnhZsCAHRO0KMDA4D1fwp1ThniEPsfa9EhQ9MRMRmbHvZwS7mwUiH3xpRk1EJnHmMHTkAScGa4slLgz6W+dTcD+kW0hasFl6+VcDCAhMlW+J0T8HWJEUBmoAh4a5DSL4vJr/UGAM0WVirrlYZmDgEs+nH783cEPADQkppxsv2AX7s1uLR8I80C3N6akKyVS1LVCsJc4XXkADbOwGUT2yD8DPSEZE+FYffzdrO1T5xcTuaej3Hzb7p8RU2f09jP6xDHGSg0p7ghXfOvWPV+EtpUSDFWiuuSNf6wFNfgfBfE9aDcymDepHag4jegYZWW2pR8A+QyYdNlrM6HoniLjm3vJ6Zg/sMbZXVhdEM0qW/6x+OTP393/MUOBLvMbT9z7p2z75rpTAhpffm33mWD3xHj8OOU5V9f+eDxChg9PA5xhE9Tpe8dW/1vfWn3oQMZKVk7941fv901nN239PL5k9OXcL/YfWix8eybq2eeefXfmXt/7L34H2wzbAp7lL+HAAAAAElFTkSuQmCC">自定义 Kubernetes 调度器-阳明的博客|Kubernetes|Istio|Prometheus|Python|Golang|云原生</A>                <DT><A href="https://kubernetes.io/zh/docs/tasks/administer-cluster/dns-custom-nameservers/" add_date="1634023010" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADbElEQVQ4jW2TS2xUdRjFz/f/35k7z86LAcaWBlDSEtBWSgUbUiIYTRtQ6yNRHkZDJBFNBMSNBq0kuNCYaAl1IbJwYcBqFETFKgmMEbAxausQpdQOpsVhOoxt58773v/9XNQ2LPytvvMl56zOAf6DmeXcDRBPDT2WL1tfF8rWCc79/ABugpkF/g/uhsbTg49nctap9/sNs7N7krsOTvNH5/KVXNH8jHO/dTFAN3vmBOevbM1Yi3d8esG85+SAhd+Thr0oKm1lM1JZJZsbgvTgXcBDba5vAtbIB+Rv7JsLYC7v6/tRf+vtvkmkMkUV8hFfy1ryyXt9KFcZfd8XEQtLNVVgWnqLV+59JIjNd1aeJ+k6TPxVh/732s8vdHYXmxb4y1bFJG0qr2j7Ri/aV7qgFPDtryUcO1fEwqBkm9k0TI/zi/3us7Ee530amncvSSTNJUa+RE31mmNDkwsNdU4MDJfpH0OhXGXMDwi891yYR9MWnfml5Lg4XMLQqFwe23Y4JuCrXZOcIB/B5rNDFXjdktc2OimeqPDEtM1jNxQPDFe5/XYXMTPil6oAK4ykOYzI6hYNet3KkbSmmYrNZbUObX5AYN2+63zkhQgFfQIOQbi7UUf7Sym8uSPM9VFJY1lLjaY1J3zLVojJqrfl8liJBUFEayR7dUGb1njg0QlfDhRxZrAEv5vQ0ermgIcoXCMgQPgzZXG25F2lJdPmusRowb6/xS3alutYFJUIeYmOx4u8p8tPlgLe+DjHty6UNC8guXO1GxE/yXjC4KvXAxtoMq8Gn+3N33EpaahyFWLXJj8KZYbLyVQxwQGPQCZnUcSvMQAcOmlAd5Jqvi2g9ex09Iug+cdTB7f7Uj6PLnQH2Uf786iLSrz4cACaBAnB1L01hKBP4MjpPJwOUkG/W3v1CT0RMuLPzBTJuPLoD+NLj+18d4Irpk2bW3W5YrFuG0VFAOB1Sb48XhEnLpaVx+XEoV3BwvrYTx0UaTuvMbMkok+4lDnw8pYFr+/uHTeLVaD3VI6uZW0bAGojglobdGWUwPu3BbX19X/toZq288wsaXZdRGSzVTja0+95+sPTacwLOiDlzDSVDdyYMrFlYxR7O3MHyBF6bdYzG0AEgHFVhx17x6jIVRazmnkzSJCtMaTfZX9HUn+FmYmIGAD+BaUao0aOmMfpAAAAAElFTkSuQmCC">自定义 DNS 服务 | Kubernetes</A>                <DT><A href="https://www.cnblogs.com/tencent-cloud-native/p/14314577.html" add_date="1634197055" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">被集群节点负载不均所困扰？TKE 重磅推出全链路调度解决方案 - 腾讯云原生 - 博客园</A>                <DT><A href="https://zhuanlan.zhihu.com/p/369129906" add_date="1627980116" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcklEQVQ4jT3TTahVdRQF8N8+59yr5numZlmgQVQUUaOkkUKDoonRQIIgCMLyQYOa5CxMigZBDjIsIiyKjIqmFk0alDxq0CTpSUEiWYZUfqX3Xt85578bnFeDDXuyF2utvVbYn2PFS8aeFtbXI/oKFWqhQb0ylTQSav8Ib/vZC42pV8x5XidV9DNcI2MkhMxOBJCIaGVJ8+btdbsS9uZljTUqqVbvukd+cZLJFGNpLMT/jGikBqtQudzora1CKRPVw9vkwYfY+TFlAxrxyyW2rmf1eJDQhzhzlb+uSo35RqcgdPLRu0RTc/Qxevx6niMn2L+ds1OudOLODeL14/LFYzTrqKITZcrNm8WOW9j1AUtnefUbHjzEyXP8ORXbj7DjXb48JTeOhVZET5UdCssz7jvAsUVKEWcuMPmDi5PBwOmM9gpXe5kpdWQnGzkATGbs3sEN93PbJrmwTdy7SV7AtGWULKesioiCjuhFE5XMZbFlHXdfT92wcQ2/XVDmGtEWSiF6tEKuPLRFJ6tMjFg6ze435MKHXJzx/nfiucPy6BJrR3TLw0FfBsY6sheVHFBHYzTsfYDzE3loF089IrqW1Q2lZUSsbVYYdERHI2SEaK9w041i306eeE+c+pvPFsSTH8lrV/H9s6Ivcut6XlscjM2WJggtW67j02f4/DiffEu28uBXnPidO17m8OPywNf8cIZZhTFdq4rYkxezmNu8gVs3icWfpEpEkP2wq1doVysRbhRjhFmVvbesVp09JxZ/lOoh+2nwRAymRUU16E9FpVbrvNm4ZJ9KrbGnasyV8l/vkEMjFZFl0KwWKudNvOO0ff8CDNsVBiQlEB0AAAAASUVORK5CYII=">基于 K8S 的云原生 PaaS 平台基础架构 - Kubernetes 网络之 Service Topology 拓扑感知服务路由 - 知乎</A>                <DT><A href="https://www.guoshaohe.com/cloud-computing/kubernetes-source-read/1320#23_%E4%BB%A3%E7%A0%81%E7%94%9F%E6%88%90%E5%99%A8%EF%BC%88Makefilegenerated_files%E6%96%87%E4%BB%B6%EF%BC%89" add_date="1638169363" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADc0lEQVQ4jU2TXWibZRzFz/95n7TJm7x5m1Zrp0PcKjgRYV9l7GLg1naTsabtYjNFkDF3o47VizEHThvxQuqQOYs3ynSzgms0TbKAWjo2rNAhtKVuQ/wA5weprNalaZP0/Xz+XuhGz925+B3OxTmE/8XMRERcSKcf8OvqniGi3Uqp9UQEAv5QzOOapl2Ix+M3sUq02hQKhZcIOBHSw2sV+7CqFhQzdD0EGZCoVCq3APVOV1f3qbsBqVRKpFIplcvlzkQikaOWZcFz3RwDaXtDcRo2EPh5zSaSYr+miaRhGFhaWjo3Ozv7/N0G2Wy23zCMd2u1Wkkp9UJPT88IAExu5SOkML99htIAMDo6uk9K+aERibQsLZdf7+7ufZOy2exDRDRVV1dnVqvVA319faMAcHWnf7y5Xgw6Cljy1BvbLmspAMhkMh3BYDDveR5c190ulFIHTdNsqtVqn9+BJ3Z4T8fqxOBth68vu5iMaGJgepc3NPXKlJlIJC45lnXONE1d07TDQkptj+M4HFDBCwDwXbu7IxakTxcW8ePQZdrJ7Pav+IptVztyZXBLIwCwT+lKpaIA7Ba+r1oryxXlNc7f+PZBjmmkfb2yLG6tP3T6g/OVlvttK7BL9wWFWmdOHSs+eZIn9zx8rbjue9u2qkqpVsHMUrFSjksq5MGulunj5qfOfrSma/wtzG879vfvGHHXXju48bWT7UDDIYQRnStvdPi/4QgpNe3PQCj0uG3J1q1z9BuK6Oef9v4KZdajVBu/PkfF/Tfbn0Xw3s1+0XpOto3NXLw40sYcCivfnxOK/W90XSdm7gKAX4a+lFgJnoblMkJiYOBG7wT0+zqxsHJCtuWGAcB3A3uj0agGognKZDKbZUBOShmwHNtu7+3tnQYAb7r7gAiL89Si1+Mv6z16NNMPAPl0+hEKBieEEE22bXeKRCIxo3z1fljXTSHEZ/l8fhMAyC35EVLWE1ioHb8DFwqFDSoQ+CIajTZ7jvdJIpG4QsxMw8PDuhExsrHGWGepVFoGcEbCLXS92jeLH6AKhexjnsdxQBxtaGi4p1wuX3UcZ18ymSzdPdPY2FjYdd23lfJfNAwDi4tlxcr/h4gJJGOmaWrVahXMPGxZ1svJZPL26jcSAAaAXC7XwcyHmblDCNEEAMr3y1LTLkGIs/F4/KvVzL9V0K8jcnTY1QAAAABJRU5ErkJggg==">2. K8s 构建方式及代码生成器 – NeverMore</A>                <DT><A href="https://kubernetes.io/zh/docs/concepts/scheduling-eviction/assign-pod-node/" add_date="1638257565" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADbElEQVQ4jW2TS2xUdRjFz/f/35k7z86LAcaWBlDSEtBWSgUbUiIYTRtQ6yNRHkZDJBFNBMSNBq0kuNCYaAl1IbJwYcBqFETFKgmMEbAxausQpdQOpsVhOoxt58773v/9XNQ2LPytvvMl56zOAf6DmeXcDRBPDT2WL1tfF8rWCc79/ABugpkF/g/uhsbTg49nctap9/sNs7N7krsOTvNH5/KVXNH8jHO/dTFAN3vmBOevbM1Yi3d8esG85+SAhd+Thr0oKm1lM1JZJZsbgvTgXcBDba5vAtbIB+Rv7JsLYC7v6/tRf+vtvkmkMkUV8hFfy1ryyXt9KFcZfd8XEQtLNVVgWnqLV+59JIjNd1aeJ+k6TPxVh/732s8vdHYXmxb4y1bFJG0qr2j7Ri/aV7qgFPDtryUcO1fEwqBkm9k0TI/zi/3us7Ee530amncvSSTNJUa+RE31mmNDkwsNdU4MDJfpH0OhXGXMDwi891yYR9MWnfml5Lg4XMLQqFwe23Y4JuCrXZOcIB/B5rNDFXjdktc2OimeqPDEtM1jNxQPDFe5/XYXMTPil6oAK4ykOYzI6hYNet3KkbSmmYrNZbUObX5AYN2+63zkhQgFfQIOQbi7UUf7Sym8uSPM9VFJY1lLjaY1J3zLVojJqrfl8liJBUFEayR7dUGb1njg0QlfDhRxZrAEv5vQ0ermgIcoXCMgQPgzZXG25F2lJdPmusRowb6/xS3alutYFJUIeYmOx4u8p8tPlgLe+DjHty6UNC8guXO1GxE/yXjC4KvXAxtoMq8Gn+3N33EpaahyFWLXJj8KZYbLyVQxwQGPQCZnUcSvMQAcOmlAd5Jqvi2g9ex09Iug+cdTB7f7Uj6PLnQH2Uf786iLSrz4cACaBAnB1L01hKBP4MjpPJwOUkG/W3v1CT0RMuLPzBTJuPLoD+NLj+18d4Irpk2bW3W5YrFuG0VFAOB1Sb48XhEnLpaVx+XEoV3BwvrYTx0UaTuvMbMkok+4lDnw8pYFr+/uHTeLVaD3VI6uZW0bAGojglobdGWUwPu3BbX19X/toZq288wsaXZdRGSzVTja0+95+sPTacwLOiDlzDSVDdyYMrFlYxR7O3MHyBF6bdYzG0AEgHFVhx17x6jIVRazmnkzSJCtMaTfZX9HUn+FmYmIGAD+BaUao0aOmMfpAAAAAElFTkSuQmCC">将 Pod 分配给节点 | Kubernetes</A>                <DT><A href="https://book.kubebuilder.io/quick-start.html#installation" add_date="1652262747" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB20lEQVQ4jaWTPWhUQRSFz8y8/933Ntn8QPAHSUyziAiCKKbQKqZQq5cioBYLNiKEpEkTGEijYClIMCJo51MklZVoKTZCim2MjQi6BhTJ2+yub2auReJGsm9VyC1nzpz7nTtcYJ/FepzRhRsvzlieP0eqmbYa3xderszUf9/9KbZyDGjy+rMRYSHhnB/gXgQCiwAZA5L2inkeVtsqFJQ2H7JWep/IgMB8QBpAdhHnRQAAnKuuHvVcNmGYGClFxa8w9afJ7ekf/0UAAK8fXF4nhrVyyf4cRv5U/3Dl7czSm/G9jXsaAMDgkLXuBWF5K91cJaNGBemrABDHTzrvuoYoiXi2snaKNAo/wY/UN5qbhTC6prWyGKNPAJAktc4wdwmk5ACgH9bmhO3egeAnotAf9VylueM3CWbx0eLE8o7YdBHElQpLAJAxZWHbZ7lhJy0n8AYGwslb1WMXe8XsECTT8bar4z4GeI3A0Gp8ezcYOlvbuUnkGeR+YyxfFU9XDi309wVXdKaHOGf3qlMH5/9KsDsKyRN5Pi2X/OOMicNKte1Mqdnl5+/H8prmGRAAppROHddFUIwsLtiXpuDZjuTfuwAAG+3GzWHOGq4X9AH87uylsY8AMYB17cO+6hdMeZ+n8sqJQQAAAABJRU5ErkJggg==">Quick Start - The Kubebuilder Book</A>                <DT><A href="https://www.365seal.com/y/elnWyEBKVr.html" add_date="1652262960">kubebuilder 入门实践</A>                <DT><A href="https://www.jianshu.com/p/de4dd9c9ad47" add_date="1652262829" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">kubebuilder(1)-安装和使用 - 简书</A>                <DT><A href="https://github.com/kubernetes-sigs/kubebuilder" add_date="1652263734" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">kubernetes-sigs/kubebuilder: Kubebuilder - SDK for building Kubernetes APIs using CRDs</A>                <DT><A href="https://github.com/labring/sealos" add_date="1652263514" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">labring/sealos: 以kubernetes为内核的云操作系统发行版，3min 一键高可用安装自定义kubernetes，500M，100年证书，版本不要太全，生产环境稳如老狗🔥 ⎈ 🐳</A>                <DT><A href="https://bbs.huaweicloud.com/blogs/312630" add_date="1652686203" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jV2SwWvcZRCGn5lv89tkm6ZNMdKakjUhRYoNiDFHMUQPgqCQUkuFWiyevEvBUxXUQ9WD+BfosaC34qFKpaBIqFj0IJF0EyEJSdbN7ia72ez+vu/10ESqAwMzvC/zzuEx/lfrDI7wxNANf/r4rJ8YmO+bm8P7+7/2vuIddVrvHr368dajfj8cBAWARPEiebpMFsoM9s+E4DPeP1i2rHiZmF4H0Oxs4T8HKoycXGX4/TWGxwxNqCenG1GezuX17alUrxJrW552mxNrF6bHNrLND7amy6fgIDUQ3wB7T+iYYYu0orS1Z340O621VYulbTATeW8l9HrXVOu801vcqwKfFQS+THwOnIBdMfQJ3bSUltuTGMMyMxsogvtSqu8Oa6P1ph60YCdOC7xwE+xZ7J7BRYfBBPOGLdDoTaY/dgLN3DgSILCg6v551eMgu3kE7gEWrtL3BVApUdg0eMqx04JFR5lyatS7SX/3cm10qzTyF9hPLeArwYNdSm/bTfz+CNnkCfpuH6GwnsHzhg0Z3DYUwE0oN3gJaAJ3hY0KvSi0GF5BWURzGT7l2JPCfglQAdaAW0K/G/4Y0AA1hL0MeibBvtCn4TW430N/gRULsFfAhkCbCb4pU/9uiM7SDqUU0TmgDFQj/JbQDXH8S38LOsBPVfJmhf20Skd1UrsNFYPcII/klS6p3SbRJKpBr1En/TjOcsd5+NuKkb7vkpo18lu7xA+naCwd0jZGYwnCRx3it23iTof0Q0Zz5VC3A5TtOmQ62B/R/sX9OvjnULwAgYdtNnHq8fMe+VVBZwyTJfsz9zQaUCvh4yRrBNiRpXI01j1p1LDxhC/gOlZwmMc1g6yWpH1Z3HbsrLARS5TNdTdJrwJDJlVw1gUnydMKpksutCzjjinVzKwvyC8p2QBQMmNdpAFBEPaz4XuWwgZQctdZA/0DZelix8BzL+IAAAAASUVORK5CYII=">K8s Operator 开发之 kubebuilder 实战-云社区-华为云</A>                <DT><A href="https://kubernetes.io/zh/docs/tasks/manage-kubernetes-objects/kustomization/" add_date="1652687369" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADbElEQVQ4jW2TS2xUdRjFz/f/35k7z86LAcaWBlDSEtBWSgUbUiIYTRtQ6yNRHkZDJBFNBMSNBq0kuNCYaAl1IbJwYcBqFETFKgmMEbAxausQpdQOpsVhOoxt58773v/9XNQ2LPytvvMl56zOAf6DmeXcDRBPDT2WL1tfF8rWCc79/ABugpkF/g/uhsbTg49nctap9/sNs7N7krsOTvNH5/KVXNH8jHO/dTFAN3vmBOevbM1Yi3d8esG85+SAhd+Thr0oKm1lM1JZJZsbgvTgXcBDba5vAtbIB+Rv7JsLYC7v6/tRf+vtvkmkMkUV8hFfy1ryyXt9KFcZfd8XEQtLNVVgWnqLV+59JIjNd1aeJ+k6TPxVh/732s8vdHYXmxb4y1bFJG0qr2j7Ri/aV7qgFPDtryUcO1fEwqBkm9k0TI/zi/3us7Ee530amncvSSTNJUa+RE31mmNDkwsNdU4MDJfpH0OhXGXMDwi891yYR9MWnfml5Lg4XMLQqFwe23Y4JuCrXZOcIB/B5rNDFXjdktc2OimeqPDEtM1jNxQPDFe5/XYXMTPil6oAK4ykOYzI6hYNet3KkbSmmYrNZbUObX5AYN2+63zkhQgFfQIOQbi7UUf7Sym8uSPM9VFJY1lLjaY1J3zLVojJqrfl8liJBUFEayR7dUGb1njg0QlfDhRxZrAEv5vQ0ermgIcoXCMgQPgzZXG25F2lJdPmusRowb6/xS3alutYFJUIeYmOx4u8p8tPlgLe+DjHty6UNC8guXO1GxE/yXjC4KvXAxtoMq8Gn+3N33EpaahyFWLXJj8KZYbLyVQxwQGPQCZnUcSvMQAcOmlAd5Jqvi2g9ex09Iug+cdTB7f7Uj6PLnQH2Uf786iLSrz4cACaBAnB1L01hKBP4MjpPJwOUkG/W3v1CT0RMuLPzBTJuPLoD+NLj+18d4Irpk2bW3W5YrFuG0VFAOB1Sb48XhEnLpaVx+XEoV3BwvrYTx0UaTuvMbMkok+4lDnw8pYFr+/uHTeLVaD3VI6uZW0bAGojglobdGWUwPu3BbX19X/toZq288wsaXZdRGSzVTja0+95+sPTacwLOiDlzDSVDdyYMrFlYxR7O3MHyBF6bdYzG0AEgHFVhx17x6jIVRazmnkzSJCtMaTfZX9HUn+FmYmIGAD+BaUao0aOmMfpAAAAAElFTkSuQmCC">使用 Kustomize 对 Kubernetes 对象进行声明式管理 | Kubernetes</A>                <DT><A href="https://github.com/king-jingxiang/pod-gpushare-metrics-exporter" add_date="1652768217" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">king-jingxiang/pod-gpushare-metrics-exporter: Forked form</A>                <DT><A href="https://github.com/kubernetes/sample-controller/blob/master/main.go" add_date="1653219471" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">sample-controller/main.go at master · kubernetes/sample-controller</A>                <DT><A href="https://blog.horus-k.com/2020/06/10/k8s/k8s-HPA-%E6%89%A9%E7%BC%A9%E5%AE%B9/" add_date="1653361685" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZ0lEQVQ4jW2TPWsbQRCGZ+Z27w4JSeY4FZKFBKoCgRSGFJZaoyZVSG8wqHDAqdPEDjJp8gviQti4MC5TpUlhcBGF4NpNChMJOwblQxCEON3tzqTwSciJBhZ2d94ddp95F+D/oNkkDMNcEAT5ZbllG5iuGQCgVqs9zefzvZWVlc/1ev1ZquFUg4uH7kW9Xn/sOM5rZn4iInciREDEj3Ec7w8Gg0+L+nmBSqWyqrV+iYjPoyhSWmtxHEcAAIwxaIxBz/MAALpRFL25vb3tz59QLpcfuK77hYheMDO1Wq1vhUJhYowhay2GYTjZ2Njoi4glorbv+xeVSuXRvIDjOFVEXDXGGK11fHR0lD04OJjEcTyJoggbjcav4+Njdl3XJkliiKiolCrPCxCREREGAEcpRcPhUK2vrxc7nc7v0WhkiciJokghIgKAIyLMzAkAgEpvQABAKTTMZDLTw8PDr1tbW4Xz8/M/w+EQtdYyyy+yoxSSzGgzM2azWXt2dpZrt9tet9uNm83maDweIxHJ3SUAlFL4rw9YRAQRJY5jKhaLcHp6mjs5OUl2dnYeTiYTHwAkHWyt5UUGGhEJAKyIgOd5xlprgyBwdnd3g16v97NUKpkkSRgALCISM6s5A2PMd0T8obUuTqdTu7m5yZeXl6Hv+yIime3tbV5bWxtbaz2tNTHzjbV2cM9IpVKp5vv+KwBoT6dTUEqJUkoAAKy1mCQJ+r5vRORdkiRvr6+vb5ZauVqtNl3X3ROR1qKVieiDtbZzdXV1sdTKC+1hAID0A+2nwPb6/f77hc7NYC6NeWeCIMiHYZhblpvFX2+DHaWamhKYAAAAAElFTkSuQmCC">k8s-HPA-扩缩容 | Q&#39;s blog</A>                <DT><A href="https://cloudnative.to/kubebuilder/reference/generating-crd.html" add_date="1659064202" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB20lEQVQ4jaWTPWhUQRSFz8y8/933Ntn8QPAHSUyziAiCKKbQKqZQq5cioBYLNiKEpEkTGEijYClIMCJo51MklZVoKTZCim2MjQi6BhTJ2+yub2auReJGsm9VyC1nzpz7nTtcYJ/FepzRhRsvzlieP0eqmbYa3xderszUf9/9KbZyDGjy+rMRYSHhnB/gXgQCiwAZA5L2inkeVtsqFJQ2H7JWep/IgMB8QBpAdhHnRQAAnKuuHvVcNmGYGClFxa8w9afJ7ekf/0UAAK8fXF4nhrVyyf4cRv5U/3Dl7czSm/G9jXsaAMDgkLXuBWF5K91cJaNGBemrABDHTzrvuoYoiXi2snaKNAo/wY/UN5qbhTC6prWyGKNPAJAktc4wdwmk5ACgH9bmhO3egeAnotAf9VylueM3CWbx0eLE8o7YdBHElQpLAJAxZWHbZ7lhJy0n8AYGwslb1WMXe8XsECTT8bar4z4GeI3A0Gp8ezcYOlvbuUnkGeR+YyxfFU9XDi309wVXdKaHOGf3qlMH5/9KsDsKyRN5Pi2X/OOMicNKte1Mqdnl5+/H8prmGRAAppROHddFUIwsLtiXpuDZjuTfuwAAG+3GzWHOGq4X9AH87uylsY8AMYB17cO+6hdMeZ+n8sqJQQAAAABJRU5ErkJggg==">生成 CRDs - The Kubebuilder Book</A>                <DT><A href="https://mozillazg.com/2020/07/k8s-kubernetes-client-go-list-get-create-update-patch-delete-crd-resource-without-generate-client-code-update-or-create-via-yaml.html#hidcreate" add_date="1659084296" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC8UlEQVQ4jSXOXU8jVQCA4ffMnJk5LW2hzJaF5ctAVhOjN97shT/CG/1xJnptNF6aCEa9WTWmQcWs4ILYMpRQaGtpC+18nDnneLG/4HnE9Prs5Z/jyVaxeKBeQqWE9tHvfP3DIedJn2kuiFbWcYTM0hnkGaAIlCKdjntSKX8rVuFb3XtHkvTpnr7i+PXfdJJbxndjMq1JH6f4URU/UDhRwQqHLhYI3zqJUlSqPr2bM3786SXT2Zirmz53ozFZlqO1xisNIssAh6fqqJU1nLNYo/HuJo+cdLu4NGN/f5d0NiOdTpFhhFdR+JHCAXgBXlhFOIMt5oiywOGQ7eNjfv6lzdsb2zyvLdHWGudLgnqIZwyBLxHCxzoLfoAQjigM0Ma9Gc1vLkinQxb5nFF/QP6wwDiHkBJVq2DLAmsNOIfVBbY0LGYTtLHoskBuKqhVK0SNJoPLPlmWI7ICKyEKAvIwoJgvwBMYbUEIEI5QhFBaZBY1MEgeC8fF4JZSQOSDzXOyNEUYiwCcdQgcrtTgwJYlSA9PLa3yZDlmPBxxNxwihEcYKLbXYkIckefwfUG9GuFZA9aCAGRAWG0i1+t1tuNV/utcUy7SN4IneGd/l73NDSzwuntF5kVUajNG/T4aH184hEmRO3HMYrvkMXV04hb/XFywsrVDa3OX580qG2sxLvIRMuD83w6ffvENl70BejLEmgJZqAbxZoWtR0Hr6QbLjSU+/uQjdrY3ebLcoPU0RluNnj+wETf5/MsDPOmBFZAVSLW+h1g17IkaH4zHVF3Kixcfsrr+DOFJjM4RRUZvMOCzrw65urrBGkNYaxBEVeQkg6oKabZavPfu+6wEBSd/nNB8NkVVI179dcrR0W8cHH7PRZKgLTjj8DwIAx95OpmzWwsopjNG9w9Edcmw9Dg7v6aTXPPdtwdcd06Z3Y9wCKxz4AtyY0lNgbyBXjZ6cPOkQ797ya93t7STBNQy/bMOveQMk+UYGUE2w2kQKsIiQNje/+iKlMGBy+NbAAAAAElFTkSuQmCC">在不生成 crd client 代码的情况下通过 client-go 增删改查 k8s crd 资源 - mozillazg&#39;s Blog</A>                <DT><A href="https://jimmysong.io/blog/istio-servicemesh-api-gateway/" add_date="1660717765" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACEUlEQVQ4jVVSTUuUURR+nvvxzutIYqLVKDQlhFmbKAsJ+lxUVIRR7ttHizYWRLSvRST9hmzTriBaJFLSxkjDog/oY6GOMemQ4+g78957Wtxx1LM4nPPcczjnnudhdnBEREiKCIBGECykG0ET0IaHSD1AyITkRtA00OC1Vl7Ee1GkUgRCHUXEeak3AAgDnfeV5VQZFWf0ajV1VQ+ETQiFOLZsTFCKzknGqoFj+a9zS5Pf/3Z3tvR1t1mrBDCKhdLK2Kc/1Fz/Q8379kz09PaJeyNTxYXK+P1z27fGi0uJAJHVYx8Lo1MFbbSpH0dAUES8l+K/ZPD47h1tTadvvRx9P4uspWI20jajxdOQ9F6EQgpJElbzZ6EM4Mal3iN7O6JIzxQrLyZmiuUkY7UREaVglXJrp25tjh69+fXg2fT5Q137862R5q5cy8S34qk7r2peDIiVxFWSBEkqsRXAO4GToeF3QyAMUa4+vnvy+sXePZ0tH34smupq2t/TfqV/ZzlJzxzIKfL15GxnbsvNgX2p916ggMtH80uV6nxp1RhlXOrz25ovHO5Kaq60XLv28O349HxfT8fZg7nAj1L4/Ls0/PzL3MJKNmsZX33inPepFxHvBGRTs/Wp1GouMIawpEI2tl7EEDBa0WhASBJwXpRmbAxAQIICCTovJM0GqVGk/o51YxBkA18jjoBANhcGMrkZ/w8tQBFV96Oi9AAAAABJRU5ErkJggg==">如何理解 Istio Ingress， 它与 API Gateway 有什么区别？ · Jimmy Song</A>                <DT><A href="https://segmentfault.com/a/1190000020359577" add_date="1660189585" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">kubebuilder2.0学习笔记——进阶使用 - SegmentFault 思否</A>                <DT><A href="https://renhongcai.gitbook.io/kubernetes/di-shi-liu-zhang-api-she-ji-yue-ding/1.2-api_convention_condition" add_date="1659062606" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAzklEQVQ4je2QPW7CQBCF36yXCteGC6CIBpAs5QQpkFykyC0oUkRCouA4NFT0SJaIlDJFcopAS1rPmxRrOfhHVJS8YvVmdz/Nm4HVRVJVSf4cT4u3Vf7+8bpcU7UoCpIkHeoyMxFR5XCQDJPkfP6N4/7n13cURSQBNAERASACM3t5zvb54TGdbba78BuAR5eccwDGD6Ns/pROJ973VNV7D0DMrJ2qMoEMPpRNIJQi5T1J51w4y8ztDtXol+Z/yM5IVYf2Srofrqi51jtwE+APpgx+BZpr4vIAAAAASUVORK5CYII=">16.2 condition设计约定 - 《Kubernetes设计与实现》</A>                <DT><A href="https://www.cnblogs.com/netonline/p/8144181.html" add_date="1664244519" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">CentOS7.3部署镜像仓库Harbor - Netonline - 博客园</A>                <DT><A href="http://www.ttlsa.com/linux/alpha-beta-rc/" add_date="1657616202" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACpklEQVQ4jT2STWhUVxxHf//77vuYeWMQa7Q2iQkxCSOW1NQqXVQXRQVRCAqpglgopKXQTQsWqbhQVBCKC7UUpZRUaRtKCaISEHEh+LURdSiIH6CmaaupTpKx8/HuvHfvrwvFsz5nd2RmsIekiEAUXQZrAYFSohQgNA0oJUFI50QEgH5pE2CjKvmCaplHAqbORg3Oeb39TGru70cSRHRWRLRACNAkwfpt0ZZPVWsbqxXOPneVMgjd/76deFDdvZWNukR5OuvtWjqf9Rfhpo8LX37rpv9tXjrjdRV1Z59q6/bau5UfqHiOe/6EtQor06J9xaSuiyvyn+9Lzv5U/36P19Hj/nyQ3roseIW5+Dsb1XjnEYnn0Gberu7Y63vHlaeSHw8gTZnUzNjx5pVxmMQ9nTTjp8zpH+zd2+HgJ4DKSlelvKHdH1iT27FTCi3m/GgyelTiAhxZKUsuJp1a1KWXf+AvW6Xe7Pjvm61a/DD32V7d2UsgP7wHSpnfvpPWt8LNw+mVcfvXQ7303XDdEJpGtbapKFYAzLkRN/MM1tI5/70P6fmifa+riDCPZgI/1L39emC1m37KtKkhYsZOcPZZ/PUxBCHgRImdmqwf/oppqjp6wg3bJcoDSG9epqkrAWTuG+m1C2npqgCSbyns/9lb8jZJf8WawsFf9bKVALL7peb5XySIFEkB6DJzdoQi2b1b6R/XvQVtrFaij77QnX1wNi1dq+0f5mxZ/ECJCJ2TKE5vXDJnRqKNO7zFfQhzujiQ3blBEqKSsRP2n8cS5emcBiAAQARh4+QhmnqwdihYvYkvppPRI3binlrY7qYmJYpf/iczgz0AXi3oHFIjLfPU3PnwA/tkwusqwjl7vwTfFxKvg9cNRJhlsBlICQI2mwAlzIGECID/AadFVhM+S/O+AAAAAElFTkSuQmCC">alpha、beta、rc各版本区别 – 运维生存时间</A>                <DT><A href="https://github.com/RadeonOpenCompute/k8s-device-plugin" add_date="1544778425" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">RadeonOpenCompute/k8s-device-plugin: Kubernetes (k8s) device plugin to enable registration of AMD GPU to a container cluster</A>                <DT><A href="https://github.com/AliyunContainerService/gpushare-scheduler-extender/blob/master/docs/install.md?spm=a2c6h.12873639.0.0.45c8464dkZq5P5&file=install.md" add_date="1631860336" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">gpushare-scheduler-extender/install.md at master · AliyunContainerService/gpushare-scheduler-extender</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1672911196" last_modified="1672912858">prometheus</H3>            <DL><p>                <DT><A href="https://blog.csdn.net/akfeu48868/article/details/102247008" add_date="1596799099" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">K8S从入门到放弃系列-(16)Kubernetes集群Prometheus-operator监控部署_akfeu48868的专栏-CSDN博客_add clusterip of prometheus-adapter in no_proxy</A>                <DT><A href="https://github.com/DirectXMan12/k8s-prometheus-adapter/issues/227" add_date="1596799110" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrklEQVQ4jW2SQWhcVRiFv//eO28yoanjkAQdEjImw3OUGBAUVMRuda8LBUFwIV0prrpSV66KuIhapIq4diEUirhQaZW4cSFTbDtMxtZOHhJiBjM2M5m59/4u8p6W0gMX7lmc89/znyscQwAFWE0ffRZjXwdOGWEZQJU/gEsaw2e9zm8/3qmRnLC0RCWZW/9AVF4TkZljoUYAETE5H6voF5Phlbf7fUYAFhDq9dn5EytfOVd6WcAVpsYYERG5gztr3RNi5x8flN3XDIfeAqzWVz4sJckrYeovK/59EVlUpapRtxX9E5hFpB1CeI+opSQpv3CyVK4O9nYvykqz9bQrlX6w1tkwnX60ff3Km8BMPU1PZJ25v+EXradpNTs8vE2/P1pL18/aJHkrhGkIU3/KOetOi5gkhkgUJI81zjqdcfH0rNPZy69WRbzGYEWMtca9YTDyDKiq6mgy8ZtAAEy+5QKSn3D0z2hTYzxAVTE8Z1CWUUGJuzu9azdyQSxqzaEF39npZir0890uGUBUFUEqCwsLyV2T74bQaCQoVVUVQAxwS0QRkcVKdf6pfJK7RwQL6HIy+6SIPKCqCtwywOVjH4Yl5z5vpGkL8PeIEFZbrbRs7Kea/xFUfzLB+3Ooig9xE9hyrnK12dq48NDD6xuFerXVeqz5yMaXhtIWIi1Roqp6H+QTc6N79WeN8bxz9kwcT94JUc8q3H/kGRQGk4mMQV5FpKbKyFjrYuT8zW5767ieZjNZc5VvEHmQGE7r1Oz1eu32fwEajZm18txNMbJojMV7f7E3/OslsmxkAKXbPdq+Nnoe1UvGuu8k4ddas3my0NecSxDmRcT7GM5Nbg9eJMsOAbX/b3nfD/Z2L9xXXfweEwdZDN+yvx8ARvs1agvOBM+7v19vf3xwcOCLlv4F8u80An4QL/0AAAAASUVORK5CYII=">add ClusterIP of prometheus-adapter in no_proxy</A>                <DT><A href="http://www.unknowname.cn/post/k8s/prometheos-adpater/" add_date="1653205826" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABr0lEQVQ4jY2TP2tUQRTFz70zb/cFg1gHZLUISEjhF5DMClpk1TYaLKxS2FgFMY3PKuAncKtASFhJG3ngv7wNVrGwcEEkjZW1IArJzsy9Nnmwedln9nQzc++PM2fuAOcoA/i8mlopQACw4VxaOJeOq6mlK0AE6IcHi7euXb70mWYu3B3naCwgA5gA3VvqrExZuxskzhPpdwB4Duh/ARnAGSB7S3dWE8vdhE0ziLxd2M4HAEATAOTj/c7TtGleRiB6EVHRVwBQOGer9aMbBED3lzsrhs36MEqEgoKIWktXdwDT7vdDFUCji8K5lGamv15sNmZ/H3sPqAWAxDAFxacYwurN1/lB7RXa/f5RBB7+Ofb7iaGk3PeifjqxN5jNVvHo9HOaqqXNweHP1uBwszU/+4uIboMIBCCKskpcc1vvD0adnwmxcM5mgED0h2UmUkjDsA0qawu9vHtSprWAMqhIeJwwMzPskffP3Pabda1kdibEcvreLS9enyLzhZmGwxCetHt5tzyrAk45eHECtDAtY/jb36G/1+7l3XIyq8212pmba2y4K2npauLGqib5yv8ATNKe4/0QYUUAAAAASUVORK5CYII=">Prometheus-adapter与kube-prometheus安装联动 - UnknowName</A>                <DT><A href="https://jimmysong.io/kubernetes-handbook/practice/using-prometheus-to-monitor-kuberentes-cluster.html" add_date="1660718593" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABXUlEQVQ4jbWSzyvDcRjHX5/n+2NMSS1arayZ5GCljeTH4qC5+kdcODjKUm4Orq6uXB2cpKSJpqUUpR2UZH19LYfNvp+Pw0YmF8pze3686v1+96hk1vCbkl9d/wWwv/VBgFKIoDX6i1ilsKQdMIauMJNpyvfc3DEQZyiB67SuHyucXaJ1OxDpIb/C7j62xfY6Pd34VYzBsigUuSi1AwAKURiYHqM/xuomR6eIADQaNIKfPDTrycMYcln6IgCez8k5fhWlvgEGwBIOj4nHmBhlfgbXZTBO8YqlNTwfu6leawJNOIzrUqvjv7C1QyiECLZFfpncLLEoFQ9ba1LDzE0iikwKoHRNLMriAo6Ngc4Q6REqHs8vKIVtDNFesuMYQ/WVjW0KlwwlmMrQEWpq5LbM3gH3D4igklljWTh2K4r6GyKI4DioD2uf81ZKQUAQtHbNqdbUam1xyMcP/f/zvQN8e3d5nRndcgAAAABJRU5ErkJggg==">使用 Prometheus 监控 Kubernetes 集群 · Kubernetes 中文指南——云原生应用架构实战手册</A>            </DT></DT></DT></DT></p></DL><p>            <DT><A href="https://developer.aliyun.com/article/593097" add_date="1606890742" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABX0lEQVQ4ja3TvU5VURCG4WfW3ptwEjDGWOglGI0WdFZEr+FcgdGAFnSGkk5iR4XReAVcg4TKzkKjsbOVwlAI5BD2z1gAxwYswKnny5p35l1ctZK4SnYazpfm/TQ4MrhmpLIfb7WQzzR6836bmFXcVuK1fahzyT2VDYcWzJlx3Ujrs9Yj7IHevMa2Wx7oTBw6zhc+6a1ELvtq1l3HGHwXPkjvYtOXM7wgc9l94an0WHHHDI58i3wu1Tqtdb+sxZb+n9xjlZvWNFZ16iIMOhMH1mNLn4vqC8OL6tjSO7CuMxGGWgpp0CgQO7pcsqHxUH+yRJVG62O8sQIaRRoQ578WdoUfhlOcWiXsntdaC4miNUzH3PTqQoQdndZgVhGySEVtZM5qjlWxoztbVlKSkmPVFG+sMmdVbSSV/3DGM5FYMJhR/xUp3p+IlE/c0NjWnIpUHHMq0pTvkipf+TNdNjutP6KopyEB/Kx7AAAAAElFTkSuQmCC">100个容器周边项目，点亮你的容器集群技能树-阿里云开发者社区</A>            <DT><H3 add_date="1606291204" last_modified="1672911263">etcd</H3>            <DL><p>                <DT><A href="https://www.mayanpeng.cn/archives/74.html" add_date="1606291178" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACAElEQVQ4jc1SS0hUYRT+zjn/nRnvkNMYij1o08KBK4ZIUpIRKEURtSjdtGrVpkVCixaSYwuXQu0CIYKoRUXQIkjFmY1GC0uIngghbXRjUzOTd+7jPy0GjR4IbqIPDpzzcZ58B/gPoVS3PG8webACpHnwZpUAQFsdR7/52n76TocRvQqL5aWqO7o6PVhevdY1lEnRwbJv72Wvv3y8nvtHA29gImtiM+s46RwTsFwNby0dGpu07D5iJpQD679H2Nc9vDCnABGg/PNuqKnSiOFULgorNRtU4iTjwo3PvSMcVxAGfpAQm3q9Kz1+ZflYen2q1LcY1Y7zd/tkpzuuQQANrAGDBCof/ZbWTGLNpmKiSXVt6YCzd0fZxN0TiwUoiACga2oqg+8oSJPbGa1Ua/bJikEpEjVqY8tQFW5yv6Dr+HTc1r5GNpI1DWt9l3oLLxgAyHF6pGVbpw2DkHc3JLl7+1NEtkTsICmqFHHUum9xoS33TaKaRClX0hDnLIC6rhrKG+v7n0xjowPfVtDfPAyLMRGHyUkLS/iw5/CHk9Ym59MZkwhrcQim2V9U6JiZaUuKcyoK47lX/UefA0r7z9weBFPWmOD+/IOLX28WTuwxDfZcEMTvLh+ZfrbVh/rrk8mGp0rwPIHnEYpFrZN5BpoZeFuPFTTgQQY9ULEI3WyDf4cfs3rPawqWVN0AAAAASUVORK5CYII=">如何删除etcd上的旧数据 - 初心</A>                <DT><A href="https://www.jiqizhixin.com/articles/2020-07-21-17" add_date="1606295423" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB8ElEQVQ4jaVRv29SURg99/J+cN/lCY8HfUESU0yKNiZtYh1YdDDpoIHBgRh1dNRRF3dWhuof4GiinVxMTDqZGkOwJlIWASsmPmkdGukD2sK9DgVDXh518IzfPT/u+T4gAMViMRQ0DwKZ9SClJIQQWSgUbuz+/HFdgD6vVCrbY42c8BS/sPSk5Hzdbd7P5XIbAD4wTUutrFx5pDPjXZABndJSAPjWaV0b9PqlPdflE6LB+Wa5XH495onpwOmuEgCpbm1tZ7MXLkVjMe3m6mpHUMkkaD2fz38ah8hZBn93kkmna4TS4U67nf3d3W8TEtqo1+sjvzjIAADol1Zrb2l5WXfmkm90TQ+9fLW+HpQOBCxxUsUwFEEJ/a4omhvAOfUHAADH1JTOvvfU6/Wqtm2HXdf1gng0aAgAI9V8nEqlRMq2Y9aZyNosvn9AAMBxnPOqqt1NJjk7Oz//y+CR24vZ7AOcnJD80yARj98zGJsbDjVeq9WEaZrUilvPMpnMVX91v4EAwFRVuRNm7HhwcGA3m01P1/UXlhV7S4WI4GTJo4lg+goUgLi4sHArwvki5xxHh/10o9GomIytEal6pmX0L0eXcrqqeu+r1c9+AwEAg253E4nEw/7hICzl0UcAIJSeG2F0HBK0B0KiEtiZrvxf+AO1V6EuUR7o6QAAAABJRU5ErkJggg==">万级K8s集群背后etcd稳定性及性能优化实践 | 机器之心</A>                <DT><A href="https://www.cnxct.com/etcd-lease-keepalive-debug-note/" add_date="1606295854" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC5ElEQVQ4jQXBzW/bVAAAcNvv+T1/N0nj1PnqkqxKStaOFibWMZAmJiTgxg1xmcQFOCCOCPG/IC4cuAESGkho05BAg2wT0rpNSmiTNo3TrHZsJ46//czvR3/73fftK7uljarnueeTE2s+pxkaAqjkcqpWkyUZAmZN5jkWJoRkGQVNY2YZGwjjNI5ty5rqY5qmwiAoqhrPi7IocQgmcWquAoqmAcNA31vOprq3cv0QHY/8OISQnlpzM46SSq1eKKokI65jnx71l46jlsqQZpipftIfpIbBqAVuOOwfvHVL0/wg8Feua1vzwrqKeKG82WwgjqII43t+EpPx6Mg2n1arawhlzoWRRFx9cyuOE9s03OWCkDSOo+XS5gUJvLa/ly+s33z7FgRyHBFJFC6c7MLyJ/oCIUxRAZ1lVEbSNN0oV/XxEKZpkl9Xy/VLjx72oshFHK+bnu1lMs8Zjt1ta0W1jLGQJtHZaGDPDVitNYpqiWRJqaRM9QUG5KBbWK5izAnPJ/Evj8a9I6uphNf324iF9VYHFopqRlGu45SrdcecsYAWECjmFQaAShkNzeTZ2PpvniRPBl98dgdhDL76+pvh8SAMwzQlyposcjCfk0VRwDyXz+eudC7vv9J4+uJF//CJwAvNRhN8+MH7oqy88+57pZLW6/1NKIpQVEmrcLyAMI8w5nmu226FrESFXqe9DZWC2vvz/uHj+7l8xbVeLgihASspBX0yudRo4VV0cjpqbnVuX+v+8+x4bNpw8PzwTD+bLxdoMhcFyfcWkqz89eDXIEijlZUkfqu9ByGr1RofbW3//NOPoLJRNA0jyzKaASzCkpJnAHvtzduffP6lVms5i0gQhcWsLyqKxOFXd7ZBt7MVh1FC0jRLCcm0cnXn6us7u1f/uPcbgIgThO2dPRZx/z5+yDAxr2jg+o0DiBDECHO8JCkf3/mUSuMHv98djYaBH71x46Zxfjo7n21e3nVs+97dH/4HX0tpg6ew8HYAAAAASUVORK5CYII=">etcd clientv3的lease keepalive租约频繁续期bug 排查小记 – CFC4N的博客</A>                <DT><A href="https://www.jianshu.com/p/2c1f56814ea5" add_date="1606295862" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">etcd的使用 - 简书</A>                <DT><A href="https://zhuanlan.zhihu.com/p/96527283" add_date="1606295869" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcklEQVQ4jT3TTahVdRQF8N8+59yr5numZlmgQVQUUaOkkUKDoonRQIIgCMLyQYOa5CxMigZBDjIsIiyKjIqmFk0alDxq0CTpSUEiWYZUfqX3Xt85578bnFeDDXuyF2utvVbYn2PFS8aeFtbXI/oKFWqhQb0ylTQSav8Ib/vZC42pV8x5XidV9DNcI2MkhMxOBJCIaGVJ8+btdbsS9uZljTUqqVbvukd+cZLJFGNpLMT/jGikBqtQudzora1CKRPVw9vkwYfY+TFlAxrxyyW2rmf1eJDQhzhzlb+uSo35RqcgdPLRu0RTc/Qxevx6niMn2L+ds1OudOLODeL14/LFYzTrqKITZcrNm8WOW9j1AUtnefUbHjzEyXP8ORXbj7DjXb48JTeOhVZET5UdCssz7jvAsUVKEWcuMPmDi5PBwOmM9gpXe5kpdWQnGzkATGbs3sEN93PbJrmwTdy7SV7AtGWULKesioiCjuhFE5XMZbFlHXdfT92wcQ2/XVDmGtEWSiF6tEKuPLRFJ6tMjFg6ze435MKHXJzx/nfiucPy6BJrR3TLw0FfBsY6sheVHFBHYzTsfYDzE3loF089IrqW1Q2lZUSsbVYYdERHI2SEaK9w041i306eeE+c+pvPFsSTH8lrV/H9s6Ivcut6XlscjM2WJggtW67j02f4/DiffEu28uBXnPidO17m8OPywNf8cIZZhTFdq4rYkxezmNu8gVs3icWfpEpEkP2wq1doVysRbhRjhFmVvbesVp09JxZ/lOoh+2nwRAymRUU16E9FpVbrvNm4ZJ9KrbGnasyV8l/vkEMjFZFl0KwWKudNvOO0ff8CDNsVBiQlEB0AAAAASUVORK5CYII=">https://github.com/etcd-io/etcd.git</A>                <DT><A href="https://blog.51cto.com/dangzhiqiang/2286890" add_date="1606296795" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">etcd官方推荐的硬件配置-敏而好学-51CTO博客</A>                <DT><A href="https://www.jianshu.com/p/05486908814d" add_date="1606296807" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">记一次ETCD OOM问题排查 - 简书</A>                <DT><A href="https://juejin.cn/post/6844904031186321416" add_date="1606297185" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABU0lEQVQ4jcXSvUsVYBQG8N+5XpeuSBFNQTnkZERI0RIRiDi0KQnh1mB7mBDB9QWTkKB/oIaIBkNwdDAaBEGCaoqamvpAGhpL4upp8CJXvVfafKbD+zzn6zkvR43oyExlTc0z/PDJtMXYaierdCzQYwDDGDXg7P/PNJndu3HJPvfzZFuuLeo5rOQ3Ja8f4EqOKrmh5GDr894VKt7gBVaUvAtuZpeZnMeCbfNKfGhNCQ/ytKpJ4ZESm7vdeI5l6RTO2zZuNlab/HFM+eNxRbcTwgTWzOSZHUEsabiCi0JNw2BL8gW8k0ZU9VaU+IhL2MB79RwCD+Oz3y7jmrn43vTolrQurfrlqrn42rJNhpJFyb/qeW+fgVUlnyi5qZ539npw8BI3hJfCa9zGMemV0G/LmNl4e3iBnY7nsCR1oVf4gnElfu6XHv6VezxtejOtRKOj9kjxD4w4cYS3SWCbAAAAAElFTkSuQmCC">一文入门ETCD</A>                <DT><A href="https://www.bookstack.cn/read/huweihuang-kubernetes-notes/etcd-etcd-auth-and-security.md" add_date="1606718784" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABhElEQVQ4jX2SQWsUQRCF36uumdnMDkkIXgKCxIMgKurvyP/NRdCbN4MklxwkeJQlIOsmYdnpruehWz2t3YcuqAf1vldNRQiAhBCIvcesNr2pzWj71YAkSSAdIRjn1d325huT1yEkAAgkIAjA+P61DYMkawr3Mh7kgyEv+jx0c9/N3s2edmbZfbfebD59rl4cpCQ/OV4cTXnOJAGpPSChiNR124uP5de9H03+1yWNTEYQUPPFIBgkANVIBFcEzXY/VvfXN+i8ygkKqGNgqfxc98vRDyeVYJQiUuuNre5AgwQIqqitEMAXz5EMkgsgkA+nq4eHQG1LgCqjEBLJNyWPqQfpkkh++HqtUo6nSRHVPoEaoFq6Tyqqm9n68bGUOH/7ajdnM6rhtYUo1A+DuUcESQdZ8VJKKVqebbsgIbDS/wkz52xmF5dXgk6mZUSNpyI0DALvzp4tFwMAllJIbuf5y+13ot1KYLUSjHz59HQcBgCMCElmxP/+KgBUBob0L8L9pw0lfwOo89kfpezsZgAAAABJRU5ErkJggg==">Etcd - Etcd访问控制 - 《胡伟煌 Kubernetes 学习笔记》 - 书栈网 · BookStack</A>                <DT><A href="http://zjykzk.github.io/posts/cs/db/bolt/" add_date="1640788913" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABxElEQVQ4jZVSr8vqUBh+70WYDIugrGjwBzgMBkEEw8CwIpgE43BlBlk1CQaLRW2CZUH/AGWYZxrMtZmcyBTEYpgYzkA3OF+Y6PcJ917u085z3ud9znne9xfGGP4Hv/9Z4XnebDY7HA7+MfC6ME1T1/VarQYA+/1e07ThcNhsNhFCuq7vdrter/fDIZVKqaq6Xq9Jkmy1WpVKpVQqRSIRAAiHw91u91mHf+J0Otm2zXGcKIq6rvvtvxe8Bdvtluf5TCYzn88ty/KZfr/fbreLxeJLFvA8b7lcSpJ0u900Tbvf7wCwWCwkSYrFYqqqyrJM0zRBEM+UHo/H5XIZj8cMw1AUZZomACSTyVAo5DjO8XjcbDbRaDSXyz0FJEkKgoAQIgiiXC6PRqPVapXNZs/nc6PRIElyMBgIgvCOGWPsum6n08EYcxznuq5t2xhjnud7vR7LsgghPwzDMJ6ftizLZ+v1+isD27an02k8Hq9WqyzLMgzDsqyiKAEASCQSAOA4zvV6BYDJZKIoCkVRhUKBpmlZln9M/tXSMAzfwXXdl8l3Tx/vSafT6Xw+DwCBwHtfgsHg527hPwMhJIriB/k3gf/OD+YLYBGSTuLuLIIAAAAASUVORK5CYII=">bolt源码分析</A>                <DT><A href="https://www.oschina.net/news/146497" add_date="1624343104" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEklEQVQ4jW2TS2xUZRiGn+8/58ycOcx0ppOpM7RQm9JqWwmKlxpvwagpMbpi4YYYYmLSBbpyyYZEFy6NujAajCs0aQhuKnFTJwZBKRrrJUCp2NqWmUrKXJjpzJzL/7sYQYK8q2/xPcmbvO8r3K6jKI6iARgrDDGe241yUmz5G5z6/QzQxiAIAAb49+xKAMPU6OPZvYXpVNbd7yad7ZalJAiiYKse/LR+uXaMz+Y/4Q7oFmy/Nnlk+NHc24VdaZFIowMNghERUXGLRj1g6fvybPXT0wepUAOwAAUY+9Ajb+2eGnw33++ZTiMIw06EiIqMQQcdLboT6UTCCnMjmfGq17PH/2H1OCAWYHhiaGz4hXtPFAaTNKs+ylIqlnQsPzJWZLBczxYTGvx2KJ6r2tnhzESlJ9kKzq99ZwNsm+x/PT+acdo3gkBZYqmYUn/+vLlcXql/rCNtBkZ6Dw/tye6IiU2jGXm1a822ickEoGxAZfoSTzm2mFZkcFO2XFm4vrr6wW/PUiqtAKzc33+yc3CsGI/bG6Wl6uf+ufWTLKwvAthAwoqpnSbUYtvoQCPVa60ZSqUV3hyJ8+uOiGLxUnkutpficgXo3J6CupkngDYiIoKySQPwzFLIN8UIgOLy33fCNx20wna0LLbq11EoMYzO9acO1CZ3fsQrq+cB2Df8WP65oS8Ec6H8R/1L5pZPsba5fqsH3htPvvPQ1OARCcIg0liOq1Tpcq1RLbe+MoKVzSdeGhjvdTXQrPrUN9u1q4uV2eb7Zw9ZAIGyrtgFbzo3kHT8dmhMZCST9+K54Z4H+oZSEz29ru03Qx12oiiVjnXcrJvcuFg54c+vFbtFWqtW6oVMJbV928vp3jihr6PQ12JCHelA68DXiELHPccESPyXr/+abXx4dvq/IoGYhdL8ZioZOknn+XTBs2wlIhaibFFOTCnbc9SNim9dOn11pv7emVcB/+5jenFsX9/D+cPJ3vj+RNLpAaGzFba2Gp1vSxfrxzj+48zdxtRVd6rdWJ++70HucUdRSri+tcLc4rn//QD/AGg1V5lOKkFuAAAAAElFTkSuQmCC">一篇文章带你搞懂 etcd 3.5 的核心特性 - OSCHINA - 中文开源技术交流社区</A>                <DT><A href="https://mp.weixin.qq.com/s/C2WKrfcJ1sVQuSxlpi6uNQ" add_date="1625625684" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVklEQVQ4jYWTsYsdZRTFf+fO7LxdVwW38L1dEfwjorGwEVMJgpq1sLaJnSipRJjONIqNxMo2ECMGAoENkZAuMdvaCIIWyb6nawxrkue8mbnH4s0um8pTfXzfueccvsuBQ9QEx3GDcrwzXh/vjNe5QfnE2zGuADBCGGDrytbbTr9J5xPg5wfaH5TaVejqvbfuXT4+I2qCmhxfGJ8sntJXhF4lgB6WkoNNASSQvtU/9kez92e3qQkBvPDd+A2P4gfEM+5NjALPjdMJoFBoTWSTqBCYf9TkO3ffm/2orQsbL7qqfqJkAnTq2DW+DvEh4Q0AUvchzwudcskJoKRjqsXilaCqzsZqTGhpVKpEcW7v9OwzxLWoQlGFENeWd3FOpUpamliNCVV1VpvfT36l4CV6Uisq3PoO8nU5zjj8HIBSf1v5DdYprehlt9lTKOj5TVuXNueWR0drqSSNhB8Zpz38gbQu3Bgv7CMuagL5/rBVC8kL9z7I1mkLSUhO2wfZeuFeSIAJsP0gLN1UJdlOYwNhUQrJ2GYpZFECYWzbqUqSuBlk+yUN/6pQGOfgoCGiDoWAw3OvUqKlSdovYm97fzfTH0cVIS2TYPLQfRgGk9htRJSxGkWmP5me/utOUBPT7en5fNydUaEWESoV0tJdaIkVhZ7WCgV/dg/7D6bvTr8GIqgxoHm52KFghDhw+hdMY5shxdydf845n/cP8uRse/btUKgsqRE1ucbaa174UrvoPt1/dv/3STPZdHqiUCo129vYu8vrdEdtrMknGspVRvwfLlLgocED/gM4lT/uKMXTbQAAAABJRU5ErkJggg==">深入浅出etcd系列part 1 – 解析etcd的架构和代码框架</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1672913126">go</H3>            <DL><p>                <DT><A href="https://www.cnblogs.com/tianyajuanke/p/5196436.html" add_date="1511926305" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">golang笔记——命令 - 轻典 - 博客园</A>                <DT><A href="https://studygolang.com/articles/154" add_date="1511926320" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACdUlEQVQ4jS3SzYtVdRzH8ff39/ude+7DjDozxXivjCYhWi2cAQnsQWsYg3ARgbRpIxS2i1a2qFXUKmgV4SJ3s5CeMIgoSBwJhohykMRJayodfJxR79xm7j33nnN+nxb2+hte9uI3/WtdlziiCM7MQEQRATDwhsBQVjLRULja9YkDyZttFGQlJmoJFcOMKNZyyqiKZyjY8oaFikOA2VrO1JimW5aVfLvMnZ5iJBiv7LRdm+z8Xc7eUNVbEDhTZ8Abezg+aWXEO2ZaHPmB0ZQTz9rkQwCvYe/8rFNLct7oDOzwBMcn7eOLevI0R+eYu0kWeW+fPbqJV8+w/7Qu3tPRXZZ6XB4ZCnp3ymav8MECUfplhQ9/45lxXpjgzXn9eFvXu5y8rK11RlLceq6DTWqBE4sarlh7QD8i6chOW1hh7gbNmtW83c+sEMERimjPNblwj6UOM9s42LR+5Ku/2L2F75YlkFkR41iV9dxt5AoVz45hLqzSKzmwVa8/ZojzKzaSsti2xCHIoz0xwmqm9gBX8wwlXO8xVrVPFu2teZY6tAcaDrQHBAdS6vX0OL+uMihxpTAx0VBW6HZPD1d1v89KRj3YWKpuoVtdTbfYvYWv/1Et4HoFVzq8/Ig9NU6zxuHtdqfH1XXaAx3bY8060y37aL99+TeX2jQSC4nX7J/MbLPPDzmkKGb/UL/k09/19pT76SUw5m/p/QXqiQls6ouiW2jvKM+3LCs5d1OX1yz16kcOtWzvKJfW+H5ZgsQbwh7/rEgd3YJeiRlVT80/6Mm/OXkkOIYCziGpiBZ21PNr3aSR0Ej+7xn1ILk2pxgmVEaAItr2evEfhM0ww++ScEcAAAAASUVORK5CYII=">使用go build 进行条件编译 - Go语言中文网 - Golang中文社区</A>                <DT><A href="https://www.cnblogs.com/golove/p/5909791.html" add_date="1516332494" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">Golang学习 - errors 包 - GoLove - 博客园</A>                <DT><A href="http://blog.studygolang.com/2013/02/%E6%A0%87%E5%87%86%E5%BA%93-%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0%E8%A7%A3%E6%9E%90flag/" add_date="1516333133">标准库—命令行参数解析flag | Go语言中文网博客</A>                <DT><A href="http://gorm.book.jasperxu.com/crud.html#q" add_date="1519716091" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">1.4. CRUD:读写数据 · GORM 中文文档</A>                <DT><A href="https://golang.org/pkg/" add_date="1524811658" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABf0lEQVQ4je2STyjDYRjHP+9vr8naSTajbFb+pWwXzVrKwRE72cHNSSkHRWk5S5RydlpuaitNlAsptBzkTylN/kwtQ1KUrPm9Dr+azeYgV8/t/T7f9/N8n7cX/ljiuxCcmFYAt8kLKvkA4B0TDc1NAMQXZkQJwB8cVPbmVrIuL2abE4C2gK8I3Hh9yLuus3eaJHtzxn3ynEQ8KqQ/OKjsQ5NkH1K0u53M9XYgpcbE5gHSY0ByJweM9ncBcPuqc0YF9s4B/KA0gPTOKmabk2GPC1llwVFXz3p4JD992OMCwFFTzXp4BLPNSWYrBoCWiEeFTF98RVa58q/18aW3BXyIzBWJeFRohZ7lVysIyd3jE32zS8R63MR63ERObsBk6AMre0VcWXgwWaxMpRQAtc+XRMZCxt7pfaZSPhQCabGio8oDlGY0TEoQyBzSPT4LwO5imCNAy2FcLchdBMivKxRroXk2to8Rby/kQvMIveTL/AzIg1q8xem0Uk8Z6Xf1D4BPy+l6GhWC1hEAAAAASUVORK5CYII=">Packages - The Go Programming Language</A>                <DT><A href="https://leokongwq.github.io/2016/10/15/golang-chan.html" add_date="1525661358">golang之chan简介 | 戒修-沉迷技术的小沙弥</A>                <DT><A href="https://studygolang.com/articles/3311" add_date="1525662322" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACdUlEQVQ4jS3SzYtVdRzH8ff39/ude+7DjDozxXivjCYhWi2cAQnsQWsYg3ARgbRpIxS2i1a2qFXUKmgV4SJ3s5CeMIgoSBwJhohykMRJayodfJxR79xm7j33nnN+nxb2+hte9uI3/WtdlziiCM7MQEQRATDwhsBQVjLRULja9YkDyZttFGQlJmoJFcOMKNZyyqiKZyjY8oaFikOA2VrO1JimW5aVfLvMnZ5iJBiv7LRdm+z8Xc7eUNVbEDhTZ8Abezg+aWXEO2ZaHPmB0ZQTz9rkQwCvYe/8rFNLct7oDOzwBMcn7eOLevI0R+eYu0kWeW+fPbqJV8+w/7Qu3tPRXZZ6XB4ZCnp3ymav8MECUfplhQ9/45lxXpjgzXn9eFvXu5y8rK11RlLceq6DTWqBE4sarlh7QD8i6chOW1hh7gbNmtW83c+sEMERimjPNblwj6UOM9s42LR+5Ku/2L2F75YlkFkR41iV9dxt5AoVz45hLqzSKzmwVa8/ZojzKzaSsti2xCHIoz0xwmqm9gBX8wwlXO8xVrVPFu2teZY6tAcaDrQHBAdS6vX0OL+uMihxpTAx0VBW6HZPD1d1v89KRj3YWKpuoVtdTbfYvYWv/1Et4HoFVzq8/Ig9NU6zxuHtdqfH1XXaAx3bY8060y37aL99+TeX2jQSC4nX7J/MbLPPDzmkKGb/UL/k09/19pT76SUw5m/p/QXqiQls6ouiW2jvKM+3LCs5d1OX1yz16kcOtWzvKJfW+H5ZgsQbwh7/rEgd3YJeiRlVT80/6Mm/OXkkOIYCziGpiBZ21PNr3aSR0Ej+7xn1ILk2pxgmVEaAItr2evEfhM0ww++ScEcAAAAASUVORK5CYII=">golang 线程与通道 - Go语言中文网 - Golang中文社区</A>                <DT><A href="https://studygolang.com/articles/2027" add_date="1525662948" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACdUlEQVQ4jS3SzYtVdRzH8ff39/ude+7DjDozxXivjCYhWi2cAQnsQWsYg3ARgbRpIxS2i1a2qFXUKmgV4SJ3s5CeMIgoSBwJhohykMRJayodfJxR79xm7j33nnN+nxb2+hte9uI3/WtdlziiCM7MQEQRATDwhsBQVjLRULja9YkDyZttFGQlJmoJFcOMKNZyyqiKZyjY8oaFikOA2VrO1JimW5aVfLvMnZ5iJBiv7LRdm+z8Xc7eUNVbEDhTZ8Abezg+aWXEO2ZaHPmB0ZQTz9rkQwCvYe/8rFNLct7oDOzwBMcn7eOLevI0R+eYu0kWeW+fPbqJV8+w/7Qu3tPRXZZ6XB4ZCnp3ymav8MECUfplhQ9/45lxXpjgzXn9eFvXu5y8rK11RlLceq6DTWqBE4sarlh7QD8i6chOW1hh7gbNmtW83c+sEMERimjPNblwj6UOM9s42LR+5Ku/2L2F75YlkFkR41iV9dxt5AoVz45hLqzSKzmwVa8/ZojzKzaSsti2xCHIoz0xwmqm9gBX8wwlXO8xVrVPFu2teZY6tAcaDrQHBAdS6vX0OL+uMihxpTAx0VBW6HZPD1d1v89KRj3YWKpuoVtdTbfYvYWv/1Et4HoFVzq8/Ig9NU6zxuHtdqfH1XXaAx3bY8060y37aL99+TeX2jQSC4nX7J/MbLPPDzmkKGb/UL/k09/19pT76SUw5m/p/QXqiQls6ouiW2jvKM+3LCs5d1OX1yz16kcOtWzvKJfW+H5ZgsQbwh7/rEgd3YJeiRlVT80/6Mm/OXkkOIYCziGpiBZ21PNr3aSR0Ej+7xn1ILk2pxgmVEaAItr2evEfhM0ww++ScEcAAAAASUVORK5CYII=">golang中并发sync和channel - Go语言中文网 - Golang中文社区</A>                <DT><A href="https://blog.csdn.net/len_yue_mo_fu/article/details/78111995" add_date="1525682761" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">go语言学习-iota和&lt;&lt;左移&gt;&gt;右移的用法 - CSDN博客</A>                <DT><A href="https://beego.me/docs/mvc/" add_date="1571110656" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADl0lEQVQ4jV2TfUzUBRjHv8/v97vz7ji4OxXkPIJThBVJCNZKMEYGIZBzNi4pt3SujXJu5daaTVzXZrmpba0kmKFkUitwbblMhi9A0Mu8kBXFS5CE0Hm83gvn3e9efr+nP7RGPX8/n8++z/Z8Cf+bYrup1u/za6d9iHuABgDIAPINepQuTzbqIxF8+dN08Nd/9mkpzMxERFxTVVW4wvZAkz6zfCLMpjuewWvrFt1DlzuunD0MQF7K/CtwOBxiW1ub4nQe35+xqeZE/1Tysllv5K6YBAhqFKG/+ntmL71ZUzZc5nGSkwHwPQETQPzs887i6tqXuruG9JiYXFCMRg0ABjNDEDQgTaI49m1Tu+urVyuWJiA4mepn6CGX7sSnvOaV+xdmbqnELMlyjMEMEIigsN83p6jReanU+Ead9sPRo05AlRwOCG1OUqQDmieiqpgz0NsdswgDklYIw2LRE0OCEguxd0EmSVpJYU5lg8V+4BBGjznBd0/YU2LX9S5uv5C7IWlL7bZxJOkKhRXWLCSae8hoDiA4lw85ZOX56Xb03wqpx0+ZIonkfv3GD+fqBQCYjSfqQ5E7eZV5LrFo/XpqOj9K/qgNOl0Z4rIZn7R60dk3g41Fh1BV4GP76mlDUEl4FAAEh6NV/Lrnl8Ww3/DkarN3PBSzUelTZao11UqKOgeTRUW6zcwpq1YhiuWIxJaJ2WnBDyTDln3MndJ//mCwq+Jshj39haj6XCwixKWRgYs0OngTW5/eCkPSBl5wd8KYfJNaTl+0v/b27QkAkI4ceWtXVm5OmWcm4Dr1ft3wsY/XKbFQq2DUxlgbTyfIGWAaYxZ/VDMfThN7Ohb6r/Rtzms+/8zBuCwrdPrzlt69O3cVxVjBd73XffHpxoTS6rUawAwgBIYOhCgAA+anhvlqd7bvkZKdljW2VPwZkSEm6TR9trX28nRrmsWecZ/u5OGT4rXGcxwJeSnsDcDnduOPG2PobrmEhrpOFG5/WZ9fUICgHI60tpxpIADIzVy5cc/u/d+bdFPaSoeoui7fFlztAxyY9ROzCq1Ox9bsFKrcvZnnA2FlqD9LGpkYbX63vnkvgUHlJlgGA2h4MFOsOHh0h/Hx6jwIZCAgDkAFIAEAJn/38BfvdfBHjQPDJOCd4Th/RvdqSCVdEF+8/tjVyZ/nisdH3Io9J01MSTNB0ggI+mRMjc2qXs8iNm0rEEKGhB37wt9ccPxG9Dcqyp5BeYDxeQAAAABJRU5ErkJggg==">beego 的 MVC 架构 - beego: 简约 &amp; 强大并存的 Go 应用框架</A>                <DT><A href="http://gorm.book.jasperxu.com/" add_date="1579401784" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">1.1. 快速开始 · GORM 中文文档</A>                <DT><A href="https://segmentfault.com/a/1190000013016957" add_date="1561446079" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">golang 依赖管理 - 个人文章 - SegmentFault 思否</A>                <DT><A href="https://draveness.me/golang/docs/part3-runtime/ch06-concurrency/golang-goroutine/" add_date="1642054371" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAp0lEQVQ4jbXSTQrCMBCG4Sf+LaRQj+GNXHoKD+QBvI8n0K1CVRT8WbSBoJEKtS+EJJPJ5JvJ0JGQ2T8z9sgz8fkP6UsFBj8qeKBKA5TYYoZ7S4AhDpjjOGoOzlhhoj2/gFtzpztRaoE1pur82mpwwRLV6ItjjnsSIK67E6WOsZAvYsAVG3XxIo/UqcRenVuFUzOqxrZTf/FXBeQb6aNxeickc3iz9cML58AqGQDhQE0AAAAASUVORK5CYII=">Go 语言调度器与 Goroutine 实现原理 | Go 语言设计与实现</A>                <DT><A href="https://juejin.im/post/5a62bf326fb9a01cbd58af0d" add_date="1583544331" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABU0lEQVQ4jcXSvUsVYBQG8N+5XpeuSBFNQTnkZERI0RIRiDi0KQnh1mB7mBDB9QWTkKB/oIaIBkNwdDAaBEGCaoqamvpAGhpL4upp8CJXvVfafKbD+zzn6zkvR43oyExlTc0z/PDJtMXYaierdCzQYwDDGDXg7P/PNJndu3HJPvfzZFuuLeo5rOQ3Ja8f4EqOKrmh5GDr894VKt7gBVaUvAtuZpeZnMeCbfNKfGhNCQ/ytKpJ4ZESm7vdeI5l6RTO2zZuNlab/HFM+eNxRbcTwgTWzOSZHUEsabiCi0JNw2BL8gW8k0ZU9VaU+IhL2MB79RwCD+Oz3y7jmrn43vTolrQurfrlqrn42rJNhpJFyb/qeW+fgVUlnyi5qZ539npw8BI3hJfCa9zGMemV0G/LmNl4e3iBnY7nsCR1oVf4gnElfu6XHv6VezxtejOtRKOj9kjxD4w4cYS3SWCbAAAAAElFTkSuQmCC">golang goquery selector(选择器) 示例大全 - 掘金</A>                <DT><A href="https://72k.us/file/19384239-368789942" add_date="1587536780">GoLand 2019.1.1_www.imacapp.cn.dmg - 免费高速下载</A>                <DT><A href="https://go.dev/" add_date="1638437835" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAClklEQVQ4jZXPzWtcdRTG8e/53d+dvDYzQ9S2UdM6FCmBuKgLKaQQQVsrYnARii3UuBC76MLuguAfIHRbEBUUJKiUtgsJFhSUiOhGUIlKKFGLaZymmfQtnZn03nseF0lDlSp4dofD8+E5BjA6MdH55fvvrYFp74EDu4p2dvB2lm3zLDeAECOlUrwS0u7z334+/QvA3vHxrm9On27Z4/ufeSlJOt5Qnv+etZpz1v/A4S07dlWqAw/TVS6DoHnzOlcv/cHqxQurNJamYm/fTgv2qLu/aSMvvqza2BFu1S/hrVWeen6M/u0P+nxOuCYQsNXgkZRifmEx+Wr6E3rKVUJa4uL0x8S0u+fnzvu3D5WH9mSv7K6mwykAYbmd6d2VSPSCY9sCvTEkt8sDDAy+yte/NrJsYT5VCHPh8qdnD85OvbWwo9PicHS5O5OTk3rhicfsodayjVQS603MvpiZ0dDOQa6dP+f39fXEnz449dvS3I9PBxYX62uNK5KZYQEzA8OUpOQYHgzM8MLNgmEhKCTR8tYtn5+d/ZNarVYeOXR05bULbf++KZcKSdLSUl2j44f13JEJ3bx+VZLUarc1tSIdn2v5vkNHV2q1Wjmmaepyucnto2X4rsPo9jWqZ95hf1wmEpj58G0aYyeoq4N6jkoqrCjcb6Q3PNJoICCYUYB+aMqK3CgNjvL6k8/SzjJOLkLeDKShoJQmZBKG0d+AWFQqZmYmCQPrMkEppdgzwmfNy+QR0uGtdLqQHBxDQuZWVCoW2RgzA6DACBIhFzPFFjCjr3DEejYxQEIIgE1gE4KNE1R7uhFQuIMZpnVItv7CPYG72+Tuf9vvxO6E/xX4J3T3CDbqr/cM/wXcEwVMhjZa/G9AgIWw+cRf1sUxP5fQHnIAAAAASUVORK5CYII="></A>                <DT><A href="https://wallenotes.github.io/2020/04/05/%E7%BC%96%E7%A8%8B/%E8%B0%83%E8%AF%95/how-to-use-go-pprof/" add_date="1646983655" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC6ElEQVQ4jW2STWhcZRSGn/e7352JY24ynaQVioa0aWtEFISiNiRp/UVorS0VsQq6cqeLLv3DZcWNggspgogUFVzUlRCLuBAK/jWg1XTSKDFNbAhNmklmpnMn937HxSSI4IHD2b3n/RPA0SeOvBMKvacODDTca6OzLpgDAIHMsEYDsgw5GViQdxE5X/DSzMloYmJypNGsvR9UKFb8io0PrskCEEAAwVDaRnkAQwSTzJSZ3/feiVe+9oNDu9840f/iLT/+/KtdvzgtDPCCrgjbYlDwWC6ck1kAraeWWuw/iZ457+/c03vy2JHjf6VW6B3d5QO5iW0x7C5hwRAQrqdYapgknHALEayZ1W7t644uXLjyfBz7o1GhOyptzGt8oCZLPGwvIoGcsHoTshxhEMlc04w6mr9y++++sr3/0L337Y9zf5nm1PfggEYOi2nHSDPUADIhCbXAWqY429C7Z04P++G921545ODDT1qclB8d9gGHqOew3uyABcPdbGN5BhIEhAsEOWgnUfTLb0unh4b2jZeSPketqvHBdRkCJ+QEAmu3UQgIkMNAKHJioDTrMBP/M/afK2xzYZOFh/ByPCCAh8YO3aDQU37srii8OjrrQuikKWedPjTqsCUBzAwUSbonwU9N3/hoYW4mmbxUtVb1c209ESATcmHTC20BSGSklOytpVNVv7q28sPlqUvPXVtYLFT4V00w8HHOxfkePviuD8tTAo6uyHhzZJG+MnxWe3zYH9g/9OlTh4+93aZYHB2MwqZgBFgQO5OUw3tbZO2MgChGZuWunDwU1Kvazag6Uzv34MjY3d09O2j8/ZMO7uqkIEEIoidps7Kc8dV0keWmbKkh7t+ZUopDu2mFZzUxMTny7Tfnzi8u10t7uv4Ir4/PdUw0kAxkLC+1uLYKzonYhTBUyZyXtZj7czg6e/bM1UqSlBtp9sAd5Q2NDazKrMNAneLQrZTbkjY7kpz+UiYXO4zoyw97nv74H3EnVaCganltAAAAAElFTkSuQmCC">如何使用 pprof 调试 golang 应用 | walle&#39;s Notes</A>                <DT><A href="https://casbin.org/docs/zh-CN/how-it-works" add_date="1647223556" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIElEQVQ4jX3TS2icVRQH8P85937fN8/OI6MhmZi0pQ9jmgZ1aktEpFgQlVA3jUUI7pqFDzBQCQoyG0XEoohdiEvbhQRcZFN8IPW1CLaWCFpJJzZE0iYl7Uw605n57nz3HhemQUE828P/x58Dh/A/89H8nYds2ww7iQI/FlsPm+Hc1GhhZXNNAIT+K3j64sYuB3fKiRwhcAJEEDgngnXF/LHvrrwzWSo17ypAucwol92HF2891jDqVECmVwfJYtioihVymoCOCHlasRdPwbTbl42xS3sKNM6bgECErOusMAyz0sUH4zfDY9uB7cmIjQgf6rL0XL9zfbhl2I8NeooWdz5wT8h3ax/7bcZ79UD3H42wdXaoL+1W5s7Re2+9ieEspDsdQ6a+jNemXsGAXdPbtDMqFjtdIurozbzMDI0bAMijANNWvHNgkNBh+bOlcHWtRnu7c+7woweJgiTC0DJFLrt1g72zEzsSQeZ+Yzs66WUnd6tHni7Fe1wuv42vnfsGF2Y/w9j0++jbsw+V1SrdtqrtEQ9Pjd5b0QAgnn9cdqTeVo1QWmTo+/XP5auaY17z8Mbg83i99C59207L8lINcc3QJM7YyACABgDLrgMn0oxC0zKh2pXo54FEgX5c/ZWuB/3yndeLiNtIQUREAO17hrrSAMAA4AtzyxmMdR2gI/kRdbLvWZAFRWKFrSGKjLCzEAE5YRdnp4aWZka2AE1+jZzQ9bBKLxafwpm18/RF7ZJkVBLMgTgRArMQBEIkCkISNjNbQFitz/l3xF5oVHji8gfyU72CrI4jFeUpo3NwZIUEBBBYLDfEk4X9L/z8NyCgheNn5qOW+TKVyygPysSV79phHfvUIac5gJAIADiBY2aGi+re6i9XtxoAgKk2X46qzUWdTcRaZNSgPI6hzCiH0iRyRAAIREql86KD2Ccnnxy5ARH61zM9/OmJnkavHD24nr3vifzESzdSPaFmShIzW2sjLbZVqFU2vOUfSuOT0xsA/gEICAQBABk7Ubj0TGL37PD0YncyKIaRSjodVHMLX9/c//vZ4m13bf5w+XwEAH8BQm50pxhpXGYAAAAASUVORK5CYII=">casbin用法</A>                <DT><A href="https://segmentfault.com/a/1190000022814356" add_date="1647590290" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">Go语言HTTP请求流式写入body - SegmentFault 思否</A>                <DT><A href="https://v1.gorm.io/zh_CN/docs/models.html" add_date="1648034598">模型定义 | GORM - The fantastic ORM library for Golang, aims to be developer friendly.</A>                <DT><A href="https://www.cxybb.com/article/weixin_43851310/100709797" add_date="1650584193" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACL0lEQVQ4jVWSu09TYRyGn++c71zaCgKVCi0KDZiAgDCBURzwkqCLcTdxYjMuJjD4fzgYEl2MidHEhVETE/GGAxoakWgj3ioKVGhpz+k55/scqATf5be8T37P8IrUtA4iIoXWCEGkMAS2xBAoTajY9mlwEQJDYAikUqQaSMaJ2ZR9muN4AV+KlD1iNu2NnO/jwQJegB9Si5B+yPgRbkzwaIGJfubyHO/i1hxlj2vj5NcY7mCkCwF3XjG7iCENtjyCiPVtNqtsbFOssFkl3cjndf5UebKMH+HYvPuOY2EEClfS2UKmiaVVRrOUalRqJBze/6TsM5ShN8XXdYoVTAMjjEjvJ1KkG/ECDjfjSraq+CEnu2mO0dlC3GYww8VjlDykJVnZIFdg5jmn+7BNlCLhMNbN3dc8nOfmZVY2APJrWCbSlczmmDjKQIaDDcyvUKzS28bTj9x7w+QYPSluv+TxB+I2cRvROqUNgWsRRAQR2SSnetCaSg3H4u03cgUihTQBtMZAoKHsozRrZS4Ncf0M2SQDaabOcqGf3yVci91INAhMA8C1WFpl8QdNcbRmscDSKq6N0vUdCIEUoo4qjWXSc4CYRTKBIYhZDLYTt1CK3ZrcORoMCCNGsszMcaiF1n08+8TkCZRmR1vsBQQoTdzhRZ5zvQx1UA0YzpArII26z38fgFCRTDDQTqi5ep/lX1wZpb+NhEPJR/4DRGpa7ygJjQLbrE/AkWx5JGwsE7FH6S+ZLNvSPZXi4wAAAABJRU5ErkJggg==">go-sqlite3 “database is locked”问题解决方案_Grayan的博客-程序员宝宝 - 程序员宝宝</A>                <DT><A href="https://blog.51cto.com/u_15127683/4048816" add_date="1650583921" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">浅析SQLite的锁机制和WAL技术_mob604757044d68的技术博客_51CTO博客</A>                <DT><A href="http://docs.pmx.cn:2080/docs/golang/golang-1d85t93lgjbt4" add_date="1651719919">protobuf基本用法详解 - Powered by MinDoc</A>                <DT><A href="https://swsmile.info/post/golang-pprof-memory-profiling/" add_date="1656561362" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jW2TzWuUVxTGn3Pv+8688z2JziQziZko0whBo/hFcCy6EkpL6UJKxY3oHxCRLkoXGqHgwo0ogh+IoqKtoEKpi0JbQomIrVKojcQmLZWgJpM4YTCZybwf9+kiCcSYA8/i3nOecw+H3wXeDSEhS86xBQEAluUAANZSMwCKJJsP749/sWWz2Z1pdtsDsWTomfXX2cvuRZGpx4t1yxsBADasb++5dq7tt4nhJDltk2/VvMpR/nCzZaq3t/XzlXwyr9W5q+dyf7AWIisgJ+BzHAHH4XMCAeua925k32Sbsj1LfAAJBQAH9+eOTv+TpD+l3cpIxJhxIcswZgo0ZRiW4fuTDk98lb8JwFrchwLAbFO2p6vTP5juqOHb20nd93VaxAqRcykJXm0k6xmQgHbmuKc0u7erK19cnEKJgBs+SHxZXGtvhOdzyyZPDh1okOKKN7objZ/6xB36SCAi8IDO9mBVZlVQEoHDfogGgMq0M/bZJ4193d31SCblSmexLuIBVAbi1GC3/UmJlUUIRKMwhY7ojmg40frpmZkfLQCo1mJPDedeAmgKPBjxIQKIlR2B1TqCwIUwAEQBtuWqvXtm8w8exusAqOaXMeq+HNf/wQ+J1iAEIhqszdh4W41QRwAVBRq+bRDW8utDa/rSFVwHAC0CNTAApuPJ9M5t+DiRbqjAhRENNVN3ePd+TsI2MTYWDv7+N82EE1IXrlhnfx6cuEVC9MDAPFVDz+2RNXln547tpqDDnogHRiKexKJ+MDQco0JIFwpGXbutvj95OjhC1jyR94hsWXeqv/3O8KPmWfd1hHwTIqshVl/E+eSXTOXY0bbzQDq9nMJ3/gKAwqbuluMfluCs7TBWYxa1358yOjho7kxWK9+REFlgcEWsO/KJXcl46hsAyYW7lK0T55MRu5f9UMseXTHCxSLCJBQJVSohsSaX2rZ1K+yViv8Hb3MzxaIZ4ScAAAAASUVORK5CYII=">【Golang】性能调优 - Golang 程序内存使用分析 - 西维蜀黍的博客 | 西维蜀黍 Blog</A>                <DT><A href="https://gythialy.github.io/golang-auto-build-version/" add_date="1657380919" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZ0lEQVQ4jW2TPWsbQRCGZ+Z27w4JSeY4FZKFBKoCgRSGFJZaoyZVSG8wqHDAqdPEDjJp8gviQti4MC5TpUlhcBGF4NpNChMJOwblQxCEON3tzqTwSciJBhZ2d94ddp95F+D/oNkkDMNcEAT5ZbllG5iuGQCgVqs9zefzvZWVlc/1ev1ZquFUg4uH7kW9Xn/sOM5rZn4iInciREDEj3Ec7w8Gg0+L+nmBSqWyqrV+iYjPoyhSWmtxHEcAAIwxaIxBz/MAALpRFL25vb3tz59QLpcfuK77hYheMDO1Wq1vhUJhYowhay2GYTjZ2Njoi4glorbv+xeVSuXRvIDjOFVEXDXGGK11fHR0lD04OJjEcTyJoggbjcav4+Njdl3XJkliiKiolCrPCxCREREGAEcpRcPhUK2vrxc7nc7v0WhkiciJokghIgKAIyLMzAkAgEpvQABAKTTMZDLTw8PDr1tbW4Xz8/M/w+EQtdYyyy+yoxSSzGgzM2azWXt2dpZrt9tet9uNm83maDweIxHJ3SUAlFL4rw9YRAQRJY5jKhaLcHp6mjs5OUl2dnYeTiYTHwAkHWyt5UUGGhEJAKyIgOd5xlprgyBwdnd3g16v97NUKpkkSRgALCISM6s5A2PMd0T8obUuTqdTu7m5yZeXl6Hv+yIime3tbV5bWxtbaz2tNTHzjbV2cM9IpVKp5vv+KwBoT6dTUEqJUkoAAKy1mCQJ+r5vRORdkiRvr6+vb5ZauVqtNl3X3ROR1qKVieiDtbZzdXV1sdTKC+1hAID0A+2nwPb6/f77hc7NYC6NeWeCIMiHYZhblpvFX2+DHaWamhKYAAAAAElFTkSuQmCC">Golang 编译时自动更新版本号 | 机械境</A>                <DT><A href="http://c.biancheng.net/view/123.html" add_date="1660901888" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACgUlEQVQ4jV2TzYtcVRDFf3XvfR89Pd1oZoYkaBKURCcaJaCLQCALEdGF/0EQNAiBQATJQnQliIuAC3HjOpu4NhDE5A8IiCFDskt0jF8ziuPHTE9/vPfuPS5et0xbq3urOFXUOads7fkjT/i8/DTJXjUUmIWZMR9Cmj6scaavYjV+J1hWfr7o3Ss7TUpzQOcgJTRLe9/mJRnyi969vp2Vhd194emEkRAOMHNOSpE42DXXKbGiBAmNRrLgwQdD0gwTwGjBMnNOsarM8oKlN87RP/MS+aHDECPj7+7bxicf02xuyLLMpgMJIDDMMMW6Mt/vc/jyZ/ROnQagGezgfKB88ihbV69Q/fSj+TwXyJAUMDMEyTDVNQcvfUDv1GkmD9f55fJHjNZuY97TeeYE1a8/47IMJJvxZXdfXBVAmowpjq1y7IsvAfjhwjn+uXmd8OgSpESqJri8wEIACaZchxnjaVLROf4sLssYr3/PcO02YWkFm9Z9nreqSHMKu6nooIRf6CKJNBoiCbTXBXs//L+BMO9p/tzCzCgOHSFbXiENB60fANUVirGdvqdZW00JK0uGd76l/vsvfK/HgXffI+xbJg2HpGpCWNmP7/dRjP/tD9AaCcycVzPYtqWzb/H4+x8CUG1uMLx3B9fpsvDcSR5efJvBN7fw3a7QTEYMDEnJQndRW1evWNrdZfnsm5RPrfLIy68BMHpwn/qP33FZmIKnBpqzsrUbxt0B1utbfvAxfHeBZmeH5rdNUdfg/byVBTf6s2OSkJm5Xh/Fhsn6A0gC57AQzLynlQf1vPPbTfraqR6fH8R0TVicXRspyczhihLX6eCKAnNOUzDC4iCma6rH5/8F5tA3xipPqRgAAAAASUVORK5CYII=">go get命令——一键获取代码、编译并安装</A>                <DT><A href="http://yangkai.org.cn/2019/11/06/Go-%E7%BB%93%E6%9E%84%E4%BD%93%E5%92%8C%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/" add_date="1658564229" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACB0lEQVQ4jaWSwUtUURTGf+c+raFcCcNgiMuEZy3m3TdRQWlZ2b9Qq4rxL2gTQVBRtNJlEbhwYYVGm1zmYkxo5TggJC5tiERejj2YsYaRe1o4MzxFi+hb3XvO933n3HMP/CdkfyAIgtuq2q2qO4m8ikiHiGwuLS1NHmQggIZh+FpE0o1G47OIHDXG4JzDGIOq/vI875Sqfl9cXLzR0rRNcrncjLV26m8tW2unwjB8u6cBa+20tfZVgtXJEB2AB3gM0YG1nUmTXC433brMhmH4opkzPPSPHFr+pe0ETLPj50EQzBograpxm3TuzAgLo7vuiqAIICyMvuHk6eEWzTkXAxkTx/GgiJwNw3AccHzjA8o2hfxsU64U8u/BbbO2VgCctXZMRM5XKpWLApDJZI739vbOAfPFYvEeAPP5SdDU7sOkyoWJPEA2m31mjLlcLpeHoyiqGkA2NjZqcRyPAFettY8BGJy4BVLF8aMtttlHxpjrW1tb16IoqgKyZw8GBga6U6lUwcFMqVh8kpxfEAT3ReRmrVYbXF1d3WxpvARHoij6mU6n33nGjPf09BxbX1//1Gz7rjHmTr1ev7SyshKxf4kSMIDr7+8/0dXV9XFH9ak45zzPe9BoNIaWl5e/tjjtqgf8tmlOuk9V50REnHNXSqXSl/3iP8EA+L7f5/t+XzL2L5BDznvwG9SlxJC9In0ZAAAAAElFTkSuQmCC">Go 结构体和单元测试 · yhkl&#39;s blog</A>                <DT><A href="https://www.learnfk.com/question/go/72126727.html" add_date="1658039213" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUklEQVQ4jY2STUhUcRTFz/n/35tx1CYVJjJqMSEFSdkuIqKMCLIWQYx9QNSygrEck6KIBkPNaJNuWrUNZqSVhdLkYJbQKqgcqDaBfRAFhjnazLx3b4tsY2N2l5d7zv2dywWWqFgqZgGgY7T3cSLbd+13L2UXz5ly4qQmTbo17V8Yux4FsIYqVQDQGMlxWYNYKmaTTErbSNdR8dxBJV4paAFg8usm/bfBwubEo97DK1fV3SN1BoI8oM7/EBBMSmK4q8kE7F0FVERfElSAfwnLEpwZulSLgDsIICyeD5LTIKAqyxgoCEBDofDliupQg3gyb6yhIfIqaokl9XCQhAEhndnurbDO2eJcsQBAqeqpqoVhEIAA5Y9okQXi2+JB2nCqsqZ6PVQcG3DcQGWFKcwWPilYR/Db2oO1maoI3UOndiNyIMJcOrdAQKiO1EdBhOemfzzxBZ9p8FN8jSjlHckmqE6mW9M+kPYXExAA4g/7gwMtbYVyGdszPSeNtSFVKSq4GoqQdfi+VPKGbu+98sVpH+5tYCA/0TnWl/M8zRD6hoADMkqDXSK6GdAwSQPRGSiKxth6Q94HcIQA0D7afdxx3WNSkkZVBEmsUOissZwQT556vv+gf9/Vd3+o9vfHgw0NwEDLQIHnMz3bnaArt3Z2Pi8XITHeswFFxmi5B76uAxmiNW9FdLTgf7/jGOKEoTndkb3xUVVzAOZVGTBEvapGUaKr0Cn6eKHEa4jmCakB0OyYykECwLlM9xZLu4PARoVESFar6JRvOR6EeXaz+eKHpR7pF/7jAb+t65keAAAAAElFTkSuQmCC">递归数据 struct 解组在 Go Lang Protobuf 中给出错误“无法解析无效的线格式数据” - 无涯教程网</A>                <DT><A href="https://www.cnblogs.com/linyihai/p/10859945.html" add_date="1657872059" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">go build -tags 的使用 - yihailin - 博客园</A>                <DT><A href="https://cloud.tencent.com/developer/news/223140" add_date="1664514464" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWST0iTcRzGP7+977t/zilJBUJCxLophFBQHcWD0SFjRcFoTREzRcpTReihIiSkQ6c0QlKLFUhEHbp0aoamQmSHpkUXS6ZsYW5ur3u/HTbZ/EN/nt/p++V5Hh5+3we2g1+0f9r9FUFxEhTnnyhq4ygKlNApJ4HLCIcB0Ihgcpd76ulmA9sWcYf04uYZgheLmwg3yOKllDAdcrvALUbLewMRxUU5wRUROrN3tmS9JH1cF6FdziKiqBUjb1bkdkHe0CaTBWMxaFknAu3SRofUF6fOiSMzB3B6r/KdRty2OdzJXg75BjYkGJYmHPjJsBfFBzLc4pyaVkzMHkF3vmbNNNHMESytmvJdR0nEw9gTrdTUxHki/XhoJs4EFh/RaUTHwKReMRadwu6oIP7zIHXVCwC8+9KFx3WN5ZXjzO5rooLzLNFFQPUB0C+78TDOGkvwaVEYi3YDEI066JHcZZ5PVTIio7wQ4aG0AtAjNnryvRiUbkZFdNIpE0uqAPD50gA8kFKWuY+bY8QIEFJDOQNlAav5X6kijamzmhykrLyZyNxb9iw85mu1h28M46SOBEFCaoiwuPiBBYADDQen8RDiFwOKyMwOjJJHeL0NLCaSzFfacTt0VoA0KcCVuxigEBSKEiDJK1IECh2YnmtgvqyGWEUJmpXBsmlo2JH8KyCLwThn1Mv1xaZa/g/WiwQQDmvs9Ofmz5MKarfX7EeIIZxSWYDfa9nVNFgL8gwAAAAASUVORK5CYII=">如何基于Golang设计一套微服务架构 - 腾讯云开发者社区-腾讯云</A>                <DT><A href="https://www.infoq.cn/article/mee5qutrtjvgwzpp57y6" add_date="1664514483" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABqklEQVQ4jZVSPYtTURScufcmL8ny4iYBFTWIIBFR/4Ei2Fr5GyxEsbOQLS0VS0Vsrf2otlkLYdktBMEvdBUULWT9wOyucfPcvLx3xuKRZBdtcrt7zpk5Z5ihJEzzwrQAShIEkKOSJILg5AuAoz7NrNhRVASY4MfTmNAVHAGAcwBgBkDOwdHlZt4xyxW8Gx9jMogO5IMXvYeves4xF5JUVx99+97LktSCd182v15+cu3847m33Q8OTrBA6fVq+jPJlz9udX9nB1thfqXfboaF9/1zx3Y/z+4cbXQOxHvnlm7eO3Vjpl5zIKOSW0+y/sBa9fCpOzx7pDb/Jrl4cvb+y62VHxuHG/sP1duFABJB0p7Y/0lL++IQRX61wlbkj7crtxY3znQap09cuP7s7jAflkulYTknHXPLIQgQQAGEhOC51rfmDAE3yFKTrQ9+7YriWqjSzP51R4JzNEkyT7/NE2Oa/QdQ+DF2ppgtvOPUWbq9uAYABARRBCTv/GZ19mmhq+hytIq49A4TBECDVVD5HHeuECIpbcsZEOI47BBLJ/MhKjerjYJ6RzCBv4bny4CEhDwUAAAAAElFTkSuQmCC">从Kratos设计看Go微服务工程实践_开源_腾讯云中间件_InfoQ精选文章</A>                <DT><A href="https://gorm.io/docs/update.html#Update-Changed-Fields" add_date="1657452562" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jc3SP2zMARQH8M/73fXPBamWdMCCbiRiqBELg5VOwsRgMUjTpNuFhDZGEQZikBglFhapXaIxSAwlLooUjaQt7q5/7hnu2sTcgW/yku/3+/LyfcOX/wPVLGTG37yj1z0YyZJqljte2UiWNp3dTpnIMemI8TjjRp5VcVrdFWGbbhOaXvngmr0ugm8eGDSG2TCZ57TcxVVNT/R4rGRGy6L0VGFMS+AezisZ1nBQnzfqXhZaLuC28ZjU7RhmLbgsHRYGrZnCQwxL761Z1GVY3Q9ptkC/9FY1tyvsQdMWP9GjZUAIDOGd0MQcjuMjGgVWhYpe96UDaFgWncMlPUawS5c7woD0ufPNF5QLLEn7pTnpk1C2oiKtYEHagZrRmJf6UBO2Cl+F7kJ4pHAJJzGFIf1uCtOoaJoRjrqep4Tdwry0quW3tK/keXXaCWWFunBL+qXXIXWjwrLCnPRC2Ima9EyYll7j+6aL1EY1i426VrNo17gzG7sOl9Gu8Lr+1/gDUGOYD1gvHdMAAAAASUVORK5CYII=">Update | GORM - The fantastic ORM library for Golang, aims to be developer friendly.</A>                <DT><A href="https://juejin.cn/s/go%20build%20ldflags%20s%20w" add_date="1672912816">go build ldflags s w-掘金</A>                <DT><A href="https://blog.csdn.net/ambzheng/article/details/105922591" add_date="1657250882" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">context的WithTimeout、WithDeadline、WithCancel_我的猫叫土豆的博客-CSDN博客</A>                <DT><A href="https://zhuanlan.zhihu.com/p/82838941" add_date="1646823689" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcklEQVQ4jT3TTahVdRQF8N8+59yr5numZlmgQVQUUaOkkUKDoonRQIIgCMLyQYOa5CxMigZBDjIsIiyKjIqmFk0alDxq0CTpSUEiWYZUfqX3Xt85578bnFeDDXuyF2utvVbYn2PFS8aeFtbXI/oKFWqhQb0ylTQSav8Ib/vZC42pV8x5XidV9DNcI2MkhMxOBJCIaGVJ8+btdbsS9uZljTUqqVbvukd+cZLJFGNpLMT/jGikBqtQudzora1CKRPVw9vkwYfY+TFlAxrxyyW2rmf1eJDQhzhzlb+uSo35RqcgdPLRu0RTc/Qxevx6niMn2L+ds1OudOLODeL14/LFYzTrqKITZcrNm8WOW9j1AUtnefUbHjzEyXP8ORXbj7DjXb48JTeOhVZET5UdCssz7jvAsUVKEWcuMPmDi5PBwOmM9gpXe5kpdWQnGzkATGbs3sEN93PbJrmwTdy7SV7AtGWULKesioiCjuhFE5XMZbFlHXdfT92wcQ2/XVDmGtEWSiF6tEKuPLRFJ6tMjFg6ze435MKHXJzx/nfiucPy6BJrR3TLw0FfBsY6sheVHFBHYzTsfYDzE3loF089IrqW1Q2lZUSsbVYYdERHI2SEaK9w041i306eeE+c+pvPFsSTH8lrV/H9s6Ivcut6XlscjM2WJggtW67j02f4/DiffEu28uBXnPidO17m8OPywNf8cIZZhTFdq4rYkxezmNu8gVs3icWfpEpEkP2wq1doVysRbhRjhFmVvbesVp09JxZ/lOoh+2nwRAymRUU16E9FpVbrvNm4ZJ9KrbGnasyV8l/vkEMjFZFl0KwWKudNvOO0ff8CDNsVBiQlEB0AAAAASUVORK5CYII=">接口管理工具YApi怎么用？颜值高、易管理、超好用 - 知乎</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><A href="https://blog.51cto.com/u_14035463/5583376" add_date="1699235707" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">Kubernetes kube-proxy工作原理_51CTO博客_kube-proxy</A>        </DT></p></DT></p></DT></DT></p></DT></p></DT></p></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1672913119">git</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Git 学习文档</H3>            <DL><p>                <DT><A href="http://www.ossxp.com/doc/git/gitolite.html" add_date="1427860374">Gitolite 构建 Git 服务器</A>                <DT><A href="http://www.cnblogs.com/aozima/archive/2012/12/29/2838323.html" add_date="1427860374" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACh0lEQVQ4jX2TT2hUVxTGf+fe95LMmLwBI7UxKqWKtmkXSR6TPKOjiBtX1q2CqKhUcZ3SRXddS8GVi7ZQiigtzbr1H4jBSRhHAkEXMhv1hU7EJtFJHJ3Mu8eFbyTa6Le899zv/r5zOMJHVIiGTovYY4BR1Uu3JiZ+er/GrvLOAFqIou/Emu/V6XngjjFmdFNv77pHcXwDkFaxrGJAX19fZ3cu94Bm89CtUukmQD7f35+xHVeXa7XtxXv35lb+9j/lcrkcAv8tLZVTSlsqTU2r8IIg+OJ9XBuGob/ysFgsVkW1ujYIfgASINk9PDwKqHXuxPDWrUGr1gvDsLPD9/cBYytiJc7pKWvNX4WRaKcgTp1uEHWXjeedle7uc1Qq9wEx5XL5mYU9I/l8/0qK8cnJ8lxtcQDhN9T98WR+ftCJ2eZ5XqdC2ErgATh4YjzvDPBtSqCATE9PzwM/AxSGhg6KyDfOuUSMjAC/A2oAXJJcEfRAGIbr3vhBauIBRNHgl8azF6wxRlWtqubT/jkDcLtUuouoZn3/SHrRlpo0C2E02Gbar3u+t345af7qXFKy1n5VGBjobk3BAAlO/gZOpwSNfD7/6a4o+tG2mxsiMld/2Tg0Xpw8kaj7xYjpcG1tW2ghpn340/fs8cKOoVEV0y7wtaosJXCytvTi2tTU1AIgSb3xT5K1iRj9HJiwaVY2wox0de0VMUdRdgLtItRwurbD97f0bt6gjx/PxHG1urB5U+9+g1QfxjPjbwmKcVwnjveEYbimq15PapmMzTQaRoOgOTs726hUKq/SuKrKReCzdyK0mlYul5/xYTmA+sLzsUwQHAZktW0UPrBkLf379OniJz09c9lstvYaxI/3vPRLsl0AAAAASUVORK5CYII=">git + https(apache2)比较方便地添加新版本库 - aozima - 博客园</A>                <DT><A href="http://www.git-scm.com/book/zh/%E5%88%86%E5%B8%83%E5%BC%8F-Git-%E4%B8%BA%E9%A1%B9%E7%9B%AE%E4%BD%9C%E8%B4%A1%E7%8C%AE" add_date="1427860374">Git - 为项目作贡献</A>                <DT><A href="http://blog.csdn.net/hudashi/article/details/7664396/" add_date="1427860374">git clone简介 - Robin Hu的专栏 - 博客频道 - CSDN.NET</A>                <DT><A href="http://blog.haohtml.com/archives/13331" add_date="1427860374">git下添加新项目及用户 | 学习笔记</A>                <DT><A href="http://gitbook.liuhui998.com/" add_date="1427860374">Git Community Book 中文版</A>                <DT><A href="http://git-scm.com/book/zh/ch7-3.html" add_date="1427860374" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHElEQVQ4jYWRUU7CQBCGv0GIKUbwLN2XJp6hwDW8HWi8gsGHGo9SNRUN0PGhO5ttaesk20228//zzQyMxM/G6e/G6ViODP04eKH4c70tenMnQwbH4/keQP0ZIrkwqNZOq7XTxfP7S13XD6hWYyYtrK9VqiIg/vlm12AfNk4lEsTtBILPVaoAqqC0CyXbQuylSyIAH6u0VQFABM5IBrDcFa9GYjlGImXeYLfE/q7llMGMKexDO2tXIczNZGLYhhffHMMnhHp/G6wAlHnTf5dET6cM4Go23dtg4xaTbSFhmn0mi8c3gcvtCDD3LYUt3D01yd12Anq0HRPHRCFiElW+J03ZxBJvPdWgwdhMFh3xoEGfybJH/G+UeapmNBR/MA+BjJs+qjsAAAAASUVORK5CYII=">Git - Git挂钩</A>                <DT><A href="file:///usr/share/doc/gitk-1.7.1/gitk.html" add_date="1427860405">gitk(1)</A>                <DT><A href="file:///usr/share/doc/git-1.7.1/" add_date="1427860458">git</A>                <DT><A href="http://blog.csdn.net/wh_19910525/article/details/7470850" add_date="1428052290" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">git 使用详解（8）-- tag打标签 - 快乐&amp;&amp;平凡 - 博客频道 - CSDN.NET</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><A href="https://guides.github.com/activities/contributing-to-open-source/index.html" add_date="1451384607" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">如何加入开原项目</A>            <DT><A href="http://www.csdn.net/article/2014-04-14/2819293-Contributing-to-Open-Source-on-GitHub" add_date="1451387404" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABWklEQVQ4jbVSwUoCURQ9V2fGmUwxagLNwAiDQaHc+AFu/Qt3FtRnuLf+oMCN4GL20c6FEhiU4UKDIFHLJipwGvW2GBUHqXDRhQvvXs55953zLlVBWCZcS6EBCM6S7SRADIWk8DYpCg+tUb9vtlo8MBcJUBKJzWzWn06LweB8f/Rm1NbW5wnsUpRwPr+RyYAWVbH11HY8iQRhV9d9qZRdGqVSv1AY3NXHH+8kK+JWyO3zOwjq4dEM/Xhy3D09ozn3zEZjdibbVu2mpsTjAMxm8zYaZWb6we6JrbKmzS5j5l++ZkIYGwYAEGRNI0HgPwmvxSIAAnkikZ2LcykcZjDADADskj0MdmhwBwJ7V5cr+wcAmBnMX60H67lHgiCqqtXp3CeTsFVVQVVQBbj2rrZzOav/Ml4IQ9crUyRNl286UZK8yaQciwmqSm73eGAOe93PcnlQr9sT6N+39RsgVo7oiKSelAAAAABJRU5ErkJggg==">如何参与一个GitHub开源项目？-CSDN.NET</A>            <DT><A href="https://help.github.com/articles/syncing-a-fork/" add_date="1451387499" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACH0lEQVQ4jY1SPWhUQRD+Znd23r33LveOE0UJFhaSYCwUCahgUmlzSCxSBCwUIqQN1iks0qilhSJY23gIYhEQ0TTB0krEiHcgV2ghyBHu5+2PRe55R5QjAwM7M9+33+zHAv9GPKX1ahbH2xWRXjVJwpTI93IcPwJw/j/4UTCwmEXRdkUkryZJOJgV5nYisgkgLThUHErG3IqYn2oi8RNEFBHyweBdJ8+XAfzSQ+WFOIoawTlY57ZJqVQrlRIRxjO3dic4t2dE5k0Is33vXwBAuSyyU02SkMXxZwAawKmS1qvMfBXAlVhkRYAbAGCMWaulaailaRBghcvG3FTARQDwAANIADR7zj0r1u4OBiOfnIsAwIeAkjF3lAZuK2ZSRIBzLwF0Jhnd9X7Lef9zWJ5VgejCmNKrSeRhfPHWfgIAEB1VitmMm3yIC0ZgZqW8ta2iUWJeOATviCaaAQBvbUdRCA1g3xRlzF1mvjSBLBVjNsF8AgAC8E33vW8K0XLw3iOELWHeUEqd0851HbA7JB4rMa/HWj/QxiwB+x+qb+0TBWA3J7rPxmREtDew9h4rdVqJZGPKeSSypo2ZLxrW+2bP2sdFrSsiz2tpGsrMG7zvRTy+e2zM21qahmqShCxJfjPz4sH3GQAPBQgCBADXDsw/CBAU8BHA5b/KYwAP4M31ev31zOxsOD49/b7Vav0ohkv1+skzc3ONcpatt9vtr0X/D4QXroswshQOAAAAAElFTkSuQmCC">Syncing a fork - User Documentation</A>            <DT><A href="https://guides.github.com/introduction/flow/index.html" add_date="1451387533" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACH0lEQVQ4jY1SPWhUQRD+Znd23r33LveOE0UJFhaSYCwUCahgUmlzSCxSBCwUIqQN1iks0qilhSJY23gIYhEQ0TTB0krEiHcgV2ghyBHu5+2PRe55R5QjAwM7M9+33+zHAv9GPKX1ahbH2xWRXjVJwpTI93IcPwJw/j/4UTCwmEXRdkUkryZJOJgV5nYisgkgLThUHErG3IqYn2oi8RNEFBHyweBdJ8+XAfzSQ+WFOIoawTlY57ZJqVQrlRIRxjO3dic4t2dE5k0Is33vXwBAuSyyU02SkMXxZwAawKmS1qvMfBXAlVhkRYAbAGCMWaulaailaRBghcvG3FTARQDwAANIADR7zj0r1u4OBiOfnIsAwIeAkjF3lAZuK2ZSRIBzLwF0Jhnd9X7Lef9zWJ5VgejCmNKrSeRhfPHWfgIAEB1VitmMm3yIC0ZgZqW8ta2iUWJeOATviCaaAQBvbUdRCA1g3xRlzF1mvjSBLBVjNsF8AgAC8E33vW8K0XLw3iOELWHeUEqd0851HbA7JB4rMa/HWj/QxiwB+x+qb+0TBWA3J7rPxmREtDew9h4rdVqJZGPKeSSypo2ZLxrW+2bP2sdFrSsiz2tpGsrMG7zvRTy+e2zM21qahmqShCxJfjPz4sH3GQAPBQgCBADXDsw/CBAU8BHA5b/KYwAP4M31ev31zOxsOD49/b7Vav0ohkv1+skzc3ONcpatt9vtr0X/D4QXroswshQOAAAAAElFTkSuQmCC">Understanding the GitHub Flow · GitHub Guides</A>            <DT><A href="https://www.zhihu.com/question/21343711" add_date="1451387661" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACT0lEQVQ4jU3TP4hdVRDH8c+ce9/bXXffJkjCxqyGjUFUNItBYVFsFFsrC4mNjSntTKewCFpZWfgHOwuxsxLEVAqiWKgBQ4JaJBhw/ZNslrd/TN67d1Lcq5sDh+HMgZnfzHwnrOdQ601DZ4SDKu64ob7jXaSBUBkLH/rF67U9b1nwmqlUdCclgt5m76t6XxoZOesBbTib22pzUWRWKnUfqEKN0tt9Vd3/AMV2rTEvtRlKNZQZMro8kQ1tUkonJVNqharXURvVplpFHFhga1uqEUJgRpqhnQiDrieDWRaH7LbsTantihPH+OBFPrsgLl3j8IilBfHrFpeuc3qVg7Msj9iaMBry8W/i3GWKCU8s88cNsbrEeIfTj4p/xvLlVf7eEu2ETy+wuSc/Os/3G3x1pWt3iZofL/PT73L3FiW5+Kf85Duu3qBq5V/bPHaIjbF4con5isUkWlGQh2d5/F5xZCSPH6B0Y7T3r1w7Kpfn5bFF+fwJcf8idfLcCnlL1mXINz9wckU++5DY3OHQXeLUMg8vifVzfHlRaph5QfvOt1wbY7aDrDS74pmnWFvh7c/l8bu5PubVp8UX52VOOqkvrYlTR8Stm0SIaNGI8Eo2D94jrm6yM8ZAaoSCRhoJeOQ+oubnDQz3gQpnsjXpKIuabHuGQ1ZFNNET2PYoz/WQ11KlFIxjRqpkth352e1DNI00xZQoIipM0Gi10tRO0Xo/B8r/y5OdZHoPNOSUnPRlNYpKZeq9ys31rx01pzjZV7cfoIP6v6D9cIXKpql3XfHGbb+B7z804PcgAAAAAElFTkSuQmCC">如何看待 Github Gist这个服务，怎样更好的利用？ - 知乎</A>            <DT><A href="https://stackedit.io/editor" add_date="1451388000" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABrUlEQVQ4jY2QwWsTQRSHvxnHbheWTBpoKdRqiIIgJZQIyUEaUgnexEsPFT35J5iD6CUgerXoqQiC0EMFT156ESFYPCSnaah4kB5CDZGV0saq26ybrLeaUrvuwMB7zHwf7/fE2mcSlxUPJizuAOPEO7tmd3H5jbv6UJ32WWr63MqICx8yk0/mUZcEiBO4EILNcO3TT1P7ulgJGWgJLACWpe9dxbou/P40L1fes7OnefW6AacyQ/c8WDfEWOrmPDAi4LYEEgCjapper0ez2cTzPIwx+L5Pv98/NkfSPiwdNfzQaDSo1WoAuK6LlJJut0sqlTpxGUcE+XyeTqeD4zi4rks6nUZrHbnNI4J6vY4xBtu28TyPVqtFNpuNnEAON8VikWQySaVSQWtNtVqNhI8JgiAgl8sBUCgUIsF/RlBKUS6XASiVSrEE8v9fYgr2D0xsqN39Wx9GGH33eJ0zv+ZwpqLp/W3a366sY1+bAxBvP/J98gtbMxtkiRlpINTg0cXtzR8jE2fl2B7PZzY4FxcGkGEg727NTiV+t1+I8BkJDniKYIEQJ6Zjh5AVPO7/ASh2h7d7wT7+AAAAAElFTkSuQmCC">StackEdit – Editor</A>            <DT><A href="http://docs.openstack.org/admin-guide-cloud/blockstorage-consistency-groups.html" add_date="1451388293" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">OpenStack Docs: Consistency groups</A>            <DT><A href="http://my.oschina.net/crooner/blog/503544?p=" add_date="1451448150" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEklEQVQ4jW2TS2xUZRiGn+8/58ycOcx0ppOpM7RQm9JqWwmKlxpvwagpMbpi4YYYYmLSBbpyyYZEFy6NujAajCs0aQhuKnFTJwZBKRrrJUCp2NqWmUrKXJjpzJzL/7sYQYK8q2/xPcmbvO8r3K6jKI6iARgrDDGe241yUmz5G5z6/QzQxiAIAAb49+xKAMPU6OPZvYXpVNbd7yad7ZalJAiiYKse/LR+uXaMz+Y/4Q7oFmy/Nnlk+NHc24VdaZFIowMNghERUXGLRj1g6fvybPXT0wepUAOwAAUY+9Ajb+2eGnw33++ZTiMIw06EiIqMQQcdLboT6UTCCnMjmfGq17PH/2H1OCAWYHhiaGz4hXtPFAaTNKs+ylIqlnQsPzJWZLBczxYTGvx2KJ6r2tnhzESlJ9kKzq99ZwNsm+x/PT+acdo3gkBZYqmYUn/+vLlcXql/rCNtBkZ6Dw/tye6IiU2jGXm1a822ickEoGxAZfoSTzm2mFZkcFO2XFm4vrr6wW/PUiqtAKzc33+yc3CsGI/bG6Wl6uf+ufWTLKwvAthAwoqpnSbUYtvoQCPVa60ZSqUV3hyJ8+uOiGLxUnkutpficgXo3J6CupkngDYiIoKySQPwzFLIN8UIgOLy33fCNx20wna0LLbq11EoMYzO9acO1CZ3fsQrq+cB2Df8WP65oS8Ec6H8R/1L5pZPsba5fqsH3htPvvPQ1OARCcIg0liOq1Tpcq1RLbe+MoKVzSdeGhjvdTXQrPrUN9u1q4uV2eb7Zw9ZAIGyrtgFbzo3kHT8dmhMZCST9+K54Z4H+oZSEz29ru03Qx12oiiVjnXcrJvcuFg54c+vFbtFWqtW6oVMJbV928vp3jihr6PQ12JCHelA68DXiELHPccESPyXr/+abXx4dvq/IoGYhdL8ZioZOknn+XTBs2wlIhaibFFOTCnbc9SNim9dOn11pv7emVcB/+5jenFsX9/D+cPJ3vj+RNLpAaGzFba2Gp1vSxfrxzj+48zdxtRVd6rdWJ++70HucUdRSri+tcLc4rn//QD/AGg1V5lOKkFuAAAAAElFTkSuQmCC">如何向OpenStack提交代码（详细步骤） - 无若 - 开源中国社区</A>            <DT><A href="https://www.openstack.org/profile/election" add_date="1451448512" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Profile » OpenStack Open Source Cloud Computing Software</A>            <DT><A href="https://wiki.openstack.org/wiki/GitCommitMessages" add_date="1452237597">GitCommitMessages  提交信息规范</A>            <DT><A href="https://www.openstack.org/profile/election" add_date="1451448512" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACF0lEQVQ4ja2TPW8TQRCGn9ld22cfzhdc4jOyBAWQDkWiQCJUVEgQkKgo+QkU/IY0SJEoaGlA4iekoaClR0KkiETifDkJRIl9sX27Q3GJDQVKw9vsanb3mVezM6KFEBHy7jEAvpuRZyeEXg+f9fAnx/Q7e5xubwHQa2+SPHnG3N1FRFUV4NOjB+jGBgUh4L0H71EfCMGDMpICOMedDx/HgOXrDW5iAZiLY4wxOOuw9mw1FuccwChuZxPcObXnA8M4BiBNGlwk7wMm95gLb16gkYNoagKby+hAqhHR/Dx2egY3M41MzbD65jUA9rjLwmwKcTwGdA9+MqxPFvvBgCtLj2m+fDUCqvdsrSwD8Gu/w87RETfiyhhgraWbZQAcHB5SP/vSPyUUDpNyhYdJilUzBqhA3ZUASKOI6LT/92sDpbgKQFAloIj3Y0B14hKhN/xnsUQs+WB4zsKIYFRxqoqKMOie0g+FxYPhgP7ad7K3K/R3t+l3Ogz2O0zt7AHQzod82d+leS1F1tfX9dvaGp9fPOdy7gFolctMOFe0nAAKYgRrigQBSFQoN5L/0AetVouNzTZBlbmzIt6qRORSZDIIIiAK6HggFEWDYowx3F+8R3PpKV4DXgNBFfGK9YqEgCAYZzFRBRNVsHEVN1mntnAbCSGoiHCSZXx9/w6Aq+0flBoppbSJS2axcQ0bxUitmBVbqyHVGFOr8RuRS9rFeC+XSAAAAABJRU5ErkJggg==">Profile ? OpenStack Open Source Cloud Computing Software</A>            <DT><A href="https://my.oschina.net/leicc/blog/810888" add_date="1566963032" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEklEQVQ4jW2TS2xUZRiGn+8/58ycOcx0ppOpM7RQm9JqWwmKlxpvwagpMbpi4YYYYmLSBbpyyYZEFy6NujAajCs0aQhuKnFTJwZBKRrrJUCp2NqWmUrKXJjpzJzL/7sYQYK8q2/xPcmbvO8r3K6jKI6iARgrDDGe241yUmz5G5z6/QzQxiAIAAb49+xKAMPU6OPZvYXpVNbd7yad7ZalJAiiYKse/LR+uXaMz+Y/4Q7oFmy/Nnlk+NHc24VdaZFIowMNghERUXGLRj1g6fvybPXT0wepUAOwAAUY+9Ajb+2eGnw33++ZTiMIw06EiIqMQQcdLboT6UTCCnMjmfGq17PH/2H1OCAWYHhiaGz4hXtPFAaTNKs+ylIqlnQsPzJWZLBczxYTGvx2KJ6r2tnhzESlJ9kKzq99ZwNsm+x/PT+acdo3gkBZYqmYUn/+vLlcXql/rCNtBkZ6Dw/tye6IiU2jGXm1a822ickEoGxAZfoSTzm2mFZkcFO2XFm4vrr6wW/PUiqtAKzc33+yc3CsGI/bG6Wl6uf+ufWTLKwvAthAwoqpnSbUYtvoQCPVa60ZSqUV3hyJ8+uOiGLxUnkutpficgXo3J6CupkngDYiIoKySQPwzFLIN8UIgOLy33fCNx20wna0LLbq11EoMYzO9acO1CZ3fsQrq+cB2Df8WP65oS8Ec6H8R/1L5pZPsba5fqsH3htPvvPQ1OARCcIg0liOq1Tpcq1RLbe+MoKVzSdeGhjvdTXQrPrUN9u1q4uV2eb7Zw9ZAIGyrtgFbzo3kHT8dmhMZCST9+K54Z4H+oZSEz29ru03Qx12oiiVjnXcrJvcuFg54c+vFbtFWqtW6oVMJbV928vp3jihr6PQ12JCHelA68DXiELHPccESPyXr/+abXx4dvq/IoGYhdL8ZioZOknn+XTBs2wlIhaibFFOTCnbc9SNim9dOn11pv7emVcB/+5jenFsX9/D+cPJ3vj+RNLpAaGzFba2Gp1vSxfrxzj+48zdxtRVd6rdWJ++70HucUdRSri+tcLc4rn//QD/AGg1V5lOKkFuAAAAAElFTkSuQmCC">给Git仓库瘦身。 - leicc的个人页面 - OSCHINA</A>            <DT><A href="https://docs.gitlab.cn/ee/ci/variables/predefined_variables.html" add_date="1657616848" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB0klEQVQ4jY2RO2tUURSFv3XOnUecRIRgjC+MRYxOkcKg2ERs1UpELKxESCRWPrCU9BYp/AEWgggB/4A2Igj6A2ITUIgPZCAQgiR35t6zLEJCMiOjq1ys/Z2z94Iueb5Z9b3Twz3+o8mG55vVbj90G+1WezzF8rZnpiq7/TLfuFGsFtP/BCjEiyTdorZ2aOf1xxNDoJuYyz35Pd+8f2ygLBsvsK9i34nyGzpWkakphUXgayRd0bPl1vZMthuQ57WjWfRZoI60UKBVKiAYBIaBWEATePdXQK2S1lPKnlqcw54WjAMGvoNfSnwsolb2rOC55miKxUwSA8H+mWApw19yVULm8pJkFYH3VZEXnTAWxESyjxNoZ2XnedYO6WCEuzKHjZLgd2F9i06vo8MCDbfDph8mc03ymKEhETGtIlbedrcQgCGJM5JnOxQn8s0wKjNrmAT2A3EnneSeGvcoWpRWv0h/wH+oP6CUiXJ/QJCBHCjYqmxbsRKzupLr7N57SwWQEwpn1c18paxnD0g+IIURk04JzhudLF0+idIGULf5LPgkedn4B9Za1mG550CemarQWB8pO76AdB0YwLyKqfxAq/ZLi0vtf19mB3Zkn+eag/0yfwD+t8B/mknf4QAAAABJRU5ErkJggg==">预定义变量参考 | GitLab</A>            <DT><A href="https://wener.me/notes/service/forge/gitlab/gitlab-ci-yml" add_date="1657618208" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACWElEQVQ4jV2Sv0s6YRzHn+fuOVMqLMHJKKcIxcVBEIdAmhwcCvwPnJxaW6NojXAQdGtwESc3F3XyF4o4CGqkJ2J6XhR3113XPZ/v8MQR32f4LO/36/Pj4Y0ppejPAwCO41arlWEYJycnlFKMMQDYlSCEMMbMytyqqvZ6PcMwDg8P9/b2MMbMgDGmlBKE0GKxQAj5fD7LsjRN29nZ2d3d1TTN4XBYlrVcLh0OB8/z6/X67OyMQwhpmvb5+ckmNhoNnuej0WgikXA6nYIgeDweADBNk61HAOD09JQdMBwO39/f5/O53+83TTObzb68vBwfH2cyGUKIruu6rv+u/v39fX19zTCPx1Ov1y8vL+2fuLm5sSyr0+nIsoyn0ykAvL6+XlxcBAKBp6en5+dnURRFUTRN8/7+vtlsdrvdWq02nU4rlQpuNBqiKK7X68lkcnt7e3BwIMtyPp/3+Xzn5+dHR0eSJHW7Xb/fr6qqIAhI0zRFUarVajKZ3G63q9WqWCxms1kAGI/Hs9ms3W6rqjoajSRJAgD09fXVarXe3t4QQuFwuNPpCIKQTqdLpVIkEonFYvV6XZZldurPzw+nKEqr1VosFqlU6uHhIRQKtdtt0zSvrq4Mw1gul/l8HiFUKBT6/T7P84hSyqZvNhvWAwByudzd3R0ADAaDx8dHVVXH4/HHxwelFFuWRSklhJTLZbfbHY/HDcPQdX02m0mSxHFcLBYTBMFOGmFRoZS6XC6v1wsAhBC32x0MBhVF2d/fZyoDMMsgAPyNoF05jmMqk34Bm/5PYIzdyPb8A1Xhj9vFDEbvAAAAAElFTkSuQmCC">gitlab-ci.yml | Wener Live &amp; Life</A>        </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1700019050">vpn</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1627028150">wordpress</H3>            <DL><p>                <DT><A href="https://das.scusec.org/2017/03/06/WP-content-Injection/" add_date="1553688836" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC8klEQVQ4jT3LW0hTcRgA8O/8d6bTZVopkrCimy3TVLTSki5eKi20AkG6adpDD9KDPRRhN1ytmtW0SdPEejDpIWhGRawLlWBOndsqIqepq1YudcacNnfO+b4eit5/Pw4RAUBC4mVscka42+NeGBValBTLM/bc/Aw4yM3LQ0QiYowBACCiIEpEOOafzaq3QHk7lJkeD0wZdJfCFcpI5ZwLGg0RCYIgSRIigihKhOidDm6ss0BZe05Dt65jtPpsjQygIDcnd2s2A9BeuPjviCIQ4q+Z4BZDN5SaiputRNRYf1XB+JwNmZ0fh3+43Rnpa0OYTHf5MhGJogi+30J+kxUOPdjbbCOia7U6ALY1c33LC9uCE6/0HW6veyQ9NS2Uyer1eiKC25ZvUPFwZ5NVCgZqdToFH5K6JuXLZ2fPaCCi6ilUtBstox7XYGJCYlxMrN1mY9FKOTDy+MTOj67GumuLlyxpbWtVLV2RHis3H8uIig4/anz71DtvT362b3qal8s5SZK0HZ7qOz3JqxceXz6epIpJSUsXRRE4xsu4bvdMYaPNM+E/n7MgS/E9u6CIcYzlcp8qd6gc/Z7rQzHz41OAkDgGhABc9NSINpPFxkScNY/9VG0CADCbn4XLQw1XtNVmFxy4r9a8HpqYIZKIyOnsT1AnrEtUP+wdVJ15zVc+6hqZZO/s9lkh+HVssiZvUeVu9aehX/kGy5CP3K7hg/v2DzoHCov3FSTFqeOUYgBd3gAMOJ1pySlRc+bebGggooo2e1jVy9Y3H7ZvzgIAbY2GiEru2KHUtM3YOxUQgIgcDseq+HilIuyW0UhEZmt/QfYWHjjDlYtEVNLSB6WmrDqLdzpIhBAMBomor69v5bLlkcqIG/q64sJdAHDy1Okm63hRcy+UmTKud437Z4lQFCVAxL/H2tO7Kn6lgpeH8KG1mnP33nvh0AMob8/Ud3l8ASIURAkRARH/H4fdfuTwYUP9DSLyBwT9q+EzTwbG/bNE9Fcj4h/8eLk90aXipwAAAABJRU5ErkJggg==">WordPress REST API内容注入漏洞复现 - 小黑屋</A>                <DT><A href="https://aamplugin.com/article/ultimate-guide-to-wordpress-jwt-authentication" add_date="1553691574" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACRUlEQVQ4jYWSz2sTQRTH39vMJO4m3UNClNJf5x7iQQ9KaS4WklLBSwfFIAjxoidPPSXYS249hPaUW8FrGqgHT1IS/wJLIZVuexDaUAgEdbMZZGdnxku3mLrRd3vMdz7z/b55qLW+DxElhEAhBFJKtRACLctSUToy6TKlVFNKNQBACAn7fwJC4d7e3vTu7u4rKaW5vLzcrFarh1EQjIoghMCVlZX3nPNFAIBYLOZtbGw8Z4xd3tQaURGazeYM53wREX3DMH5JKVOdTuduCP8voFQqXViW9VVrHVdK3TIMgxeLxS9R2r8iOI5juq5LPM8jOzs7L6SUiUKh8IEx9s1xnGQ+n//hum7Mtm05BggHxBh7c35+/jSTyXyempq6QEQ9Go3S/X7/USqVcg4ODt5e6YFSOu6g1+vFGWP7Qojbf7rSWgMiglIK0un0x1wu16nX620A0GMzOD09TUopbQDQiBggYgAAgWEYUgihEomE0lo/brfbW+vr668BAMf2IJfLDQkhA9/3p6/ixQBA+74P2WwWyuUymKYpjo6OYq1W62Wj0fh07UAIgZlMJlhYWNi/+h2NiCJ8fX5+Xp+dnUGj0SDxeBySySTpdrszkYu0trb2rt/vPwl7pRRQSmF2dhYQMRgMBmQ0Gn2v1WrPIgEAAJVK5eHx8fEDKSWZm5vrnpyc5IfDYdGyLPA87+fS0lJte3u7PRFwozQA4Obm5r1er3dndXX1kDF2yTnHiQDOuREEARJCdBAEaJqmpJRen7uua9i2rX4DGEo0McgQHrAAAAAASUVORK5CYII=">Ultimate guide to WordPress JWT Authentication</A>                <DT><A href="https://graphpaperpress.com/themes/" add_date="1555055785" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC2UlEQVQ4jZ2TT2hcVRTGv3PufX8yM02pzjNS28lkLFQRXImBElwYhaKCFAuixYJgwFo3giC0iotWbFEXggFBF6IIgkWholRoF6Uozc6luEma2sHJTE1hMjPvzbv3fl20ldGl3+bjwPnB4ZzzCf4tA8ADQGNnY8EYs0yA9OG1K+0rv/63BwDktiuAAADNrHkvUn1fwH2e/gQINWrfCeDFUTE4vrGx0Zlk9HYRAEiz0XxLUl0R8HoxKJ4wYvaqsfcXPl8k2K+m1ZW53XNvTjDQW+POPdlq7LksMPuC8wcC9Ze0lv4EYgYMu5Jo6gcFLvrSPycij7VmW5cb9zUWAcACSI2RzwP4nvh8ReP0lFAqJcNRhdTAQHj/pVo9IaIjV7pj1tpH1ZjPADxo6/V6RKA77o/OJdPpJfjwSR6Ks4lNT0I4CxiQuDrM3atppPNqzYf9vL9US2svZ1kWaa/XIyCQiuwk2dna3PoqNsm5QP5ejspDhctfQgiXpmL7IyGt0ebweZJDAnFXlZplGVQgIQQH0le2V1oC/Wv499ZylMbfJTb9mSqlL9yiAI3KjuqFWmV6CSJ+ptPBnSv8I4ICoUu3pw8D3HQsnxHI4yaNvibDN2R4XUT2CzHdAUrtdrsIBFXVAqKFL9ok+hYWECmKAqPg3aee4SNj7DGBHBze2HoRwAiA1Xq9LgDBIdsimEnjygvXb3QPO+PaAJBY+5BaPbi+vnrGeX8eKodUNADMsyxT7fV6pQBZvC3eD49njepCdtc93xuaXWUYH7naXj0bIGdazT0rVvURP3YLU9umnqIg63a7pQWQe+ErFvYkDZ/2Y/c2DGaNMacjRr81d88lIuaB4N273vlrURydpiALpV8CUMjE/m69MvUIwG+LQfFxVE2WSDoXxl9YE79hRA4gYHn1z9UP7kA64VxbXzvFPMwTcndSTc6T/g8wrCUmvaDA9CAfzE/AOpnG/x3nm02kY+583F6uAAAAAElFTkSuQmCC">WordPress Themes | Graph Paper Press</A>                <DT><A href="https://themeforest.net/category/wordpress" add_date="1555055893" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACbklEQVQ4jQXByW4bRxAA0KrqZVZSFClSlhU4QoAgAXy2r774bPgnfPcHJrcA8QIDQWAFAmRHjGQZonaRM9Mz3VXdeQ8fHfwEGBGT1mRtTqS7dmibYVpQn8hUI4yeN9e1xQcnlI2xBgCABJAAEEABCEACiADJ0mTvAGPaqbR41wZxkfDtqyf1qKzrwhjDzM759UPXtt2XlXv390MHMJnu+mYzm5Tl9tZd16k3L59Oi7ygqILXHGplZ2W9uzV5/GSeQC5v2+fPXyxPljvzqSQRjJRSSBBSEqUgy4zNCFBCGDS7H/d3hiEdHh4GEZHknCuyXAftAGNEiZEBiFmatm827vZ++HzeJ4D75n5v/3GeZzllbe8099tEiCSUJEaQIQTnfGfW/er7KiYD4/lsujVx97dVnpEonec9QJTomRkRysIUeTabmkn8Ya3PTz8uL65XVuO4sG3jDGWaI6FEFLCgQKLnkCgaU9h6/O30Q8YQevbeO9RACoLoRMpkFtgMrkOtsrL0nDbOH51+vVgFRJhtT6eTbYXiY+8H1oGHKJSEU4pIWef645PTf45uVh46hsVid7zYbftm83BTmKqqRur1s7lRkGuCKIMfSNvF3v7Pvxw0WH+/uHIeIpKxmOeZUbbZdHpsybkuiCiVjYqyZfpveXZ8cvb+TNY9zHe2qqqS1HZda3TOMWrPClWpFDEosqPZYl4sfi0fXf7+72+klbaFiEhigIiIQKhjtUekq3pMtrzr+Oji7s9Pf/3x4cgjWFuSMhyCxBB4iEm7Pul1rK9WN1fXZ8vz1efjb5cNMBlQZVGbupggYt/3pINSiogE+H8IGW7TAzqWxgAAAABJRU5ErkJggg==">Premium Responsive WordPress Themes - ThemeForest</A>                <DT><A href="https://www.shakenandstirredweb.com/?s=Grid+" add_date="1555056112" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB5klEQVQ4jZVSTWtTURScc899N2mEVihpS1BDxE2JRLpw5Qe0Gxdd+AP6D+pPcV9w0Z/gxpUbESUbQShiaxqsYi0tSWuTl5Lvl3fHxYtJuvSs7pk7cM6ZGdl5sYv/KQOAJAAREZFJew2UcQvAghARekbDiKBaVaskRYRk1I8IGBUbWBAQWAi896mMu13MqdXGWRjWW2qVnhrordWcWm03On9OLo0aABZAHMXz2fnN7WdGTP344vXLNxAMB8PSo+LG1lMA1c/f375659QBMBAk0+lJz+V8tlC6M+gM0jfSD9aLTMpTBJDkaM5IIABQ2rjvY393Lb+YW6Tn9I8YTxjrZUyj1uxcdXP3Vgpr+eLjVYL14/OJev8mJEWKSLMWHpQrAlnferJSWGqcNY/2fgKgv+5Dwidpnd3/eNhr925mF9Tql/f77UYXAGf2ntxAeqpqWAsPyhUA7VbnW7kaOOtjT+8BJEybuGjUGDUu42xgv36oLBeWfuz96jS7LuOMmtScIwkBCN18+Dy5aTSIfldOm7Vw1B9VPx1dHF9apyC7rd7J4Wl4fmXEAJCd7V0IfOwH3YGxmppzs1EbRXHUH2pgXTqYRiNZKbOQAeBjPxYRIGmdBqkMCO/HuE0iCSDxaMIevzmNbQL+BSVn9vqftkNXAAAAAElFTkSuQmCC">You searched for Grid – Shaken &amp; Stirred</A>                <DT><A href="http://idea.lanyus.com/" add_date="1555063770">IntelliJ IDEA 注册码</A>                <DT><A href="https://segmentfault.com/a/1190000014229266" add_date="1555063790" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">MAC IDEA注册码激活方法（2018.4.8）靠谱可用！ - 进击的前端 - SegmentFault 思否</A>                <DT><A href="http://dapengde.com/archives/16035" add_date="1556161098" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAChElEQVQ4jW2SvUorQRiGZ2ZnZmcNSFYk/iQpBCP+QEgREBEVrQXBxlbwDrwDG0vvwEbsvIHcgRgQJZWJYmFICHHcjclmZ3d2Z+YUe+A05yu+6oOX73kfGMcxAMAYk22EkNYaAAAhBAAQQsbjMULIcRxjjDEGZXeWZRFCGGMQQsYYYwxjjBCK4/jq6qrRaBBCtNYIIZglBEGQpinnvFwuD4dD3/cLhUKpVHp6eup2u6VSaX19fXZ2VimFjTGU0vv7++fn59/f34uLi0aj8f7+fnR0dHh4eHt7e3p6+vDwQAi5vr6GECJjDITQcZxisQgAGAwGruuWy+UwDKWUnPPhcCiE6Ha7aZpCCP/+4DhOp9ORUjLGgiDo9XqU0lwuNz8/v7KykqZppVKxbVsphQAAAAAp5erqqm3bWut8Pl+tVpVSjDFKqe/7ruuenJxk3FBGkHPOOc9Cfd/nnEMIhRDT6dTzvFqt9vr6+vj4SAhBGfgoimq1GmNMa10oFNbW1sIwnEwmGGOl1MLCQqVSyeVyCCFkWdbPz8/MzMzZ2RmldDQaLS8vLy0tKaWiKAqCAAAwGo36/f7Nzc3n5yeyLKvdbjPGPM+L4/j7+ztNU4RQr9ebm5vb29uzLEtr3Ww2+/3+x8cH1lq/vb3t7++/vLxkxbmu22w2Pc9rtVobGxsY43q9ns/nW62Wbdt4PB5vbW1Vq9UgCI6Pjw8ODjY3NweDwe7u7vb29uLiYpIknHMhBKW0WCyC6XQaRZGUcjKZCCGSJEmSJAxDrbXWWggRhuHd3V29Xr+8vJRSYkJIpqFt28YYpRQAAGMspcwqchxnZ2fn6+vr/Pz8n3z/ncz2zHxKqTEmSZI/50tzbVXNDekAAAAASUVORK5CYII=">我的博客使用的 WordPress 插件 » 大鹏志</A>                <DT><A href="https://github.com/youtube/api-samples/tree/master/python" add_date="1557829160" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">api-samples/python at master · youtube/api-samples</A>                <DT><A href="https://cloud.tencent.com/developer/article/1455006" add_date="1571370280" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJ0lEQVQ4jZWST0iTcRzGP7+977t/zilJBUJCxLophFBQHcWD0SFjRcFoTREzRcpTReihIiSkQ6c0QlKLFUhEHbp0aoamQmSHpkUXS6ZsYW5ur3u/HTbZ/EN/nt/p++V5Hh5+3we2g1+0f9r9FUFxEhTnnyhq4ygKlNApJ4HLCIcB0Ihgcpd76ulmA9sWcYf04uYZgheLmwg3yOKllDAdcrvALUbLewMRxUU5wRUROrN3tmS9JH1cF6FdziKiqBUjb1bkdkHe0CaTBWMxaFknAu3SRofUF6fOiSMzB3B6r/KdRty2OdzJXg75BjYkGJYmHPjJsBfFBzLc4pyaVkzMHkF3vmbNNNHMESytmvJdR0nEw9gTrdTUxHki/XhoJs4EFh/RaUTHwKReMRadwu6oIP7zIHXVCwC8+9KFx3WN5ZXjzO5rooLzLNFFQPUB0C+78TDOGkvwaVEYi3YDEI066JHcZZ5PVTIio7wQ4aG0AtAjNnryvRiUbkZFdNIpE0uqAPD50gA8kFKWuY+bY8QIEFJDOQNlAav5X6kijamzmhykrLyZyNxb9iw85mu1h28M46SOBEFCaoiwuPiBBYADDQen8RDiFwOKyMwOjJJHeL0NLCaSzFfacTt0VoA0KcCVuxigEBSKEiDJK1IECh2YnmtgvqyGWEUJmpXBsmlo2JH8KyCLwThn1Mv1xaZa/g/WiwQQDmvs9Ofmz5MKarfX7EeIIZxSWYDfa9nVNFgL8gwAAAAASUVORK5CYII=">优化WordPress数据库只需6步 给网站提点速吧 - 云+社区 - 腾讯云</A>                <DT><A href="https://boke112.com/3218.html/2/" add_date="1571370294" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACFklEQVQ4jY2SzUtUYRTGn+d937kz2KSFQk2GDSJ9kFAQGGouaiGBIrXpL6hVRqu2uQtaBJGbNkFtCmwRRBBEtjCrhSVlg1DoUKJllFnOePPOve85La5tykXP5nxwOJzn8OOF5w+7t7esSWJAkthIqirQnHHPFufckcKugeK+Def+FUn3y8c17wG1NCRFVVWNIUGFArA0qloT72jWfOICYwNrAXgRAs6YdJlXSY8M49irbA6yad8thtVrpRej8zPOuRs9JypxdH16YvLrQtvWpuGu/qGXT26+e1XnMn0tey519FrSlSvLowuzc5XlrM0Ycmrpy633k5VaFPpYVA05UNz3YeX7lddjx5pb8y4wexuaxgZOn9l/2JCR9z2FYunU+d6W3QoQGDp0dLi7/3Ln8cBl5qsrxtDUZ7L5TFahHuJV6oPsliAnqqIKIBEP4F552qt0bNsZezFe08colSRV1+t1i8bemXlzceLxYHvnwcZCNYkcSZKGNCQAAiANSZDA3XLp7PiDwfbOq119AFRh0mWR99U4UlWQBFZ9zavMrf489/R+lMRLUXjy0e2RcmmTC1yKQ1tDY09za8ZYqCp5oLEQxjGA7h3FMIk/hZVvUfijtpavy2Nk9q2IJN578fKXVFRVRFQ1zUdmplwKlkCMGuW6V4IpcymMIl4AQyrgctZZGkuzIWx/orUAgJx1bvzzR1X9f7x/A2gQNbLWgA0DAAAAAElFTkSuQmCC">WordPress网站提速优化之清理数据库冗余数据 - 第2页 - boke112联盟</A>                <DT><A href="https://www.wpdaxue.com/wp-sweep.html" add_date="1571370301" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC8klEQVQ4jVWTS2idBRCFvzP/f3sfubHGa0y8NbWt8QYfGMX6gFJwIUUqTU1rFKumKigoirrQFhUfROxCqCguRBfixkIlGpIWH6tCBUFRIr5ojLiIbSGxtdLk5nX/GRc3WXhgVt8wwxnmiKYEBADFWr9ZDATqDJhvwigJTnvoMPWJkQADQs1aVU+rtcT7gJz4gtA5oL3JfBqpzdA2IPO5iceB2dXNgg1r1ZIfkfsRF79Jtg+4CSisTF8EvjX8vSz8qv0XV287UEj6NXHsTAoELbl3I/zrkMqW5I6EZ01fK8aCyJtsK8QZ5v7oP9BxwxChg8CgKHXvEHo06nqEYjxnsmWX7yXiFbAEPAO6QC+3r8ltnjn36zgQvnngSzlvmcnuDzQKdWf+930OFWHtyO6gPvFB1Cc/xP3K1zu6NH3FNXuBWOjtr8l9FOkBC7gIEC2lF4DEFG2S5U3JQLncc4/ADq67vP5iR1WIx6K6o5QmdnNmthDEJUawiEVB4iEAd3+byBwiq0dsB7Jny62HPFv2kIq0s1Fm1wk6kRYshOFaEEmFfPftzE9+4xE/O7LONPkFQD+OHpf7TwBEoSHYacEsRGKgImQzQWA5ezhAa4jPnm6rxMmNtZP163dtARohviJivJGoS7JaFjEFFFMjZtzVinw8pDsFpalNV396aT5/K4paQboP2GGNGCHVCUvYE+GTSAXBtCh194lkMGL549Zcy3Cv2eDxUjp8trK+d20+HUrQVmJ+nb4f+zuu3dkVxfyf3sgetMR2u/tHRn1yNJUvsNioPd924dDRTd3PvHaqdamU6lQCt5DkUijeHQwkns/tEf6GTBsC6ukPw2MWoOW5mSf3X7Z++0uVSv4C8c6rHGsUzPrI5ctIFoo+8UnWiPgct1TStn/P/vNUrDxr87g9W6pL5eqbObOciFGIKQ968Axz/UVqlTDbFZ7N2vmlJ3Ri9PxqmP4X58aNu+9KLLk3IqrA3AovCp1GHNJ3h8doNksQ/wGq+z+lCzMMogAAAABJRU5ErkJggg==">WordPress 使用 WP-Sweep 清理和优化数据库 | WordPress大学</A>                <DT><A href="https://www.bilibili.com/read/cv427016/" add_date="1591861892" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACaElEQVQ4jY2SP2gUQRSHvzcze5c977jDiBhQTGEngqIBAyIkRYKNIJggYiOCImprJXiWNnYiEaJoIXIKgiBIIImFqGCMQv7YiWIjGjS62c1lb2fGYs0ZG8kPBh7vzbz38XsDqxqZCrg7f47R6V4Ahhq6XVuNR6d7uTt/jpGpYLUk1L2CK7Dt6C4qlXe00gWa8RFO7X7OWo2+O0DHhkcEhU1E0W4+P5yBy0j7wu23NaR4g7B8jJXkO5kdwuvX+Rjbg9EPKJY2srx0H79ylpN7FnOCay9CNtXqoI7jfQWhig7AWbBZAoA2JZQG2wLPT0QicPdYWKwbOqtXqXReIPoB3iV4iXCpQxDAAODsL6z1gEIwIFupdF7ESyjcmY/RgaLVOoxTrwBoWk+HFirWAxBpaecAlNtPEDzGtaxB6RKt9CfdXyfp68tYjyYnJ/m4eQVjqgbwKBE+dIU0GgnLu8bw3rOSHOL03rzhzTeGQvgUpSCcGeBDV4hxAniD9wIIsU5RPQGFrB/vwTY7crOAxlyRNOhHBOKegDhLqToBUH+gPLXE8Kk7JUsnyLJxPreW28jzX5tk2ThZOsGn7pRakpPnrkpulCpp6uII5wZ4MjtIvS8Dcrp6X0ZpdpBwboC6OFSp/UsNIDjvCXfEAAwP2zV2+Xa0Nl94G5Ps9IAYnE0ICkXi9/005l7ypaDYYH17hauKtBBrYUvqiKWXICjisiWD97coV88T/RgjyRKqrXzXy/LPe4yDqoMEj9ElylVYXLiuOXjiGcpqUNuBAHD/PaIsyDeayQ2+L176O2ZkqoQpa9ajbMlyZl8C8BsqkQfT9fYhAwAAAABJRU5ErkJggg==">如何正确配置Nginx FastCGI_Cache加速WordPress - 哔哩哔哩</A>                <DT><A href="https://tlanyan.me/use-nginx-cache-accelerate-wordpress-site/" add_date="1591861906" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB+klEQVQ4jSWRTW7cZhBEq7r7IzmkRpEgI9kYUBbe59S5QA6QS8TIDaJAggwbE3vI76e7s5i3f3gFFH//48/H8/Z0XrdZt7ksy0SRWutIJJGRQEb4jVqrXS7/0TvaXp4e7tcFZEYSNFWSNBDwdHf34QRMVev1eun7ebGnh7OPgUwhhUJSREgidWAEtFDs+eNH81owTnNpvW7Tlu5IFFXBzSJAJWFwV/tl3Win+7v5NKkgAYZgWZbMIAlgjD5GV9ObKd52RghSFGUqZSq99/f39+PYE5EZHmOMPsbITJLWWxOJulPgnENtXpcVmSCRmbjNEqHcatZ6pXgxiKh7U62T6roWsyJkeEBZJnUf6Qx3gyaUKQGqFBUBNUhEZiZBCKhKT3ikIw1MEsUmK8VURQCIJ3I4kAkh6cHeY3QfPkyKSpEgM5WcIjIBkGN0gklmstXWW9+vRx/d/vr782met9N6Wk6v/74CiAhS1CikBxLotdV6fP16KcX08cPPl8vl7e3LPy+vvfVlXjKhZpFpZRJTERlj1FoJZqQ9P39a1/Xxp8dlme7WdVuWZZ5arQ73CBIiUs9127brfow+9NdPvx11CG2yqR5Huo/eANBuRyMiwqO1lpG9d3t5eTuf744fx+Xbt4f7u3peT7NNpUgRAInMzHrU7z++19r36/4/ZstFxgwXocAAAAAASUVORK5CYII=">使用Nginx缓存加速WordPress站点 - tlanyan</A>                <DT><A href="https://andyx.net/wordpress-nginx-fastcgi-cache/" add_date="1591861909" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACpklEQVQ4jQXBSWsTUQAA4LfNvNknWzNpNA11LWLsRUE9iKiIioJnL/YPeBL8B178N3oS9KYILiCiF0WrtdDaJplkZjJ57828xe+DgHQhNFAphCDC2BBLYgQQcmpYEwQwMVLZAAIlAQFS1QgZYmyqNfKQWyFYixoKYzQ0snbKJZYCIm2AtAi0tIIU4K1LV4OIXFs/dm/znITs2uZow3IzlsbNaNTp55IZYrSsQM1DpTJLkCnjXAJJna9/dxQhydqw8lrDmHQHqzePnDGf3uagwlIH0mzEnVf5Nrx8+3672yrzTNdCIZPOZoJx4DqSs8Ec/HMMsMlaJ1mjER1nH9QhSbM0CJ1mp1Eu80F/tZ2sTNN5ueSWTcN5PSB6nuWL/fGEzQZh6JQU0vYIeKQbBj61uKUpRCFxgW9vnFyri8VuOomi+MLZTcjF3s6fqSphHJ7RiRcqLWazskmPtpOGwmOeV+nYS7pBq00ALtlyMj+gnj1IVmHPG2Uk00TGxKdBs4RKsqXNxHov5H6U55yNZ8rF8em+bzl8r4DUW6m9MGoEYQ1BwRQEJAiJhSYahCwLKMo16/iuZvZE2imsMOqFPctNBIG8nGoBokabIlvkdS2kkibwdNAqCgvnJvGJjQo8CDpnlcLFYrvS3rDf92QLVlMm2UIgv0ldF5cccG20qBWTgJIHrfjlTvYTgHi9c8xkvWnxbcZzhLr9Ew07MmVelPN5mQqEtXtEkhiesqLKgrKbDAMZMfVnO7t7ccQw/ThmdrGzPJgEtmkl7u9o5aBqOPtTjFcTDrGbL8oFtHn66M4Gs6PXX/4t090iO3xyZ7B15fS7fbqbieDwx4rhZLZg9VIKJW821MO7N178+v7880dj/CHiT++vXzp//Nmb3fd7hSrw9V7r8S3rPxWBbGQOf9msAAAAAElFTkSuQmCC">WordPress开启Nginx fastcgi_cache缓存加速方法-Nginx配置实战 – AndyX.Net – 安迪克斯</A>                <DT><A href="https://wordpress.org/plugins/nginx-cache/" add_date="1591861913" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADe0lEQVQ4jW2TO0xbZxiG3+8/B3Ns46CCDcJgQ/ClrU/KbTBbmkJUcGBIpQ5BSpUtEhJjF6aOTN4rhSVbI7VyMiFoSB1ugoAp2OQIZCsYKwTMzVDXxbdzvg5RpVbqM73LM716CB8hAAwAk5OT3/p8vkf19TfuMnMtABBR6erqj5fJZPLp1NTUz/926J8xNjbW3N/f/6Oqqver1QrS6TQKhQIDgNVqpfb2DtTUyEgkdiKapo1PT09nAZAEAKFQyDE8PPxrMBj8cnFxQY9Go5zJZOjs7Iyy2SwdHBywpmlGsVjkoaGhQLlc/pqZf0mlUgUZAA0MDDzp6urqevbsp/Ll5WWNzWYjSZL4+vqahRCwWCzI5XJSfX09d3d3l91ud9fV1eWTmZmZb6SJiYn7o6MjP3g83qrL5ZIlSaJcLsf37o3Q0NAwBYNBMplqaHd3l+/c+Yq8Xq9kNpuh6/pndvsnW8Lv941bLBZ2OBzU19eHZDLJuVyOXr2ah8fjgaqqePduHwBocXGBS6Uil0qlqslUy52dnnHR2tp2e2lpCVtbvwsiIp/PT4Zh4Pj4GCsryzAMA4HA5xBCIJPJ0NraGyoWi5KmaWhqar4tiKj29PSUNjc3QUTo7e2BLMsAgJ2dHQgh0NPTC4vFCl3Xkc1meW9vD8fHRySEqBXMBhRFQTweR6VS4Vu3voDdbkelUkFDQyOq1Spcrja43W6Uy2XYbHWIx7eh6zqICAKgUkNDAx8dHSEe3yZFUeDz+aAoZlgsZrx+HQWRgKqqMJsVNDbaKZFIwOFwMICSOD8/W+jouAkA+sZGjAEgEAigvd2NfD6P+fl5EBFUVYXX6+d8Ps8nJye61+vD6enZguT3f/qn3+97UKlUDU17KwYHB6mpycGGwaRpb5HJHKC3tw9ut4sVRaG1tVXYbDbu7OyUVldXvxfhcPhFIrHzPBQKybIsV6LR39hmu0FtbW18ePieDYN5ff0NS5JMTqeTz88vKqOjo3IikXgeDodfCAA8Nzf3OBaLxR8+/M5UKPxlAOBYbAMXFzn6+P8iqtWqbhiGMTJyz7S1tR2fnZ19DIAlAJRKpQp1dXURIuHt6GgPOBwO2t9Pk9Vq4ZaWFjidTmppcYrDw/difX09sry88iASiZwAIPq/nJubmx+1tjrvCiFqmRlEVPrw4fBlOp15Gg6H/5Pz386RmlKL812eAAAAAElFTkSuQmCC">Nginx Cache – WordPress plugin | WordPress.org</A>                <DT><A href="https://wordpress.org/plugins/leaky-paywall/" add_date="1592810722" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADe0lEQVQ4jW2TO0xbZxiG3+8/B3Ns46CCDcJgQ/ClrU/KbTBbmkJUcGBIpQ5BSpUtEhJjF6aOTN4rhSVbI7VyMiFoSB1ugoAp2OQIZCsYKwTMzVDXxbdzvg5RpVbqM73LM716CB8hAAwAk5OT3/p8vkf19TfuMnMtABBR6erqj5fJZPLp1NTUz/926J8xNjbW3N/f/6Oqqver1QrS6TQKhQIDgNVqpfb2DtTUyEgkdiKapo1PT09nAZAEAKFQyDE8PPxrMBj8cnFxQY9Go5zJZOjs7Iyy2SwdHBywpmlGsVjkoaGhQLlc/pqZf0mlUgUZAA0MDDzp6urqevbsp/Ll5WWNzWYjSZL4+vqahRCwWCzI5XJSfX09d3d3l91ud9fV1eWTmZmZb6SJiYn7o6MjP3g83qrL5ZIlSaJcLsf37o3Q0NAwBYNBMplqaHd3l+/c+Yq8Xq9kNpuh6/pndvsnW8Lv941bLBZ2OBzU19eHZDLJuVyOXr2ah8fjgaqqePduHwBocXGBS6Uil0qlqslUy52dnnHR2tp2e2lpCVtbvwsiIp/PT4Zh4Pj4GCsryzAMA4HA5xBCIJPJ0NraGyoWi5KmaWhqar4tiKj29PSUNjc3QUTo7e2BLMsAgJ2dHQgh0NPTC4vFCl3Xkc1meW9vD8fHRySEqBXMBhRFQTweR6VS4Vu3voDdbkelUkFDQyOq1Spcrja43W6Uy2XYbHWIx7eh6zqICAKgUkNDAx8dHSEe3yZFUeDz+aAoZlgsZrx+HQWRgKqqMJsVNDbaKZFIwOFwMICSOD8/W+jouAkA+sZGjAEgEAigvd2NfD6P+fl5EBFUVYXX6+d8Ps8nJye61+vD6enZguT3f/qn3+97UKlUDU17KwYHB6mpycGGwaRpb5HJHKC3tw9ut4sVRaG1tVXYbDbu7OyUVldXvxfhcPhFIrHzPBQKybIsV6LR39hmu0FtbW18ePieDYN5ff0NS5JMTqeTz88vKqOjo3IikXgeDodfCAA8Nzf3OBaLxR8+/M5UKPxlAOBYbAMXFzn6+P8iqtWqbhiGMTJyz7S1tR2fnZ19DIAlAJRKpQp1dXURIuHt6GgPOBwO2t9Pk9Vq4ZaWFjidTmppcYrDw/difX09sry88iASiZwAIPq/nJubmx+1tjrvCiFqmRlEVPrw4fBlOp15Gg6H/5Pz386RmlKL812eAAAAAElFTkSuQmCC">Leaky Paywall for WordPress – WordPress plugin | WordPress.org</A>                <DT><A href="https://wordpress.org/plugins/wp-paypal/" add_date="1592817264">WordPress PayPal – WordPress plugin | WordPress.org</A>                <DT><A href="https://simple-membership-plugin.com/simple-membership-documentation/" add_date="1598254554" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADiElEQVQ4jT2TTUibdxzHv7/nJXnWaOIT8+o04kuKQQLCWndyU3vSsksniBVXHKyDFW8bgodutYUWwYOHCTv1oLB1DBmsuu6S0XlZITjESJttrDSZIYlx5jGJSczzf347bPZ7//C9fD6E/0YAmLNZx4OHD2d2dnY+eZFM9h8eHkLXdfi8XnR1dSX6+vpWb87Pf+MmMs6ZcxhbW1ve8fHxH0KdndzkdLLT5RKtHo8VvnjR6gmHRU9vL7916RJfn55+Go/H+86PCQA2NjZ8dxYXH6fT6csATJvNJpmmScwMt9sNRVEgyzILIax6va68PTiYu3f79js9kcjvMjM7PpufX08kEsMAzowTQymXy6RpGlSbjZqamsiyLBQKBarX65LD4Wik02nXiz/+HNjb2/tO1jRt5scnTz4tl0oNIlJvfHADg4OD2Nn5jY6P/uGG2YCqqDQ9fR3hcC/2E/uyqiiiclrpyuVyKSUWi02XTk64WqtKi1/cwcLCAgFAONzDRrFEqk1Gq8fLH390kwDA5/Py6upXJMmy9TyZvKUUCoV3hRAghtTREQKDkStk+Nq19ynUEQKjgVQ6TdlclgN+P7W1ByGEKYHA6VepfiWXz0uqqkIIQbl8jguHBRjHJapV69Bb3GASKB6f4A3NJEmScHxkgC0mVVFxXCxCbm9v/9wwDExMTNCD+/dRr9dJmAJHR0cQQqBcqqBYLELXdWiahpGREaTSKcpms3izLQgpGAxatVoNY2NjrCgKeTweCCHY7/fDsiwwW/D7/WBmbm1thSzLNDI8zLVqlb1eLxSXy/VU1/WRpaUl6++DA8ntdsPv89GV0VFu/O+CLMsci8Voe3ubDcPA5uampes6tbW17StDQ0Prf718OZo5OLDu3b0rNUwTHo+Hr4yOUjAYZE3TkM/n6ddnz/i0UoHdbmeHw8GBQEDu7u7+kpj5wuTk5LfxePyqLMtnRKTWazUYhgEGqKOjA5qmsdPphN1uBzObZ2dn6sDAwC/Ly8tXFSI6/Wlj48NsNvs4lUpdNk3TtNvtktfrJZIkDgQCUBQFQgiuVqsWEamRSOTV3NzcJBGVZQC0/uhRZW1t7ftMJhMplUp95XKZTCEYADU3N8OyLBZCSC0tLVI0Gv15amrqvWg0mnkd0+ucmS+srKzM7O7u3komk/2FQgGdnZ3w+XwIhUKJcDi8Ojs7+zURnZwz/wL2CLWEWNUeAAAAAABJRU5ErkJggg==">Simple Membership Documentation - Membership Plugin</A>                <DT><A href="https://makandracards.com/konjoot/38441-ubuntu-nginx-with-txid-module" add_date="1601460465" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABFElEQVQ4jXWSQY4VMQxE33P8kWA14gAIaf6KLRdgOQg23IDbs0KCA0xqFuluev4XkWKlnYqrym4/ffmpEEJEYAWyQsCVQJIUkJXGLHS4WVm5ALQlWBKs7W6n2slWnFCktVWFmQihFKIuSZlSAY1kdvVlXTsgCQIqmat6jc3D8/N0jNauYRLh4+Ov719/X69/D+mHI/fPHpcGFMO3E/qQfj4AXePNSk1yffwD5tTY20Po0ZcQoRD9JyObb5I1ibXb6qoAmb5i3x+jRwm0q8cqankemvDh/Y+Hd08Pbz+fh9jWZeEKcsgA4B4N9OgW5s5+buI9enWpgJrg0YpwJrp5gAOosanPZvL+Dzw8WOwlc5ro/xheAKSZaaXBc3tYAAAAAElFTkSuQmCC">ubuntu nginx with txid module - wiki</A>                <DT><A href="https://www.dianjin123.com/wp-tutorial/zhutichajian/9258.html" add_date="1612344681" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACGUlEQVQ4jaWTP4uVRxTGf8/MvH+ue7PuKkGTwjokJCSl2IlgKVhcsAvW2uWTpAroBwhbCG4hmDT5BrZpLBYhbFhQhLt73/e9M/NY7HV1BYuQp5nimTlzzvmdA/9TArj++O0lXZ5dK6Wp7cYYO3T5+NXy2c61ni0SxpsXmkbcvuZvLZgSgC60dxo1j5SnqdqSXCNNm1L4k8L3JcerFGcJCI5JDMz9E/AyAVTjmomexjb0F6JcCG3EU5hh5rEjMZJcoA5gyOvxNNN0VkvASKuS8y8h1COfrNrex4dEdspIH6mDzc3Yhwd5pHSNfRYgOlpYVHtYr5+8uP/F0bkmUQDIz+lo/JABj+tTKwBYk2whSU0edtlz/Kf9+pt16m6755a/5ar3iBC3bIGkrjv9IJweEQlsfLEOZqFyZTr8OeXxGQP7vOQHLSiUssnog8KnXJs8vb8z3/gzIH5uDjZNLNggobHdhj3H43vbf2x5NYSQC7sc+FfiWlFhMw7nAsitJWPbB6l/w0JlG/aBfSpwCCwgPy9LSWA8foyxqCjSmCB92TR3r/x+cqRau6/ywb97W99d5FLsoAw1c4O1jNA5jACuCHsWU/pNLtT5jNW0+xcdP9KxwxiQoAwGiO8xJoAgFBKltt3kkoVc61RaUVeIZRmZU8gSqCeqkpM/KsEn09P1LL4oqT1bptKhfFyXRPqYSiJ+skxLXn2OzH/SOzUyAhC4sYXeAAAAAElFTkSuQmCC">如何设置您的WordPress网站为维护模式 - 点金主题网</A>                <DT><A href="https://us-west-1.console.aws.amazon.com/rds/home?region=us-west-1&lw=classic#databases:" add_date="1613814353" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABcElEQVQ4jc2TzUoCURTH/+fOjJmFWdDQrkVJtAmfQOgNfIBom+1mG4SYTzC7bKnQ3kcQnyDaRGRh9AENGKU2fszce1pI5scotuu/PPf8fhcO5xAzEwIi8zspIrIBgJktLX1bCuqjCUE+npCk2wRODpcZVNHYt5C+uwoWnO/FlPBsgA+DfhpCikIZFo6vPwYCdbGbBdgCEJ0ND9IAyBZHN1lqZrb2CSiFVnVdW0RkHrpbV27rwfNJpwMdAFgh2q37EAY5oTVhCiNwrvC/GM2q50iXTQCQnmrpww3KY7PzJqFFyAnFNJNEv84+0Lz3nN67MgGYw8yI4CfSZbPd9jvGkuj1GgrtVxkCj4IzBf1vEfZaKtx+kVNbAEDMfJ0j/0CwfFYtgygHoPEHrgEgt1GolQer/HmyGRO6YRMwssru08QQiwueslYuH39XeQTIxBOKlQ1QckxQIWZrvVCbckxjaZ5upwjIu8+yA2bLLNQCz/kbtfymbmXiX/YAAAAASUVORK5CYII=">RDS · AWS Console</A>                <DT><A href="https://www.cnblogs.com/zhangxinqi/p/9279014.html" add_date="1627010900" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">python3之Splash - Py.qi - 博客园</A>                <DT><A href="https://kyle.ai/blog/7510.html" add_date="1627028150" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUElEQVQ4jY1ST2iScRh+fk0ZhBbzz0D4hocOEh1aQ2NjK1g58OsQyDbLtjx1WR267dZJD18dGqQQeoiNDkHEdA0LkfnhdhSG+4PLaaB2cZgfH/uCEj73dkmYronP7X15nud9eHiBHrC2trYQiUQEIurvSpRleSCbzU4Qkba1293dve10OptOp5OSyeSjTo3m9OD3+z/t7OzccTgcX4joPmOsWSqVrgK4AACKogy0uNvb23fNZnOlzYAxBgDIZDL3RFGcBvCR47hvAE60Wm3D4XAkAGB1dfXZ4uLiG5PJ9KPNYH5+PrC/vz+uqmp/pVK5BgAjIyPpzc3NaYvFUhkaGioCgCiK3n+p+pDNZidWVlZe5PP56wCQy+VGl5eX/bVazXJeV+Fw+JXL5foTj8efsJmZmSNZlgc1Gk1DEAR+eHhYBAAi0kaj0QVRFB8CYGNjY5+9Xm+QMfYLAOr1+iWj0XismZyc/BCNRp+rqtq/tbXlBiASEQsEAu/T6fSD1tWDg4PRZDLpK5fL01arNWc0Go8BgBERSyQSjwuFgt3tdoc4jjuMxWJPQ6FQsNX+aej1ekkQBJfNZssAAOskEJFudnb2uyzLg+d1oNfrfwaDwXGO4w7PXFhfX5/rJgYARVFMS0tLb/G/iKlUaq6buIW9vb1biqKY2wyI6GKxWLzRi4HBYDjS6XTHbY8kSZKm2Wz2dXBPeJ5/Z7fbv+bz+ZvVavUKY0z1eDyvGWONM87hcPglz/O/p6ammj6fr7CxseHtJVEbJEm6XKvVLETUmeYM/gKSvP0Ra3xkBAAAAABJRU5ErkJggg==">爬虫如何绕过 Cloudflare 的 DDos 保护验证 | Kyle&#39;s Blog</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>                    <DT><H3 add_date="1636547210" last_modified="1700019789">AI工具</H3>        <DL><p>            <DT><A href="https://www.cnblogs.com/huchong/p/9299875.html" add_date="1636547226">分享几个免费IP地址查询API接口 - 听风。 - 博客园</A>            <DT><A href="http://www.jsons.cn/unicode/" add_date="1636547226" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/ElEQVQ4jZ2SzWsTURTFz30fmUlDsUmIrVnUrhQbSI1YRVETpQi6lkDcit25EOo/4F5w4VLRnSCIK0FwkfhBwYXGKghuXCjEfkg7MSZNZua968JOCVE09Swf73fO4d5LGE4EgNdOHtij9UjVFWJfx9ilT9XXR8QwNAPEJSit43cUif2blkkSBYeB8J8GDAgC7AYVriekOte2xgfYBMyTq7PT4zT4GQATwFEyAeyVCnNKyiddy2yZeUQKHVq0DPtnxWBSBEdazucTTOImA9KAzaiSOmR+wyYopmrvXm0bEGC9U/kz3ulDD7/kcqmtN3aSaj6hZK5tbHeXkk5g7OOmvzaXfL5UJ4AVA7RyPJ+JOWrBgq4mY1qZNC8CuLFamp6AoIVWaMJRKd2esU/bH7+W9zYanQeALANG1KamHO3ou0nXuWYA+90PAyHFlSqgYnAvuUJkCVCG7fvWj3Yl22h0GKAyYABA3vM842UnXhoYHRPiWI+tUCTG0pPjRCQuaEEZJmyIsHc+s/jhczTY/gPZ1nqxUHG0uuVbTgXWQhCFriDlh+Zi6ln9flS7n6FoXfjlbL+dyB+NO7FHXYvdcUFy04S307X65T/BvzVgQBJgmsWDs1KpFwHzCqyZGau9bQ6u92+XJwFguTgzv14sVPoaDq8BYGdwv8mOk/9HPwHc19ina+hMvwAAAABJRU5ErkJggg==">在线Unicode编码转换-Unicode转ASCII-ASCII转Unicode-中文转Unicode-Json在线解析格式化工具</A>            <DT><A href="https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fwww.flftuu.com%2F&hl=zh_CN" add_date="1636547226">网页速率检查google</A>            <DT><A href="https://c.runoob.com/front-end/53" add_date="1636547226" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVElEQVQ4jZWTTUiUURSG33Pvnf9kFgMh6pCG2CYqGozMv1lERFbUYqDETHBRmxa1qTBCTQjbZLlS0GZTSu5MCIp+oNRVWa1EpBTMhURaNF+f8333nhaj5kwZdleXl3sO97zPe4CcwwBxAvIPPQHJAOXq2Y9aIdbu9Qf2mMb4CDfGR7i+KrZRI1oVaQh6tRB+/yU2XAhHLxFBG0kMqWxhWV00OD6xvmat0/eT+yJ54WAHiCqMY4ZFKbVj0m3UBlAPX/fzmdo2FnScSbxz8bPTlxyfBADiREXAeFSz8KrDxjVvxcJiJz35kMr8pvoiAODBqzsEGD4WC7rhLS3KI8sd23n0ZcrqUxz0vSdGAeylMjk4MQ8A3FTsp+SMDTbWypwmo72xALT8SJTnBwKh6fydeRfINNR8Y5jbJFUdG34qJLVT8qXNTfH9zOgGAJJ0g/pfDHO82G+i264LKQ/CmDHW3ES6vmZBLM5HESmKGo84D1cfER71EVo7LvMtJYjBuMZCEFxdzEo+FsupnrlPn+cKt5fMrGCbBrD8T8QA8BvyOokEfCZSdZWlbwCuTgtJe6n/2VEQOiXRXWZ0Q1KvuPe8jmZnY3B1Gt7Q/aIdpTcB4SNzNj4FRgGlnTIaHM0ykU9XngMAGhjtWTMWQOpUZYHf65kigXlF1vRu4ylpJr+3VzfUZjAmMxhBIggADAhKzth8aFfIbA1fJiVinNZXyHH7soIUCgc7xIZBqm5jqU4weEyklltoaPzrJqNM2kgwpLK1ZXV5c6Kc5eimlqn1byzWN/nPdf4FbNgyjyibbyUAAAAASUVORK5CYII=">JSON 在线解析 | 菜鸟工具</A>            <DT><A href="https://www.ez2o.com/App/Net/IP" add_date="1636547236">IP 查詢 - 快速搜尋 IP 地理位置 - ez2o Studio</A>            <DT><A href="https://base64.us/" add_date="1634294527" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACSElEQVQ4jW2Tz0tUURzFP99733tj6RtH06BwIdjGETduhGjZIsFNi/6KfhAtahXMVhAiwmV/gYsIhNpIGwmCICi0YBRdSARPc9LRYd6de78t3qhpntWF8z2X77nnXDiP7PDaybm+WybT9EKuCwGgpoaaBLb3Z4nkNl6/4sMhib0BBnK3DqaXHjNJni8zMrh0rIkAqHYv8kAeLNoBsR41Fh8UpYMFjsTi0TOaE3zeHwIVNvcqAKxkKXUtoZqwkqWnnEox+6+Fj78nuRw9wPsfdNhCZIzYjpCHTwAkTON1G68bGEaJ7DitzituDn4rLHTUc4igRjEBApAHxUCxOoAqAjgDeYBS5IoN3mpKmzYTWcLE1SZLjQFmK3usah/L6w6AqUrCreGDgutv8CHrJRvOKVES3h28BP1Fy60T2TJJVCXvfCfQILFVFMH5VQz9J1zH/6G3NIb31yOOgiASUKu0ERyKaMBIsboQwIOzpxwWmkEQgvA6S0mH2mQk3OeQN41+7g40mMtSJodymiibOyWeDTVPuAXtw687eitJkcLCzjiXkicEXcOFLWIZw3RTsIBlmqDbON0gNqMYqdJ0L3h0Za1IITIRRwQIirXQCiCheHVPkYqqEltoe1AJxGLOFmm+W6SaFkVa0D5m6iVm6iXmsrRb+aJI8z/PFemeWhbFU9ufJZE7uPwLPmnQwwSK0MpXSeIykUzh3XueDy4dawoLi91+dwCHQ+JAcDFHsUdVwVockEuO6c4ea/7D4+z0yz7cLfM0Sy/kuvgLYe0enx92le4AAAAASUVORK5CYII=">Base64 在线编码解码 | Base64 加密解密 - Base64.us</A>            <DT><A href="https://verytoolz.com/yaml-formatter.html" add_date="1631591281">YAML在线格式化</A>            <DT><A href="https://www.draw.io/" add_date="1562726409" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACB0lEQVQ4jYWTvW4TQRSFvzueXdsbhyQiICfISIGCABKBAgnS0Fui4AlIgRAPQZcizwAtTxCJNCg8QYJASUMFWCYIFH42ztreXXvnUix2bMzP7ebOnaNz7jkj4YZtgpwFlNFSN9ISEMNvJQgHFqQK2LErYzGVRbDF/NxPcNEBuGwcQqmOPwRwGfb8Hcr1J4gX5HNph+PNR+inl4gpjI1PAqDI9DnM7FJOHZBA6Rdq9CND6dT49ISwAchERyFuWZL2/xiI4MJ3aPsLWS/LOZgC/a/vASFu5QDFqexvEoDkiPRgn++b6yDCbP0xrvMDRIZMRMAPshEJqqAZGIu38oD2/gvSxi7phx3it9tUbt/PrVSHOqXbsiRR4QRAgnnM3EW8S/dgboXu3haIgAidvef4tesE1+5i5y9gKqdRB/GxxaKKlGYo159iF26CVwbjU1ldI9xaB6CyukZx6RZ+7Qbai0kau3x79hAXH2FBEW+KwvwVpFIdKvIWLsMvz73qMuKVEK8E5Rn86jJSDKAbTubzH07+sSwiaBrR+7iDyfIliQhp8/UwumnzDf7iVVQVEUPSeIXGEYgg4YbXA6wz08TdObKeAIrrhGg/yRdsi5hglkEyNYlwSQQQD3NgXAtfjul2LFnP5A4M1PQTsqPPJ7pEhmBWkUNBz4BgfSjPODqhmfh4o49GOoc/AefyxNrXagaDAAAAAElFTkSuQmCC">www.draw.io</A>            <DT><A href="https://www.img2go.com/zh/result#j=683cad8d-5713-4dde-b572-73fdadab3f1e" add_date="1674116090" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACNklEQVQ4jYWSzUuUURTGf+d+vDPT+NqoqUOZihXSooUu3KQUBG3bthQh/ANqEURFLdoE7SNo0b4SiiLpa9HGiAiMSFBaBEqgTDU248w497R456uFdOBezub+znOf8wjA/jP3x4K1zxDG2atEn6AcIchXpztzhZfzvwAMQEj7vInskPGWvY44izinJmXPkY0vj86+SQM4gEx+UFRNa5gCISjaHA4YgwpGQS0wvw0PgQ8OAJ9GVFoAb2FqLMvkaBeq8H61yMfv5agusojyCSirhN8tBS6O0QZAgAvTfVw8myfOWEDYKla5srB+emG5OGEEBUqmXr/X8gDnER+B8xw6kGH2ZD+7Aa4+3uDO4g+6M57zU33pbNoNirV5sW7QRD7qUNADoqhCycGtt9tUdgOv1wLH+w1z1UBfHJHJdVOrKCJAwzPXvEUNAhTr8Hy1SlA43OO5dKqb3D7LwpcdSnWDsQ2jRdsAn4kJ0vQcJMDRnHBjJsXMSMSLtRp3Pwc0k8U0vDYNz5IvOMBYUCUA472G69MpJvKWRys1bi9V2dwRUr65KQENbcDBGAKCKgx3C9emUxzrtbz6VuPpao3hWBiKhUIZ6pokxQistBQAQaAODMWG0ZxFgcm85cSAxQps/FFuvquwVQYhiVRLwUCcpE9VEFGW1mtYEUSSXAjws6L0pMEbki3QAUh71yJuluDBcq2d6Wa6EuvJ+qQN4tqAkS7+xdLZ71HascZcZAtqKADZ/78EoCCBAsBfsbC4g99juXwAAAAASUVORK5CYII=">图片反转</A>            <DT><A href="https://chat.openai.com/chat" add_date="1674986055" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADPElEQVQ4jVWSXWiWdRyGr9//+Xw/tjY1dRsbZpvg0tnMVX4tAyuViPIk6CQo7DSKoJMOPfGwk7CyoyLqRKhgigRtmjSWqXMz2azZhm61uebed3ufj/d5/r8O0qD7+L644OYWgHc/P7nDL4THszw7AJSMCLm1WGvFMQZjjKoqCoCuOo77Q5xmH3z42rFr8s4XH293A/eM7wdtSRyriBCniZSDAkU/oBrXiOoprnFwHEdFBD8MJI3TO4m1h1zHd074QdCWRnFqRLw4TWRf1zZ96tEtVKJI6lnG5ZnfdKFaYWmlKklWV1FN/ULYplF0wsVqfz2KrYp4y6srsrtzq/Y90iWfDJ7Bc1ze2P88R7b3yV+VezQWivrtlWGZXpz3iBML9LsiUsrVIhg9umuf7u/qls8unGPTuo08193LhclxZpcWma8u077mYTm6a69+OnSWKE2MI6ZsENGkXufg1h2ytlSW8TvTBK5Ld2s731wdRkTY3dnNWweOoCjTi/PyWGuHpFkdjKix1lIOC2xe36Knf7lImmeoggKPt2+mt6OTW3f/5Lurw+zp7Ka3YzO1eqIAAriqKkYEEKnnFtc4NJfKRGnC0MQYtSTh9b0HqUQ1BkZHWFpdoWt9q4zOTKGqYhxjqEQRM4vzHNq2k7Njl9jQ2MTGxmbiNKUUhCxUl7m9dJfDPX18f/0KrU1raQyL5DbHFREVkKmFOX31yX5pLjUwNDlOc7HMsWcOM7f8N55xWK6tUs8zXMcBwKpFEIwCFqXohzJ2e5rBiTFe7Omja0MLP9+aZHRmCkQQAd/1eOWJPUwtzFGNIxxjMKhK6Hpcn53RlqY1GnguJwcHuHjzV0Tgpd6nuTE7Q5JlbG1p5261wrnxywSej94fcdV1nEItjeX0pR/l5Z17dKUzlvUND2FVOXX+LPU8483+F/h65DwjUxM0FoqICKqKvPfVqYGgEB6ux3Ga5JnnGUeaimVd19DIrk1bJPQ8Cl7AyB8T/HTzBqHno+i/sAhunuXvp0nS44dhmyaJqqourlRkvnKP3+fnaAgL1NKE1ST+DwYQER58gbe//Kgn9AvH8zx7FqQk9wvWWsmtxRiDI+Z/5gf5B1XYjuJWHeqAAAAAAElFTkSuQmCC">ChatGPT</A>            <DT><A href="https://chatgpt.sbaliyun.com/" add_date="1675410992" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABj0lEQVQ4jXXST4jNURjG8c/c0Z2NmLCZGUVmaOymsLNSViwslCILG0LJSlY2Njb+lZnJmMZEVhaEKIQkCxNZMMwgWwuUvzM1DRbnubnd7j31q9/zvp3nnPN93nat10osxzfM19Xb8bcm2uoalehODKEfn/EHJzGB35hpdlql7v82LmBB9EhOfItXONbkcLAKl/AkegPu4SYGUluD5zjbaDKAKUyn2Y3X2JX+PgxicfQ0+ihA4DKG8TBvf4NfeIFreIkqzmMWixQ+kxUsQQ8uogtz+IKd2BzTXoxjE7ZgG97X4M0FUge+KtF14iqO40iAXo/h1pgdksYPPMZpHMj1RvCoDvAMjmKPMhP78QHLalGN4RlW4LAS5V6cwE/swC18CsjZmHbUIG4M0Psxm8dHbMe5PPM7VmMSa8NlsHbFvkQjUEdxMHp3gPXjTBJ6GjP8H4YhZVx7o9fjBh5gXWoTStxdGlZbvlO5+jslmfHUq7iCuw17mq6FWKpkfkeBO6WMdLfCqtJqc2Ojmrf2tNrwD6M5XQ92QWqPAAAAAElFTkSuQmCC">Ai Chat公益版</A>            <DT><A href="https://sms-activate.org/" add_date="1675998462" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVUlEQVQ4jXWSTUiUQRjHfzPzvu6HH5uaLS6uVkqCSgV1MbpKRAlCdehYkOe+ILqEEJVdTIgiCKJL9HGL6GAgdOggpaRhbSxahoJkpiHul/vOTId9t1bRP8wMw/P8n+c/z/xhPSRbwPb9j1kQFgT42wbUAp0S4lIS8gwLwAgwNdp7wG10MoEd97+sFpNFyWmBk0Ar8Bn4AOiOaPhgNCRjD0+0fC8kimbw3horTfPARNIpIV8AVoAbtq+zBunVe0ZHHeWkQcx8W0otaynCGKakcvZbY2tewHRRQTfQCNxLXNx3XHu2QkgWBPwxWmsPG6h0VJWxYkkgQwa5JKQ+GljLPpNAEDjcAI8AYTChgE0Ph5WscpXaHXRUfTjI2pol5RkTVEJWCrx2Kex81nEjEtgLJGchC9iWqkACp7It7Wk3v6bnhNS/pXVqXJxtUikvnZt9p60Ilhk9tGdwMiGBeuBn8S1Xh364mbxX3VYXnm2qdbaXqUDceES1SH16emdiNBiMxeLV7kpDxK5aEALoATTwCuh3pbh0vSt+c2x+ZezjXObWsdbI7cEj8cmvy/ld5Url82i39+V0ang69QYwDvDLV9EMXMkbO/9kfPFQcjFzPqdtur2uwskDuVx25PmD5HwfKP/Hhoo2KAcuA699JTMU5rGsJHc3uqxM0eOrhhLndvteyANWQA4YB06fArWz8FMAdcCA3/QfivO75hexwGO/S6Qkr8knd2zgrbucARLAWSDmrw7gHNC/Gbm0StHSYaCLwlANkAImgfcUZlTM2xRqq8BmsgH+Ahwh13ddwEN4AAAAAElFTkSuQmCC">虚拟电话</A>            <DT><A href="https://v2cross.com/archives/1884" add_date="1676026528" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA0UlEQVQ4jd3RrU5DQRAF4O/elh9DBbLQ1GDxFUhkFQjeoAqN4Q3QvAGiop4EXVFZQwhPQXDQBChmNlk2vVeRkDDJJJtzZs7ZmeGvo9OAVy3cr5hUqJsauhjiDL1CqI7mVqcTrLDGMybYLmr7OMVWKVJH8U0IpFziAmPMAnvHUZpnL1TzuMZbZC72iluMwtAOHoK8i/kPcZU1vWCKc+xumn+Eeywi0w7muMSgqE8L/bHRfRzjAB94wmPGp9N9bvpB42nCrZGvineVYWt8tQj/l/gGo2omVWr9y2kAAAAASUVORK5CYII=">优质免费节点每天测速更新2022（6小时更新一次） – v2cross</A>            <DT><A href="https://clashios.com/taiwan-nodes-share-free-and-paid/" add_date="1680159704" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACI0lEQVQ4jT1Sy05TYRic+f9zkEs5XAW8EIwp2oImLIxuXLkxvoFLHsd3cKcPYIwrEhZiTDTGGGK4CpR7udmWnhbaU875x8Up7me+mW9mKMlJhnROMeWD4dfvpQ9zmYm7fbOvTO8g5AECQRCAAUBCEikLIGmdrCzfnn3dCLqb+2e+6QJEQ5IgQXpAyodAJqJ3Y+z+5NH8XCaytW8rraYdfvIocUn7PmmAlAJBtAx//alsbA9kH0TjQ+bmYOnH6uXWoaWVlILaBEgAeZWUfy925iZbzcj1Z6KoYa2F7wOpAJkqkNcs3wYPs7X1gtffO5AJ4sLB6PPHPeMjDglJEoI8AA4ypCTRDT6bicNKctlondaD7L3uiTFBEECJ/1MSQaY6gpjpSFotr9O/srHt6oRSD4RI0APSiACRsnGi3vxMlCyiGnZk806eBUk40Ahi+2lKkkTD1cLem/fzR8P57SD/9svWWSmUSd1QBEFPUiqSQKROKtV3nz5/XPhpnalHycsX02OjfU7OwjiKgCEpAIKTIO3sndwZH4mMLuJ44tbwxv4hRCcJKY5GEoHEOd9a0mwfVpbXN8OwGdfilaW1YrEqwKhdFAAvbcBaWymXj//Wy+flqB52WXuVmPpFpVg8TkckwgggPIDOOWu5u3uwuLyxW9iMKqeNuH5pcF4N19aXJBhjBIkk4AEiKWlqOrezX8plJ4NgKG7V4g4av+fpVC6N8Xod+AepzSstdvqmhAAAAABJRU5ErkJggg==">台湾节点分享 | 2023 免费和付费台湾节点-Clash 爱好者</A>            <DT><A href="https://www.jianshu.com/p/4a8f4af4e803" add_date="1680226318" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">【Git】rebase 用法小结 - 简书</A>            <DT><A href="https://tinychen.com/20200414-iptables-principle-introduction/" add_date="1680258060" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAADG0lEQVQ4jQEQA+/8AZONhDg4NH1zeUM9LgkLDhgcHvDk3CUvNSU8TPbf4Pyusw06NwZAPT44O9jd3wQHCAHb08T4+f3p5eLPwb0PEhIPGBwHDhbo0qz9DSJeaXn28/UWGRh7fYGGhYcIExX9+/sDTUpAIyMk5OHhDQ4NDQgGycbK/vnqJS1C5+Xf49fMMDtJzc3OZ2ptBQwPAP8AAAIAA7O3vAQDAVRXWBQZHtrY1yssJA4YI97SwioqJvwKHCotMV1gYt/j5QcKCQD//wEBAQP4+gLAwcPGx8g2NjJFS1L0+Pvg1tAXIivi2tRFSE2krLSYlpgNFRX9+/wBAgAAAAEDNyUS8fkB3NzfqauwAgH+TE5PGx8jBQEFPklU8fb/XGFj/QUGAgEA/wD/AAAA/wD/AE8uFCchGBQZGQACBgAAAD08OMjFvPv28Pn39U5QTwADBhMdHwQOEgcRFAkSFAgSFAP8/QH8DxYcHBcNDgr5+/3b2tyipacJCgjh2dmKk5cJCQn19PEOEA/9/f77+/sBAgEDBxMXAwUDDg4OFhgYGhkW/gAC7u/057y9AL693hAUiYB8CAcI2NbW/P77CAoL/Pv8AxIaFzkwJhUTDgoHBfz9/hQVEPQDBTLu8AX9/8f4/NLPz0JEQUhFRfv3+N3c3AMEBQNDQDQjIBoRDgkQDgoPDggjHxm5t8ITISAeR0PJzs7y8vXDwsHY2txFQ0JCQD7w7ewDSkg7+fv6+vv89vf5Dw4LwsLP3tvfipqZZGtpNzY3ztHQ7uzs8vn9xsLA8PDxRkVFAysrIQABAf8A/wMCA/Lx9K2vvFtcXXdvcPDt8i0rLFVVVPL398/KywEHCujr7sXCwgM8PDH9+/329/cNDgmkp7oKCQyfmpr9/f3+//329/cIBwdUUVE0NjTPzcns6ecFDhIC7O/v+fr4CQoHycnW8O3veXR1EQ4Q8/P1/v7/AgIC+/z76+npSEJDwb6/bWpqAPj2AgkGB/3/APb198TE0DQyNEhGR+bo6AD/Af37/P39/gEAAQUGBu/y8gcGB4+RkbexrvJcaMHN5VWPAAAAAElFTkSuQmCC">iptables的四表五链与NAT工作原理 - TinyChen&#39;s Studio - 互联网技术学习工作经验分享</A>            <DT><A href="https://harbor.yusur.tech/harbor/projects" add_date="1680572639" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACs0lEQVQ4jU3S3UuTYRgG8Pt+3ufVaaWbU+l7r0EgoYF9SKw0WLVyB2EhRdlBH6D/QGf9C9lRRyIddDAQmlJENbY6yFpqRkWaDEmyzTnzY3NLtvfd+9x3B6voOr2um/vkh0QEAMzMzJqmAUAqlUqlFm3brq9vMAxDSlluEREA5P/rz58/hUKhRCIhpdQ0YZrW1m01/tOnznV1CaExsxBC/lsHg8FQ6JHX6+3u7vZ4DE3TVlZX3k+8+/Al3treaWx3AQARQalkM/PIyEhPz8VY7C3/DREx81LGfBidC4/Hw5GX+VyOiICIFhYWLl++FI1GmTn3K/N8PGhZJjO/j6fvPHgbm1lKJpN9/X3jE5NEJBExHH6x1+Px+Xwl23oydf9ZLJReWz7RdjMWXw4cayrZ6t18oav3ttFsIKIkotnZrx0dnQBg26XddS29vt2CanP54t6GLV+SWZ14l3uLy8Hhp6N+X6coFAqFQrGxsREAhBCp9Xjkw+jiysKexmpCBJukQAQkxvTP1Y18XgohAICIAaBCdygufkvNGO5DDc6t549UruasucXsj+X8GuCFq7cMd4VwOBw1NdsSyQQiMvGBPcfbm0/W1jiZGQC2u6o7Wnb2nmo+uIMfBwdLZlEgYlvb4TdjY7ZdYuBfxQ3PjuZd9fsBQCASkWlaADD2+tXi9zldl4KZ/f4zm5ubw8PDmqYxWAhys5hXSilFRFRZWTk9PR2JvrzSe03XdUlEdXXu/v7+gXsDgJytmywUlMftlFICAABMTU0NDNw96/e3H21XSklEVEp5vcdtpYYGh2yZB1du3rW+v7Yts56Jxd58/Pgp0BW4fuMGESEilgmUOaWX05EXkdmv8czGmlUydV1vatoXCARaW1vLqP8clF8TUZm3aRWzmSwROZ2uqqoqAFBKIWKZ92+4TJFpHuXymAAAAABJRU5ErkJggg=="></A>            <DT><A href="https://thenounproject.com/browse/icons/term/avatar/" add_date="1680858401" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAcUlEQVQ4je3OoRHAIBAEwE8cAgRfAnSC+AJogQpo7D2WBmiFQWCY+QhEXGIis+bM3cwB/N4dO5RSRLTWKqVYa40xANB7R8QQAgDUWltr9y7GOOccYxCR956Zmdk5l1ISERHJOe/m+cElRNRav1z6PboAsf8y/Cvu8V8AAAAASUVORK5CYII=">Avatar Icons - Free SVG &amp; PNG Avatar Images - Noun Project</A>            <DT><A href="https://yeasy.gitbook.io/docker_practice/image/manifest" add_date="1681452941" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC20lEQVQ4jY2SW0hUURSG/33OGWeGccxKKbWEMqIiS3JEu0hJGZZWD1KKZdBT9qAFmiWhHC3MhwLpRnShC9GDL1HSTUzTcihDxTIxTTHHK86oOc2cxjP7rB7MUBNqPe2H/a39r/Vt4D+qrKxMnDo3p6eb1NDV8Y4FQWeHoN/5T5iIBAAos1qNX6vqs1T/oBaXaPSQZKSueYHn5mIYAAYiRkQMABrtyvZWJ2/6wol6cgtoCOA2iJ724NAd0lyPTrZhYAA+2ZUzJvtQEaupFRSzr2rLzoG/6hHFu7e6aiLXW9lsenFxbeBgTzcza4r2Tk45a9ZJGZ1Xb/LLK6Mo4luHuDvQx/s9Pl6nVFVmJR1JuzwjwdLz7x6q7rF9BsBdnBxDPjopUOnr5d3jnD0K3iwOjRm8iQ6rztFva2kNWHkbABMBWQBeI6iw5jgjnjrY32/MiF3uf3hjmGlk1OlV/cxCiDLKVj1/SQnOTvJGr6VBYmk5u2I6QMQEQNYgV+s17ury+3hsRcKaRakHo8O8imeC++gEYWLcyUaiLGQ5EKn5JW+TegVdwdEdW6plWRbAGP21wfSklNONbV3aqxabWvqsgb9tbuPltfXq4zfvtXtPKq4DgCxPqp1SBgIYAzHaworvm4NzKy15WkD4JsSGSOQnepnH7RKq2u3DF/MrwzB87cdvjgBAkAGBAeTayfIRg1NxJ7jWZO/EwIdKZuRuqc8+Jt5pGGTXPinMNzXJOEP1VALnLmw1hqFaiAVvWR4KX7ubvb1iEMvVqLyBmP2f3zvwYOF8f4NL4iFOeY99+sgSZUI/4UC2GAyCCTy8o0ePRmDZGEoO1/WWoOIRlhRVOZnO8NTpqRiZHh8AJFihiRYYYISAZui1AeBnOwpNdVQoy4XCDTUykUO6MJC3qXSufw86iQgtBx1qBl6oh/BE2Yu4qcUCADIv6ecEpzXYQDlYR5HQgf5YEWZcmqZtdv0CG4NCkbdIIpMAAAAASUVORK5CYII=">构建多种系统架构支持的 Docker 镜像 - Docker — 从入门到实践</A>            <DT><A href="http://dockeradv.baoshu.red/buildx/multi-arch-images.html" add_date="1681696585" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">使用 buildx 构建多种系统架构支持的 Docker 镜像 · Docker实战</A>            <DT><A href="https://artifacthub.io/packages/search?kind=0" add_date="1681702842" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB4klEQVQ4jWP0Kpn4jZGDkeE/AyHwn4GR6/8PFkzVOoqSkY6Gv//+XXnw0vUHz+HijAz/vzFyMCta+8CFJEX4cnxtUjzM7jx9zcDAkORuIinMf+/5u68/fsL0MEA1cHGwRTkbloY4/P77t3PVgXVHLh+6fO/qo1fORirRjgZMjEw3n775++8fAwMDo2PpDDY2lo5ETwkhvrk7T+89fwvZgczMTK5Gaoluxnefv69duOPv338sDAwM0iICGopS6X2rHr96j+bRv3//7Th949aTN9Pyg8UFeZ+9+cjEwMDAxMT4/cevrz9+4QqfT99//fjx+z8zEwMDAxMDA8P///8ZGBgYGRlxaWBiYmRgYGD6zwDVQBJggpsNsQcr+PfvPwMDAwMjTMO/P3+5Odi4ONlxaeDnYufgYP3/9x9Uw/O3n6/ef96V7OFqrA41BwaYmZk8zTTakzzO3Hz08v1nBkjE/fn37/CVBywszPFuRtY6Sk/ffnj5/gsDA4ORqkxNtKudrtLqw5dmbjvx589fBkjEwc0TF+aPdzFy0FU+dv0hCzOTiZr03vN3l+499+rDZ7gaRofSmWiJT0tBIsJe/+///yv3X7jx+BWy1H8GRhau/z/QEuy1By/qHrzA9Pp/Bkau/z8Bmu6/bbtTzPwAAAAASUVORK5CYII=">Artifact Hub helm仓库</A>            <DT><A href="https://github.com/helm/chartmuseum" add_date="1681782815" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">helm/chartmuseum: helm chart repository server</A>            <DT><A href="https://www.jianshu.com/p/35db56428d56" add_date="1681813296" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">使用 Helm Cli 将 chart 推送到 Harbor - 简书</A>            <DT><A href="https://helm.sh/zh/docs/chart_template_guide/getting_started/" add_date="1681889557" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADO0lEQVQ4jW1TbWxTVRh+3nNOe2+9/dho66R0dFvpCoqYGUfAEKkzUcYPE9AaZ3Qs8TuDIU4jJH40/sAf4OfMNNMQPxINQvxj1Bgy2VwIQlKlCQRF2Eawq8LWDdp1t7e99/ijHU6z99f7PnmfN0/OeR7CYhWPc1y5hUK3ejpJwjd++upb8J+ROPSVBZBclBOM73IEu16OLcQiew7sa9r57uGFWCDeu8F1T6d3fubzzbVQK/ctDx3xtNytkKfmUnDL9m4C28IEb6hZ1+6wu7znvPd2bFZ9Sw/OpiffM8aTBQCgCj3BgIQVeuaNNsUbGCzPzpySlnVSMpbkkqSUcj0xWsPs6m1GLrvt4ge7v5jniOoBCwBIKPebev7b3Lnfn7jyXf9fC5R/VPfIriZn3YpPCLQGwJdAQgKAQPsOBXNbTfiHWblcGBm/kHwV9XfNBXr3++xT+TwACNcSeb6vZ7QQ69jqi67uAFB5yFiXylZEVx5TR59a3twY7BAQd4TDLW2RWn5WY+7DlmvJBql5+rjD8TQAsmlqs3B7u7xt8WUN3fu3Na/f+Btjilq/7IGel0hRHicm6iHUG8nGa5lD+Sl7aiRF3B6Rwl4LKSEscvIb3Le7b173rFCUB8lmDzEipkvTDJCEE5C6RWSSiaJxOcPzI4d04qyMolECkSTNYTemJ1PcoT1G3OaThn6R16y9b8+f3/R3uqKtObOoBxnRGBg2lYuzGTV6Z1ao2ipSbJudq1ojll6Y5g6tTpaMwdLM1GmmOVs4DzUO5RRtDMIYNf6emJj4+YdhXnfTj7DbL8lc6ezk1B9HhUonJOe/Zo5//wuprnTm870DV1PDJykcOfYfNzZuf/P1phf6P17UqgALP/f+wcbufS9WRkmVb0SCzXuhXColNe/SV5p29q0mQUeKmfRxcEDxBzfKcjkmNNfaYrYwWNl/iAEJSdfvt+9QwtHmM6YxN1DOTQ+r/vqHAblJEjnIkl/PTVz41FbjX8md7g8vJ1OR3NDAZFVBNUxOwfRs5sn0Z3uPVqETkd0HmNTzofPv9DxfxVKBeG8aXL+eyH8VLKxYQiAGNMx4HqWS9I/5r72NIQBDr5n/j/M/EOoxWvaZDAsAAAAASUVORK5CYII=">Helm | 从这里开始吧</A>            <DT><A href="https://www.xiaohuazhuo.com/workshop" add_date="1682419104" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVQ4jZWTP2iTURTFf/d9ifYPCf4FU9CCCh06iUvQoR2KUEUHIUOKOIibiEWltqRgKIIVpJNTwcFSqiCC0KmTmaVFQSe7CYLQgm2S5suX7713HRKq1Dbqnc8595x3z4M2oxSNDg4m2mHakJF/we0KUhAB1Qujw9j4HGs/Zvi0sCGgO7Fmr8069OAEwiuSHZN0SV5AlVzwV4GWLWW/fQiSpry+iZePOjJ+EF63d6BgBFQvF7J4rhE3oF6foS/TC3ZewOsOzm4RDDaaxvskYfUral9Srk0RJC/qyP2hloj8IdDa7hkeywMDRKHg7GOOH/5GFHUQxQ7npzVX3LeXA9UrYymML+KsEtU+4MpzsjhboxEX2NoKQM6SqNxsPmiTa37PjuUeKqcJtxRnJ2RlsQYg717MUauWiGKwtqC520dpikiidXOvl8ZPIn4U68DHb+X9wtLajSepI4eMx/V6Pi89olLNciDdg5hJgTsKRrZLc+vpPF1deaKwhpMsHWYKMVnQENWAIOFYXc1QKQekUw7xA/Lm2XKimado8PV+gm6Dr0/7RjRkUpmrRGGzFSjgIHMMwjo4QH0fsLx9Dr1+9wxB53mqX57TfSqPBD04F2MMeN8EJQ2sbyTYrHyn0jknK7PxbkX8r/nlgKJhECOlotVcLmCtv81vLCGlkgX4Ca8949RpSb2dAAAAAElFTkSuQmCC">小画桌在线协作白板-工作台</A>            <DT><A href="https://github.com/CharleeWa/openai-toolbox" add_date="1684381223" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">CharleeWa/openai-toolbox: 📦️ A repository of OpenAI tools and resources to help developers more easily use OpenAI technologies and services. 一个收集各种 OpenAI 工具和资源的仓库，帮助开发者更方便地使用 OpenAI 的技术和服务。</A>            <DT><A href="https://finchat.io/" add_date="1684391073" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABnUlEQVQ4jX2SO6vqQBRGM5MbNGVsBAsRTExELGxsrGzSiJUgphZT5H8oVhZaSbBWf4KxsBV8oaIi9j7B0kETZ06R4/Ew93pXufnW7D0zGxBCmA88n0+MMcdxv4vwU/pwONTr9el0StX//B1FCPX7/Vartd1uZVn+n4AxXq1WpmkOBgOEEITQcZyPwuVy6XQ63W73eDwCAFiWTSQSkiRRAnAvPR6Pq9XqYrEghAAA/H6/pmmFQsHn8/27g2VZo9HI4/EwDCPLcqVSURRluVwCAARB+C18v1Iul8tms16v13GcQCAQjUYJIc1m0zAMy7IQQm+DvLjdbr1eT9M0Xdfv97tt27quh0KheDxuGMZms3Fjb8Hler1OJpPH4zGfzzOZjCiKkiQFg8FyuewG6H8QBIEQYppmu90+nU4MwwAAksmkqqr0SC7r9Tqfz0ciEVEUw+FwKpVqNBrn8/knQHfY7Xaz2QxjzPN8Op0ulUqxWAzC9wbRAsdxEEJFUYrFoqqqPM9TAXqk4XBYq9X2+z35AKDW27ZtCCHLsvTBL74AbMMQQEUIEjgAAAAASUVORK5CYII=">FinChat - AI Chat for Financial Analysts | FinChat.io</A>            <DT><A href="https://support.apple.com/zh-cn/HT201236" add_date="1685069178" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABLElEQVQ4jb2SMUvEQBCF39vcmhSCxWnhHxCt7MXK1sbGwsrmrKyCkFtSRSHJFVcrCGIncidY2Ata+wf8AYKFgoUQJdyOzR0cueimcrqZx/vmDbtEg8qybMnzvA7JyyiKXqc11cDcVko9iMiJ1vqrqrdcAJJHANZIdsIw/KjqtQl6vd5Cv99fHLeP1tqNoiiGaZouzyyoMUcAIgBzJE9JDqy1WwBiAIGI3IhIGMfx+wwgz/NdkgPHVd8kN7vd7lPdCYcOM0geTMwzAJIrDn9RluX99KCawHMAtO/77b8ALw5AazQaHSdJMv8b4M4BAICdIAguagFKqTMAbw0gt7WA8T+vvsQzgM9JQ3JojLmuBQCAMWYAYA/AlbV22xizKiLrJM9FJNda7zdI+I/1A4bxW6WYfmNUAAAAAElFTkSuQmCC">Mac 键盘快捷键 - 官方 Apple 支持 (中国)</A>            <DT><A href="https://platform.openai.com/account/api-keys" add_date="1685588336" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABnElEQVQ4jYXTTYhNYRgH8N+di4by0cxYSSFSaFaMLBQ2EnbIapDJwmI2FkqK5ZCVbMiCjFBSImIzKWTGAuMrX9Eg6iqRjSIW7/+6JxaeOr3ve97zPM//4zm0opZ1Jk7jI75iBCv8J+pZp+IFrmBp3u/HL1zGWez4O7nZuR1nktyM7XiCa9ia5Du4mWbNXL34kE5LMB+3MYp1+aarUngYh5uHlfiOftzDXOzGsdwvwiBeB8ksTM95chv24VAqjscEfMNTHAiKi5iDd7iLvfiBiTAW2HU8Sod+PMPGUDiHviBaEAoNTIKX+RBeYVXE6q1w3owHOKG4AzdwRODcD/TFOBktNlUKbMFOLA8NWB2q2vEpRRbmsk/xfC024Dl2YYYyJ3X0oDEOHfiMoTyXUuBL9gOKIz/TrJb9mghsCt6jE7MVq97gVASD49gTgUdDaayih0FcrXDuyLpecWYE87BMse+hIvaf6FJsu4VtEWwIj7Xso4z5ebTlXKvcmYaDQXJdmc6jodYdlI0ISesH/LdSohsX8FYRdFgZOBUEfgPfSGSpC3830gAAAABJRU5ErkJggg==">API keys - OpenAI API</A>            <DT><A href="https://zhuanlan.zhihu.com/p/210624543" add_date="1685961209" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcklEQVQ4jT3TTahVdRQF8N8+59yr5numZlmgQVQUUaOkkUKDoonRQIIgCMLyQYOa5CxMigZBDjIsIiyKjIqmFk0alDxq0CTpSUEiWYZUfqX3Xt85578bnFeDDXuyF2utvVbYn2PFS8aeFtbXI/oKFWqhQb0ylTQSav8Ib/vZC42pV8x5XidV9DNcI2MkhMxOBJCIaGVJ8+btdbsS9uZljTUqqVbvukd+cZLJFGNpLMT/jGikBqtQudzora1CKRPVw9vkwYfY+TFlAxrxyyW2rmf1eJDQhzhzlb+uSo35RqcgdPLRu0RTc/Qxevx6niMn2L+ds1OudOLODeL14/LFYzTrqKITZcrNm8WOW9j1AUtnefUbHjzEyXP8ORXbj7DjXb48JTeOhVZET5UdCssz7jvAsUVKEWcuMPmDi5PBwOmM9gpXe5kpdWQnGzkATGbs3sEN93PbJrmwTdy7SV7AtGWULKesioiCjuhFE5XMZbFlHXdfT92wcQ2/XVDmGtEWSiF6tEKuPLRFJ6tMjFg6ze435MKHXJzx/nfiucPy6BJrR3TLw0FfBsY6sheVHFBHYzTsfYDzE3loF089IrqW1Q2lZUSsbVYYdERHI2SEaK9w041i306eeE+c+pvPFsSTH8lrV/H9s6Ivcut6XlscjM2WJggtW67j02f4/DiffEu28uBXnPidO17m8OPywNf8cIZZhTFdq4rYkxezmNu8gVs3icWfpEpEkP2wq1doVysRbhRjhFmVvbesVp09JxZ/lOoh+2nwRAymRUU16E9FpVbrvNm4ZJ9KrbGnasyV8l/vkEMjFZFl0KwWKudNvOO0ff8CDNsVBiQlEB0AAAAASUVORK5CYII=">实验一: 使用frr搭建一个bgp网络环境 - 知乎</A>            <DT><A href="https://docs.gitlab.cn/jh/ci/variables/predefined_variables.html" add_date="1696988439" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB0klEQVQ4jY2RO2tUURSFv3XOnUecRIRgjC+MRYxOkcKg2ERs1UpELKxESCRWPrCU9BYp/AEWgggB/4A2Igj6A2ITUIgPZCAQgiR35t6zLEJCMiOjq1ys/Z2z94Iueb5Z9b3Twz3+o8mG55vVbj90G+1WezzF8rZnpiq7/TLfuFGsFtP/BCjEiyTdorZ2aOf1xxNDoJuYyz35Pd+8f2ygLBsvsK9i34nyGzpWkakphUXgayRd0bPl1vZMthuQ57WjWfRZoI60UKBVKiAYBIaBWEATePdXQK2S1lPKnlqcw54WjAMGvoNfSnwsolb2rOC55miKxUwSA8H+mWApw19yVULm8pJkFYH3VZEXnTAWxESyjxNoZ2XnedYO6WCEuzKHjZLgd2F9i06vo8MCDbfDph8mc03ymKEhETGtIlbedrcQgCGJM5JnOxQn8s0wKjNrmAT2A3EnneSeGvcoWpRWv0h/wH+oP6CUiXJ/QJCBHCjYqmxbsRKzupLr7N57SwWQEwpn1c18paxnD0g+IIURk04JzhudLF0+idIGULf5LPgkedn4B9Za1mG550CemarQWB8pO76AdB0YwLyKqfxAq/ZLi0vtf19mB3Zkn+eag/0yfwD+t8B/mknf4QAAAABJRU5ErkJggg==">预定义变量参考 **(FREE ALL)** | 极狐GitLab</A>            <DT><A href="https://products.groupdocs.app/viewer/app/?lang=zh&file=22cae5cf-de7b-4595-8390-22aeae69ccea%2Fswitch-per-node%20(1).odg" add_date="1700019783" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACFklEQVQ4jcWSsUuUcRzGP9/f797jThOU1LLlwgaDGqoT1CucNajDwbd/QHAQNHSxzcEl1JTDBifBrRMidGiN6DrUkxoiQkQxhwI1KkxP3/f9fVuiRcTRz/p8eJbngfNGTgvSMyUv8bOcAChXJ8qrvc3BmQXd+bzd+p66qaoPBVpQav9ZuwpLIrKQurz1ad73oxMFt3Nv6+IuPqjwCOSbqr5H2ANAuSgiGdAGgRfH5vjZh/72HQADkJkupDyNz6rSqaLDsSDsQtgUlQ5R6UDYjAVhl4oOq9LpaXw2M11IAZjMWKE+CG1OlUqc+CsDbfnAM1mBCdBq0GqBicAz2ZWBtjxOfFUqg9DmMmOFehN6ZliE68bQtzzUspaeKXkikgW2Y16UjXlRFtgWkWx6puQtD7WsGUOfQFPg2ScGzC6KEadVAI01G06VMpCMnG2InG0AkqqUG2s2HIAJnQWMiPwxFd5BDpE3DnneOlm8M+/7kUXngKQ6FtWxCCQtOjfv+1HrZPFqZMwUIl+iwE4JQHq8VGttMI5Iq6IToQlexV38lop0AahzL4/CimI8dtBujYyok0OrUU9xMLP+f8a7T99VhYlYryo9wL5AAWEDRwhcUtEMSJPA65DY6Orj5q8nn6gqbZPFa5GxDwS9p3AF1IrIL+f4KCoL+78vLH0euXF85pW783m7s1OXPIySZo8fR+v9949Oc8+Xv/cy5lkOatHQAAAAAElFTkSuQmCC">Free Online Viewer | Free GroupDocs Apps</A>        </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1672910185" last_modified="1675931596">网络</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">网络工程</H3>            <DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">网络工具</H3>                <DL><p>                    <DT><A href="http://sectools.org/" add_date="1372410613" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByUlEQVQ4jd2TTUgUARzFfzOjuzvtOMWsbiaD5X7Rghm61FKEgpGY1SnoEIGnoi7eyqN7CAy6SEQRHcWsDrmFpwS3DyKCiGIJZQgDy6IcW8vdZnednekQEVs37dQ7/nm/d3i8vwAQV7pd1qCZ/LQgrBX+JXE98D8JqPnzUKvIJI90kuzbgx7W8fi8mB9NXmSe8/jOA77MLVT5qzoI79vJ6YsDRPQgF25OVhnPHuujYJW4l37I3aHr2KVydUD/lUF6e3YzMnEfgOiOdt6ZOQCatTqM11kAzhzuZmm5wHB/CtOYR2rRO1Lnbg+T6IiRyRqcPNiFV/bjlMs8vTVKbuYljc0hEvEYxzt3MZ01qFcVDp3o5f0HE+Ha5DN3RawgSSJH97bjAq/ezGOVbdLjN5C9HpL7e2hsqKct1IQoiGSysyyY30jEWpDEQkMq2BpHC2ioG2R8tRJFu0KhaKNti7IxqKOqdQRUPwFV4fuqQ86qYJUc0pfGf3Yg1Ej4VIUD5weItEZJNKl8yuX5/DUPgOaXCW/ReDS3yOLyClNDl1mafYuzavPXEjdtD9E1eIrNka14JBFclwpQtEo8uTqGMTEFzm/kP5iyAOt75x84uKBj476yUgAAAABJRU5ErkJggg==">SecTools.Org Top Network Security Tools</A>                    <DT><A href="http://nmap.org/" add_date="1372324627" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByUlEQVQ4jd2TTUgUARzFfzOjuzvtOMWsbiaD5X7Rghm61FKEgpGY1SnoEIGnoi7eyqN7CAy6SEQRHcWsDrmFpwS3DyKCiGIJZQgDy6IcW8vdZnednekQEVs37dQ7/nm/d3i8vwAQV7pd1qCZ/LQgrBX+JXE98D8JqPnzUKvIJI90kuzbgx7W8fi8mB9NXmSe8/jOA77MLVT5qzoI79vJ6YsDRPQgF25OVhnPHuujYJW4l37I3aHr2KVydUD/lUF6e3YzMnEfgOiOdt6ZOQCatTqM11kAzhzuZmm5wHB/CtOYR2rRO1Lnbg+T6IiRyRqcPNiFV/bjlMs8vTVKbuYljc0hEvEYxzt3MZ01qFcVDp3o5f0HE+Ha5DN3RawgSSJH97bjAq/ezGOVbdLjN5C9HpL7e2hsqKct1IQoiGSysyyY30jEWpDEQkMq2BpHC2ioG2R8tRJFu0KhaKNti7IxqKOqdQRUPwFV4fuqQ86qYJUc0pfGf3Yg1Ej4VIUD5weItEZJNKl8yuX5/DUPgOaXCW/ReDS3yOLyClNDl1mafYuzavPXEjdtD9E1eIrNka14JBFclwpQtEo8uTqGMTEFzm/kP5iyAOt75x84uKBj476yUgAAAABJRU5ErkJggg==">Nmap - Free Security Scanner For Network Exploration &amp; Security Audits.</A>                </DT></DT></p></DL><p>                <DT><H3 add_date="1596439270" last_modified="1596439270">网络学习论坛</H3>                <DL><p>                    <DT><A href="http://www.6san.com/630/" add_date="1372323708">wireshark捕获/过滤指定ip地址数据包 | 6san.com</A>                    <DT><A href="http://bbs.hh010.com/" add_date="1362969704" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABs0lEQVQ4jX2TL2wUQRjFfwwnpuKSHdGExe0liLsEwQlESRCLO3nnWoGgCaK42pKQgOQc5ypJXStIru5wBEFSCY6Ru4JkPkGynyABsf9u2YOXTDI789733nwze+vgcvObLRTAzTzlbzy6+thbKyKLicgB2MxTPs1T9gJo5nvkiJwi6xohihHucJ5OsfWGwsHntoBWYz0/BKsUGRRBIQMyMOfplHEUNYKbkxSC8k0EAFsNgJM4BqttDKuYbXENyYWj1XVv/dnsQTnJBawiItz+MHz46mkyYDB0DfH54/uk9wbsD/d7RQb5T77kP+CXxapiUMHvuea8dexxPO6Jt1OoB80iDMDizWUj1J2yLmLbzo34gIo2V2f/IdrG+vQQ1KOxYKxNsDZh8rLftP8hGTvwAaOZL93DbuLoeMXoeLU7BWCom+9gtFj1XuHX17OeuOEEMKWzQqjaFycdso0TCGXxTrLq2yCKSlOQyWLZdQPW71JU2vuZvLgCFBXFhBAoQtkAVxW7uG7/mvpNWMBNz7j7ZIkKBB+wgHl7NMU5R/ChEZwtLzoJANbvZzjnKCpD5xzfN6f8AZAJsU1x5WLbAAAAAElFTkSuQmCC">鸿鹄论坛-CCNA论坛,思科华为,思科论坛,CCNA题库,CCNA考试,CCNP题库,CCIE培训,思科认证,中国专业的思科华为技术社区 - 思科华为技术论坛</A>                    <DT><A href="http://forum.irack.cn/forum.php" add_date="1362969918" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACaklEQVQ4jZ2Ty0tUcRTHP+c3d+69M+NjxjETR8pKQqKERKkg6UkUtKhWgYsIhBZBL8oWtqlVGxdt3IUUEhGE/0AvoUVEiyLoCZHYa0JndEbneeeeFubYtKsvnMXhnPM9b+EvjE7k9MnLEu+mPLo3WJQ9+DDtsanDYk+PzeDhsPzpX1WGxzJ651kOzyzpjiW8HllFKuuz48oMCqDgCJzcGWF4oF6qBEdGZjXVUiQQBAP4QP9al6HeKJbA9RdzTH4uVLN6RUjMudw92yRydSKrL9YvsifqciAWYqrgkSxVAHhfKeMaIUEAgM5wEBQezed5Pl9i35d6rMlCnuOtYU4012Eboc218JcK5vL3NPhwKRHFV0UE6gKG/iaXsZkF7n/IYxWSPveeL/DUzXOqq4Frr9JUFCJB4fzWRkRg4EGSxbISdwwXN0cZfZNhOu9R/BlAdg3NaNIq12wiGIAze+sZ3B0B4OZkjhsPM5QrS0PT337t2FiFrOHTR4P6teu8nS5VCcYnirx7bWrsYqBli2DEQLRNsUOKX1mRvi4LVVCFnk6rxmaHlPgaxQRAtp9O6XS5RLzdxysJs19h7ptgKkLQWspWqYAnSmNCaW4HJ6SkvhrWhWwsb7kjgfhapa0XTJNSFCiqARFs8XFRNA2lGcj8WGnFch2B2hkiojgxwW4ADEgWJE31Gpfh2oI51u/wvzjYZ2MuHI3IoZ5/J9m2Mci5oxGpPtOtZws6/jaLxpRAXNGYoA0GjCBZH0kr/iz4KeFgIsyl/Y0rz7SMn4uePv6W51WxxFTQYy4MGGjIQUc5QLftsLc1xOo6qxr3C/9L+G+Eds6fAAAAAElFTkSuQmCC">iRACK 技术社区</A>                    <DT><A href="http://www.isacn.org/?sessid=" add_date="1363093879" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADP0lEQVQ4jU3S3U9bZQDH8e/znNPTt0MLlJZWXgTCZFCYMBBNxoaMuJiJRhezGxONiWbxxgvjH7B/wjs1URMv5hYXkyXbNMuMTubGWIKDbsIGhVrWl3FoCz20nPbxwrjs9wd8kl/yFfLwJyrgMyjsVpACPv/gBOev3mYtbfHRO8e4cO0WLqkzMzXKVxeuUUfw/3RNQ+pScOJIP6enh2k0PfxweY6P3z1GuDlA1rLojIaJhAPUalWUgpGDnTT4DMABUUfu12ucvzzPwso/fHhqgpnJYa7+vsCn771KOlOgszVIsWBTre7jMQy6Y0EGe9sBiUAgxOgZpeo1UCCAA52ttEVCjA50kNvaIZ21iISCPM4XaTS9NJgG316apa4Euq4jnx5CoRAsJ3P8ejvBF+euIyTMHB2kXNkj3GxStsvM30/h1V2cnBjCa2jPAoBQTL/Ux1BfO/ZehW9+mmVzq8SLvW1IKTF9PhobvLz/5jhKgVN1ngUEseYArx2Js12wQQgUNb6++Bser49wk4mQdWItARJrOa7c+Ita7Skg6IqGODU9xl6lwnpmC5QCBHbFodn0kMkWULhYTWVZXE7R3/McDT4/OoCGJBptYadsM9TbhtvQ2KvWEEJnaqyPlXSGUJOf/HaR7lgLY/EDlEolllwSIYfPqINdEd4+PsLiw03ao830P9/K9TsPMAwX7eEgLaEAP99M4EKwkS+wmsqya9u4NB0Rmf5MvXV0mFv3HvJKvIdKrY7b0DF0jWgoiHS5uHtvlVCTl1xhF2cfFv5+hLVbxd7dQ395oJucVcL0e7Gr++QLJdY3nnB4qIvVdA63SyeZtpi/v4Pp9WAYLsYP9bK++YT5xTVkeyzELzeX2MwXCTZ4eZDMMTLYwXIyz0BXB3cTG0yNv8Dp18dZzxS4k0hy7socswuPUICW2ImetStV4j1RlIK5pSSTY338sbBCW6yRSJPJlz/eYDWV5eTkIRynSsYqAQpN05Blx0FJSR1IPt7CcRysYhFdk3x3cZZ4d4xQwE8qZ/H9pT/Jb9v/NY8ApdCi8eNn/R4Dq1RGoqHrGqFgAL/bYGe/wnIyxxsTg2xkt/F6DBQC02tg+twE/G7+BXp1SshQEcleAAAAAElFTkSuQmCC">ISA中文站 - ISA中文站 - The #1 Unofficial ISA Server Chinese Website</A>                    <DT><A href="http://so.hh010.com/f/search?sId=3132571&ts=1373379220&mySign=3d70a5d7&q=%E9%97%AB%E8%BE%89ccnp%E8%A7%86%E9%A2%91%E4%B8%8B%E8%BD%BD&qs=word.hint.1&rfh=1" add_date="1373380195" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAEklEQVQ4jWNgGAWjYBSMAggAAAQQAAF/TXiOAAAAAElFTkSuQmCC">鸿鹄论坛_闫辉ccnp视频下载_纵横搜索</A>                    <DT><A href="http://www.yeslab.net/" add_date="1374371907" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACx0lEQVQ4jZXTwWuUZxDH8e+87/O+7+6r79aYrInmkAa0VBFbPRR6axsrEUQvWhuKHsyhCIIgCv4XHvQgWhCqVGxabEtPpYdaCNhDoIpozLoN2dXU3WR3NVmzJvs+z3hYjcfSuc8w8+MzYq1VEUFV8TyP/6q2tXgIiEMAA6CqCNB8vkDpcRnfGMABoM6hzkEYkcslbOzJo1ZR4yEoRkRwaYoYw29//kHge2R9g0NBFcKIIAxYmizw70yJfUeP0LdlMzZNcTbFWGcxQYC1Ketmn/LZyAjkkrc7t1o8ufQta3ZsZToTM3vjJktrs9ggg5+sRVLrtPHzL9QuX2WhOo9fqdJz8BDdJ46xdPcOM+cv0//1MZifp3h9jL6DB+jdu4co34OfiZB6YVKr569gb/3F4q6tbBs5zPTxE6QLTYIPtjNw9iyV6z8g9Xkef3mALZ9/Sn9XNymdEHn5oqmqqsvVmt7+eEhL5y6oU9UXhYIuF2f03tB+vffFqKqq3hof10JhSp21mrZXNLWpemG8BpemhPn1LJ45SfXHX5k+PErr93EefvQJQd9G3r/xDaoKL5cxJgDPAxEEwVPnEN/vpJpk2f7Td9jZWZ4cH2X9V4d479pFVEFE8ELTGaQKdMy8deD7LDZqNGjT/f0VmoUp4g93UqvXwFr8IORZo07/pn5EOpBAEOecvlE4MTHBdLFIHMcQhNjWEuoUFSV1jjiTZWj3bkwQgIIIyBvKKyvLRFGGtN3usBawqoRhtErCWoso4HuvzwDjnMMYw4P7D7g5NoYxPkkuh1MliiKGh4cplUpMTj2kudgk8ENOnj6Fcw4R6VBWVQbeHSCKMxhjqDXqvJMk3Pn7PnGc5Z/iI8rlMqpCV1c38jo3AGm32yoiWGt51qjRarWYm5vD+IZsNkulUmFDby9JklAql8nnNzA4OLi6gfzfdwZWm1WVV33YctVsK7hrAAAAAElFTkSuQmCC">思科(CISCO)CCNA培训_CCNP培训_CCIE培训 - YesLab 高端CCIE培训实验室</A>                </DT></DT></DT></DT></DT></DT></p></DL><p>            </p></DT></p></DT></p></DL><p>            <DT><H3 add_date="1669800305" last_modified="1672913297">cilium</H3>            <DL><p>                <DT><A href="https://domc.me/2021/10/17/cilium_0_to_0_1/" add_date="1669791044" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADBElEQVQ4jV2TTWicZRSFz7nv+873ZX4TbQmtiUxLRQ10o0U3RuKi6kZcuC6IBVNaKvhDSyiIIFhd1IULJcVCQBFBxEVXuqhFUSjoohulpNqf2Imjk/+Z+eb7ed/rYtJQvPvn3Hs45xIAFCABBYBkbt+0V/OyCmfygAkAcIIlRfjeKhbKZ//46V6G2J6rR8YrDzcb73uPWWPEDTzgdShqEBhbwAdkTvRjt7Q4xwUMAIAKSPvI+Eh1sv5NJZLDKwkCsr5HkZrhEgBRRWmc1+DN/RUjK73w7a/Lmy89+1k7sQRCd6L6XiWWw51eSCXrOZk4aM2eR0EAmifIF3+m9tasxGVdWvNpxdnnHhmrnyXar3FjrvmksPRjrsKQbEo0/QorL74NGrdjr2hf162FV9Fr3UASIiU1lIQIIZ0WhZ21RlzIEsiuB1l+4QzUOPZv/Ybu71c0W2mpHT9Afeok1v/dgBAMChiBVbpjIuAzqVdFyEUaeyAuguYZWl+d08UPj3Htl+8IDRpNTpGTh+DVQBAkLVQFnOHq6YdSpThNu7D7n0D9xNd3LydUAREMvahqUNycfxPJlS8RNUYRQvAWVGDH7XbCIPKNDrTIcFfE1XdBXImwkfZ6gKkCRgBrhXcC0CygQ5KCkKW8Nf+WJneuk7YEE5d1/+vzjHdPKHwOKDQbCMuxtixUL8UGR7sm8n7lpkF/DaY8huaJj0gNCgBK0lZHoQCT29eUrhQcYZM+L4tqmC9CyMSWqOttXfniNPL1f9RVG7C1MdraGF11FDro6V+fv6v9G1fVjFTgNRRFyM8TADbnDpyrxeaNpXVN+92uY20vQ6MJbhcRJPLOMtK//1TG1fy+2ETdwn9y8MK14/YdQGrLxZnObpmqGHl+ENeCDlZ9sbosSR8kCRAKccGM1GU0QtTL/aXO1uop3ek6gIuP7y0/9nT1gyJw1ghdFoBBCh0MCBEyEiBoyC1xfqu9eerQxVZ/mPX/3vn2yX3TSnsU4EyueCDLgCLDsiEuk/rp1IXFH+5l/gPkFHrAx7k1TwAAAABJRU5ErkJggg==">Cilium 从 0 到 0.1 | Domechn.</A>                <DT><A href="https://lpc.events/event/7/contributions/674/attachments/568/1002/plumbers_2020_cilium_load_balancer.pdf" add_date="1669800319">plumbers_2020_cilium_load_balancer.pdf</A>                <DT><A href="https://www.cnxct.com/how-does-cilium-use-ebpf-with-go-and-c/" add_date="1669800322">Cilium eBPF实现机制源码分析 – CFC4N的博客</A>                <DT><A href="https://arthurchiao.art/blog/cilium-bpf-xdp-reference-guide-zh/#231-%E5%8A%A0%E8%BD%BD-xdp-bpf-%E5%AF%B9%E8%B1%A1%E6%96%87%E4%BB%B6" add_date="1669800326" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jWWTz2tcdRTFP+d9k8nMBJE0mXSSaYmJSfxRSmdqKkJbKbWtGdqdmy6iKMGNe935J6gLKdSVqEtdBKRiEmhaqKKSRCJiyzwLpkmNzLTWWjNvMu+973VhUkI9q8PlcBefe4/4vyaA14CjQGl7tg5cAz4DlnaHtcvngA+A6WJxb8fo6Ch9fX0ANBoNwvBX6vV6AnwEvA1EuxfkgS9yuWz1zJmXKZfLm7lc7or3/hbggyAYiaLoxeXl5e75+Tlara2vgFeAlgMIAj7MZrPnp6amqFQOzyZJ8m6SJJfMbDFJkiXv/WXn3JWRkZE9g4OlJ69f/2XM+7TXjEsOeN6Mi+fOnaVcrsw1m81PgZ8kPSNp08ycmT1rZt/FcXxvYGCgp7OzY/jGjdoE8GUATA8OFqlUDt9vNpsXnHNLkirAn977g5IOStoAXnDOLUVR9F6l8txmsdgv4I0AODo+/hRdXV0LQRDcTtP0iJndM7PTmUzmhHPuJTM7Lem+974s6e98Pn91bGwc4FgH0N/XV8B7v+a97wbWJR1wzo3Mzc0edy7QyZOnFpIkWfXer0hK0jRdLRQKAMUOwAAkmZl5SZiZJPk0TXe8mZn9BzzolLRzvaADqN+50+iXNOScS733T0gK4zjeNzlZlZmp3W6vSbopach7H0oaajQaAL8HwDdhWGNrq33Ce/8YsAzskTSfJMlMmqZXJV02sx4z+15SqdVqHQvDGsA1B9QfPPhnure3Jzc8PFyI43jdOfej9/7pIAhuAneBx4GfJU1ks9nXFxd/OLC4uJwCbzngNrB3dfW3I6XSvtFisZiP43gVqEnyktpm1pS0P5/PT4dhbXJmZoY0TS6Y8fEOjG7g83w+V61Wqxw6VP4rk8ksmNktwEnaH0XRqZWVle7Z2a+JotbDV360TO8Db5ZKg26nTJJoNOrUaiEbG3/EwEXgHaD1aBt3NAG8ChwHBrYza8C3wCfbkB/qX0WlT5/og2KnAAAAAElFTkSuQmCC">[译] Cilium：BPF 和 XDP 参考指南（2021）</A>                <DT><A href="https://docs.cilium.io/en/v1.10/bpf/" add_date="1669800329" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACHElEQVQ4jWWSwUuUQRjGn3fm3e+bXV3dDcPqGkiQ5SFJkLpZ0aXIyjpHh/6FqKwwIoigSxAUQaeiOnWJqGsURlK5eujQsXRTc9kld/ebed8OoyvRnF4Yhvf3PPOjwyfOBu+9zwACAChzzlhuNOqiCgAAEamqS1PnHHvv+/q3be3fEUIAYK2tLvyorfyaODmepomIEsH74NL0a2WuMj/P3md9/dv37Btp1OsAunuKn6ff138vnTk1ztb64IkMs93S2/3g8ZOPMzNMIAnSqNffvnwGYOz4hIRARIvV6o1bt1drtWKxODV5yRjTbK4ZY0yk/H+w1sZIcbbWxisGQVWYeezYaQDMrKoi4py7d/eOhACiVqslQWIrDAURicj3b/MABnYPERERee9fvX7zZ23NpenBA6NkKG6LD0wI4cv0OwA7dw0SkTGm3W7ff/hoeWW5VCqP7B82xmw8IKiKtXbv8GjEjUhJklw4fy5uSJJEpINEUFVjzMDgUAytqqrKzEePHOpkUNF/Mqhqq9kEkC8UiGCNbTabF69cW62tFos9N69PlsulTaT4+bE1oijIerPW2I1+1w8DiNAiAkBEVCEqzDx19XLwnoxha7PMiygAVlXL7PKFKJrLFywzoKVSqdjdFUIgoqydlXu7nHMiwsy5pcWfs58+eJ8BYM4tVxdE6enzFznmKJ+qutTNVubyzlFH70ivuqm36obyQEfvvzv/FV/NMrVSAAAAAElFTkSuQmCC">BPF and XDP Reference Guide — Cilium 1.10.17 documentation</A>                <DT><A href="https://arthurchiao.art/blog/understanding-tc-da-mode-zh/" add_date="1669800357" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jWWTz2tcdRTFP+d9k8nMBJE0mXSSaYmJSfxRSmdqKkJbKbWtGdqdmy6iKMGNe935J6gLKdSVqEtdBKRiEmhaqKKSRCJiyzwLpkmNzLTWWjNvMu+973VhUkI9q8PlcBefe4/4vyaA14CjQGl7tg5cAz4DlnaHtcvngA+A6WJxb8fo6Ch9fX0ANBoNwvBX6vV6AnwEvA1EuxfkgS9yuWz1zJmXKZfLm7lc7or3/hbggyAYiaLoxeXl5e75+Tlara2vgFeAlgMIAj7MZrPnp6amqFQOzyZJ8m6SJJfMbDFJkiXv/WXn3JWRkZE9g4OlJ69f/2XM+7TXjEsOeN6Mi+fOnaVcrsw1m81PgZ8kPSNp08ycmT1rZt/FcXxvYGCgp7OzY/jGjdoE8GUATA8OFqlUDt9vNpsXnHNLkirAn977g5IOStoAXnDOLUVR9F6l8txmsdgv4I0AODo+/hRdXV0LQRDcTtP0iJndM7PTmUzmhHPuJTM7Lem+974s6e98Pn91bGwc4FgH0N/XV8B7v+a97wbWJR1wzo3Mzc0edy7QyZOnFpIkWfXer0hK0jRdLRQKAMUOwAAkmZl5SZiZJPk0TXe8mZn9BzzolLRzvaADqN+50+iXNOScS733T0gK4zjeNzlZlZmp3W6vSbopach7H0oaajQaAL8HwDdhWGNrq33Ce/8YsAzskTSfJMlMmqZXJV02sx4z+15SqdVqHQvDGsA1B9QfPPhnure3Jzc8PFyI43jdOfej9/7pIAhuAneBx4GfJU1ks9nXFxd/OLC4uJwCbzngNrB3dfW3I6XSvtFisZiP43gVqEnyktpm1pS0P5/PT4dhbXJmZoY0TS6Y8fEOjG7g83w+V61Wqxw6VP4rk8ksmNktwEnaH0XRqZWVle7Z2a+JotbDV360TO8Db5ZKg26nTJJoNOrUaiEbG3/EwEXgHaD1aBt3NAG8ChwHBrYza8C3wCfbkB/qX0WlT5/og2KnAAAAAElFTkSuQmCC">[译] 深入理解 tc ebpf 的 direct-action (da) 模式（2020）</A>                <DT><A href="https://arthurchiao.art/blog/lartc-qdisc-zh/" add_date="1669800359" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jWWTz2tcdRTFP+d9k8nMBJE0mXSSaYmJSfxRSmdqKkJbKbWtGdqdmy6iKMGNe935J6gLKdSVqEtdBKRiEmhaqKKSRCJiyzwLpkmNzLTWWjNvMu+973VhUkI9q8PlcBefe4/4vyaA14CjQGl7tg5cAz4DlnaHtcvngA+A6WJxb8fo6Ch9fX0ANBoNwvBX6vV6AnwEvA1EuxfkgS9yuWz1zJmXKZfLm7lc7or3/hbggyAYiaLoxeXl5e75+Tlara2vgFeAlgMIAj7MZrPnp6amqFQOzyZJ8m6SJJfMbDFJkiXv/WXn3JWRkZE9g4OlJ69f/2XM+7TXjEsOeN6Mi+fOnaVcrsw1m81PgZ8kPSNp08ycmT1rZt/FcXxvYGCgp7OzY/jGjdoE8GUATA8OFqlUDt9vNpsXnHNLkirAn977g5IOStoAXnDOLUVR9F6l8txmsdgv4I0AODo+/hRdXV0LQRDcTtP0iJndM7PTmUzmhHPuJTM7Lem+974s6e98Pn91bGwc4FgH0N/XV8B7v+a97wbWJR1wzo3Mzc0edy7QyZOnFpIkWfXer0hK0jRdLRQKAMUOwAAkmZl5SZiZJPk0TXe8mZn9BzzolLRzvaADqN+50+iXNOScS733T0gK4zjeNzlZlZmp3W6vSbopach7H0oaajQaAL8HwDdhWGNrq33Ce/8YsAzskTSfJMlMmqZXJV02sx4z+15SqdVqHQvDGsA1B9QfPPhnure3Jzc8PFyI43jdOfej9/7pIAhuAneBx4GfJU1ks9nXFxd/OLC4uJwCbzngNrB3dfW3I6XSvtFisZiP43gVqEnyktpm1pS0P5/PT4dhbXJmZoY0TS6Y8fEOjG7g83w+V61Wqxw6VP4rk8ksmNktwEnaH0XRqZWVle7Z2a+JotbDV360TO8Db5ZKg26nTJJoNOrUaiEbG3/EwEXgHaD1aBt3NAG8ChwHBrYza8C3wCfbkB/qX0WlT5/og2KnAAAAAElFTkSuQmCC">[译] 《Linux 高级路由与流量控制手册（2012）》第九章：用 tc qdisc 管理 Linux 网络带宽</A>                <DT><A href="https://www.modb.pro/db/408554" add_date="1669800361" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACyklEQVQ4jSXOzW9UZRQH4HPe996Zuf2wHbG09gMw5aOgDrRoCogGFpAIYWl0YwgBlBBilBAgBMIKDCtJgAUhxhA0MbAxgQRTU5AU0czAVKyttp2ZDq0DLZ2WInRg7r3n/Fjw/AUPqyozE5EomMgYvjkYnLhcfhbQznWRj1dHRJWIrDFEBMAwMwBVWEPGUDIbnOryZ0oUhjjf449M+tYYa4xCCcTMrKoAjOHCNL65Wr4+EFrL1TEKVSts5Ucb0xm/+6sVn9d58ZcXo4BhKkzJ3h9K3f3hp2sjO9a5ROSH2NJh47Uz3w1c+fLGsannM8SkAImID3zxoyYO/H/5ThkAoP8Uwt68Lyqiwbm+i83ffnDk1kkAoYQEoJTL/Xrlr66/QwAiGoQCAEAo8jK8r+fE0gubUuN9AOz+Za2lrw/Pu3VxkfeY2lczk7VGFCpwrFEA0N/H7/ZNDd28f8dzPJ7Y0EmBL2BSnXP2QmTpW9ls9t/BISgWLmptW7Kkvzi89ZcDbEyoErURh6MxLT+3jgvXcTxvYvpRT89vCjDz+MOJmsqaWE1MNRRVkHFca6r3HrKvzcXsbOUnW2lB65+plB8E777T/t6aTgIl06n50YZdHbuqKpobqxoOrtzpxNZvJMd5tGebyzxSuD82OtpQX9/2ZsI1lL83OpzJZUbGPovnNy9b4LVsf7WizoFIZNVab9X7T5886esfYOMkEu3ubBIiy1es9Kobm+mSf/tgU9MmqtgvKiwibAxPPkwPDd8eHGp9Y/H6eT9L7jgRTMtuY13NnjTxt7mjS516gjpERMB01Bv8rxCLVCUWejxyGlC2Ec2fESHb+OGD2qNadJsaADIGADPnM5mpYrGtbXHd6/MDqmIi0gDRuNv503TL91dv5O6m/2A2zEQioqqTk8VkMlWafapAWDjvX6v1u18Jx84p4JfLvb3pXC6vUFV9AQr9oMOJNcy4AAAAAElFTkSuQmCC">embedshim: 内核是我的边车 - 墨天轮</A>                <DT><A href="https://wiki.shileizcc.com/confluence/display/bpf/BPFTool" add_date="1669800365" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADvklEQVQ4jVWTbUxTdxjFz/9ye3tvX2lLEdpieZHCqG0pgxEQplMhyJa9iMCEMacmg43FKGYf5lwyl+gWl2XGaQzLAEO2QNSwDBddshFEw4ZMBHECG4JuULfCoNaX0nLb+9+Xkrjz5fnwJCe/k+c5BAABQNvuUH5sZOjZ0Z7ztZ6xG/ZHi97VDMvqAUCKROZ05uS7pqeyBza/sbd9n50bwZM6eZsmldYf6EqwOcMyQUEBUAARAFJ0RgBQTqGmKU+ve1D7SeuhMzNUAEDQOkmN63c09ckEJQUQBrAMQqgm3kTj07JEnSWF/m8HSAbrGlp3tP3QGUpjYuIynBW9bZ/vDdz/VyQMA1YmZ7O3VA8W1zS8m1+x+1hGQUmHOcN+f37mz7wl/wILQFryL9KHvoV8+/qd3ezM+GiRf/6eRAhDqSRBoTeSLXs+On24NK1zJWIzpZfBsIaBc6214eASpZAIIRAmB/tcZNeR5vZvTx2t881MIYpJEm1rH7vLtn3t2Pxyh2aNa0r0Yl5IhHBvYihracEn4ziWlSm1VFBIf5Dk1PTu3O2NN2/191TO3BxMl8IixFAQilgDNMYE8GrdrCHJ+pPVVXB5w/advcwCPPW5RFyhIwqev7gcCiZsqGv8wpb/3Lz/H49aHmfKVMebuIDfF9ffcbJ4+vovNhkvQGdaHUi0OQfTCzd1FG6tPvu2lfjwTFGRS6lSzcUQEhJkbJ9plbGTAdq0KsX7mWtdpQev0bTSdz7sYuV89BKE6i2ptKThwIVj03QVAMCdkWTKzssrVGtjW3heCDEMQ0EI5QUlzUg2jJe9WrO78LU9l8AwFCBBACFBq6evHDx+Akf6/9728SjVrWRKNhoTzGbzWzzPdTrd62aHu0poU6WMOjZWfVmwdcdv0ScTAYSdZZVz5PCQ7xLD8gGlnO9TchhWCxiuSiTzUT9Z8Nfnk8ZmA+6KxvEUvS2nVBYbl3rth3Np4WBAcmx6KUTebP5uf8/p4/tZwkS0CWY2MTn9LgEuWNyFV3ScKLa+ty/PMz2RA0TKARismY7fTVk54avdHfaimoafyWfj1NbeVNVz4+JZSxSP8GotVDojjbNYwxwvPJALCvHRwtxD751J1aLXk+DeWH49wmkyi6t3VREAODFJ7d98UN8yceXHfL93FlJYpE90jcRw8ojeZF22OnOXlXLZlNmR/5c5u7jl0xcd3xOAEoDQU7dp/NXzneVTIwMV3slbNjG4lERBeQJIkWXRz6k0nvi0zOkXGpq+smhSe193kccAyH8ejXwqUkFVpAAAAABJRU5ErkJggg==">BPFTool - BPF - Wiki.Shileizcc.com</A>                <DT><A href="https://www.modb.pro/db/421329" add_date="1669800368" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACyklEQVQ4jSXOzW9UZRQH4HPe996Zuf2wHbG09gMw5aOgDrRoCogGFpAIYWl0YwgBlBBilBAgBMIKDCtJgAUhxhA0MbAxgQRTU5AU0czAVKyttp2ZDq0DLZ2WInRg7r3n/Fjw/AUPqyozE5EomMgYvjkYnLhcfhbQznWRj1dHRJWIrDFEBMAwMwBVWEPGUDIbnOryZ0oUhjjf449M+tYYa4xCCcTMrKoAjOHCNL65Wr4+EFrL1TEKVSts5Ucb0xm/+6sVn9d58ZcXo4BhKkzJ3h9K3f3hp2sjO9a5ROSH2NJh47Uz3w1c+fLGsannM8SkAImID3zxoyYO/H/5ThkAoP8Uwt68Lyqiwbm+i83ffnDk1kkAoYQEoJTL/Xrlr66/QwAiGoQCAEAo8jK8r+fE0gubUuN9AOz+Za2lrw/Pu3VxkfeY2lczk7VGFCpwrFEA0N/H7/ZNDd28f8dzPJ7Y0EmBL2BSnXP2QmTpW9ls9t/BISgWLmptW7Kkvzi89ZcDbEyoErURh6MxLT+3jgvXcTxvYvpRT89vCjDz+MOJmsqaWE1MNRRVkHFca6r3HrKvzcXsbOUnW2lB65+plB8E777T/t6aTgIl06n50YZdHbuqKpobqxoOrtzpxNZvJMd5tGebyzxSuD82OtpQX9/2ZsI1lL83OpzJZUbGPovnNy9b4LVsf7WizoFIZNVab9X7T5886esfYOMkEu3ubBIiy1es9Kobm+mSf/tgU9MmqtgvKiwibAxPPkwPDd8eHGp9Y/H6eT9L7jgRTMtuY13NnjTxt7mjS516gjpERMB01Bv8rxCLVCUWejxyGlC2Ec2fESHb+OGD2qNadJsaADIGADPnM5mpYrGtbXHd6/MDqmIi0gDRuNv503TL91dv5O6m/2A2zEQioqqTk8VkMlWafapAWDjvX6v1u18Jx84p4JfLvb3pXC6vUFV9AQr9oMOJNcy4AAAAAElFTkSuQmCC">Bpftool 的特点：eBPF 对象的使用技巧及示例 - 墨天轮</A>                <DT><A href="https://www.site24x7.cn/tools/ipv4-subnetcalculator.html" add_date="1669800513" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADSUlEQVQ4jXWSPWxbVRzFz73vPT87rp9rYzdOmjhp5aahIXUS90OoVQtUkYKEqKrSiqFICCqGDAyMSEUMndqBBcQAA4qYKEgMGRCIVmpFUtI4QjFu1MRxEid51G7ij/g9v+97WSAECY50tnP+5zf8Ceec4H/0ILuQCPjxpii3xbQdswAp8P3ZwWT9XyHOOfkvT07nni9tNR5Vm4ZXLNf5Wlmz8itbP88+ftaxN0f2Ety5A9p+ZOFwy3CSJBj66GhH9JxjeuAeBQGDy4Bqy53IW+vX38tkXAAQ99KkTpavxpWDNy2TxYrPNOX3tToCjgeJESiREJhIoOv2a3I1nARQBIBdgu/u/5Y6le6/b+p6or5jIre8ifzcDGZ+mYQpNdAbzuDytesQpBBaDvkwdUj59MzRmEZ3513hJUPjiabmYG2zhsX5h/jpxy+wGs+h61YZ+dMTuH3rA5Se1iDJwsci2ES2WFN2DwT3RzrVbQNqxcJioYjc3DSMnipq0QqeuhV0veWD2vcY2UcP0RaUfbIkvB6gGKcAsFp3z/UejLwtiw5UzYDGLCyXnqCibMNLA7powfJ0uOebsAwVkp8CIBSEvkGXtrV+kXgTikx7laAPsiSh0WKQDlCkL/TB30cgKBJsxkDDFLxNhGG7MG0PNsMByjh9X6QkKVOCkF9CT6QN4AFYVQdlVcU+LkD0fGg3D4MWo6BeAE7LhWYzVDVnkToGG3I8gBMCURBARRGDA8cQ3zeAlR9M6E9slHINTM2poL92I35kBLrpoqEz27O8L+l2zXYbDQ+OS9CyOeo2QzgUwMWr76Lrj+PQJztQv5cA+eY4hqQxxMMxrC+vu3N3p74aPdH+rTBydmxIDnWctjwPW7oL02GQJAolHEU01g+l+hx66kNIGIdMbpFKYfbedDH34DO7Wfx8ePiSQfqOnXh1/MYnXw+MjET9MmA6HHrdxoZaZkv5nFtaWCpWNgrz4M273cnYzPD5k4UL6bSZyWQoAEaSycGIFNl/7ZWxy+PtnT2dTb1pqisrq5trS7PEM6c6E4n5l8+8uDE6eqqVSqUYAAqA/f1+hHMuZLNZeuPm7WTAF0wKoryTeqG79M6VKzupVMr9q7C3xPCP2J8YN6PxRUXZJQAAAABJRU5ErkJggg==">IPv4的IP子网计算器|在线子网掩码计算器- Site24x7</A>                <DT><A href="https://docs.cilium.io/en/stable/concepts/networking/ipam/cluster-pool/#cluster-pool-v2-beta" add_date="1669817376" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACHElEQVQ4jWWSwUuUQRjGn3fm3e+bXV3dDcPqGkiQ5SFJkLpZ0aXIyjpHh/6FqKwwIoigSxAUQaeiOnWJqGsURlK5eujQsXRTc9kld/ebed8OoyvRnF4Yhvf3PPOjwyfOBu+9zwACAChzzlhuNOqiCgAAEamqS1PnHHvv+/q3be3fEUIAYK2tLvyorfyaODmepomIEsH74NL0a2WuMj/P3md9/dv37Btp1OsAunuKn6ff138vnTk1ztb64IkMs93S2/3g8ZOPMzNMIAnSqNffvnwGYOz4hIRARIvV6o1bt1drtWKxODV5yRjTbK4ZY0yk/H+w1sZIcbbWxisGQVWYeezYaQDMrKoi4py7d/eOhACiVqslQWIrDAURicj3b/MABnYPERERee9fvX7zZ23NpenBA6NkKG6LD0wI4cv0OwA7dw0SkTGm3W7ff/hoeWW5VCqP7B82xmw8IKiKtXbv8GjEjUhJklw4fy5uSJJEpINEUFVjzMDgUAytqqrKzEePHOpkUNF/Mqhqq9kEkC8UiGCNbTabF69cW62tFos9N69PlsulTaT4+bE1oijIerPW2I1+1w8DiNAiAkBEVCEqzDx19XLwnoxha7PMiygAVlXL7PKFKJrLFywzoKVSqdjdFUIgoqydlXu7nHMiwsy5pcWfs58+eJ8BYM4tVxdE6enzFznmKJ+qutTNVubyzlFH70ivuqm36obyQEfvvzv/FV/NMrVSAAAAAElFTkSuQmCC">Cluster Scope (Default) — Cilium 1.12.4 documentation</A>                <DT><A href="https://blog.foxsar.black/?p=246" add_date="1669897787">使用bird配置bgp网络互连 – BlackFox&#39;s Blog</A>                <DT><A href="https://arthurchiao.art/blog/ebpf-and-k8s-zh/" add_date="1669964266" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC4klEQVQ4jWWTz2tcdRTFP+d9k8nMBJE0mXSSaYmJSfxRSmdqKkJbKbWtGdqdmy6iKMGNe935J6gLKdSVqEtdBKRiEmhaqKKSRCJiyzwLpkmNzLTWWjNvMu+973VhUkI9q8PlcBefe4/4vyaA14CjQGl7tg5cAz4DlnaHtcvngA+A6WJxb8fo6Ch9fX0ANBoNwvBX6vV6AnwEvA1EuxfkgS9yuWz1zJmXKZfLm7lc7or3/hbggyAYiaLoxeXl5e75+Tlara2vgFeAlgMIAj7MZrPnp6amqFQOzyZJ8m6SJJfMbDFJkiXv/WXn3JWRkZE9g4OlJ69f/2XM+7TXjEsOeN6Mi+fOnaVcrsw1m81PgZ8kPSNp08ycmT1rZt/FcXxvYGCgp7OzY/jGjdoE8GUATA8OFqlUDt9vNpsXnHNLkirAn977g5IOStoAXnDOLUVR9F6l8txmsdgv4I0AODo+/hRdXV0LQRDcTtP0iJndM7PTmUzmhHPuJTM7Lem+974s6e98Pn91bGwc4FgH0N/XV8B7v+a97wbWJR1wzo3Mzc0edy7QyZOnFpIkWfXer0hK0jRdLRQKAMUOwAAkmZl5SZiZJPk0TXe8mZn9BzzolLRzvaADqN+50+iXNOScS733T0gK4zjeNzlZlZmp3W6vSbopach7H0oaajQaAL8HwDdhWGNrq33Ce/8YsAzskTSfJMlMmqZXJV02sx4z+15SqdVqHQvDGsA1B9QfPPhnure3Jzc8PFyI43jdOfej9/7pIAhuAneBx4GfJU1ks9nXFxd/OLC4uJwCbzngNrB3dfW3I6XSvtFisZiP43gVqEnyktpm1pS0P5/PT4dhbXJmZoY0TS6Y8fEOjG7g83w+V61Wqxw6VP4rk8ksmNktwEnaH0XRqZWVle7Z2a+JotbDV360TO8Db5ZKg26nTJJoNOrUaiEbG3/EwEXgHaD1aBt3NAG8ChwHBrYza8C3wCfbkB/qX0WlT5/og2KnAAAAAElFTkSuQmCC">[译] 大规模微服务利器：eBPF + Kubernetes（KubeCon, 2020）</A>                <DT><A href="https://www.cnblogs.com/kubesphere/p/14819142.html" add_date="1670225554" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">混合云下的 Kubernetes 多集群管理与应用部署 - kubesphere - 博客园</A>                <DT><A href="https://kubesphere.io/zh/blogs/cilium-1.11-release/" add_date="1670226849" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABpElEQVQ4jY2SvUtbYRSHn3OvLTqEQjKUuOgkFGrAjJ1a+geI3mgXxaXgEHJTF0GFmsbBUhyaK246iHQxuaFDd10cukgxUHDTKVM7+IFfyT0uMbmX3Fv7m973Pec85/wOL0Rpdy5ONf8pMt5ST3fhhInZPwvNIkoDWKZqj4I8Y6y0g6D+dCNQXP7wGjN5CLoBJHyRJKrbVHMHVHIj3QA3O4BrlzG8PSDVNZVqq6ukETIUCkYQgLkLZCKNityCfqdpvsRaXyL1ZxjXLvotSGQxQCP+DWt9DG4ucO1NVA6BtxC2xI7qqMwDcHli4NoLwAIQ8yeFAe5QSjzpLTL65Rw3/w70MzAY1sUIeVMEr33zn4NpEgV4CszTuD6mkp9ivFTm7OwFsAic/88ED0oiugbA85hiOas0G0PAFuCBBCbQcEZLVzKNa1fA6MNy3iOaBvZ8gOYkUA4zCoDQA1iYxm/c/ApHiRqWs9gBWBunWM4knvEGpdaF8fThn/xC+UGh0F5scAcTX/dJxNMgWeBvx5pZR2SGcecVmdLPf9ptq5pNUMl9fCztHr4UfXjJ2gi6AAAAAElFTkSuQmCC">Cilium 1.11 发布，带来内核级服务网格、拓扑感知路由....</A>                <DT><A href="https://cizixs.com/2017/02/17/network-virtualization-ipvlan/" add_date="1670233183" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACKklEQVQ4jWWSQUhUURSG//+893R0ZiwDFQ1SZ1FhkxvBAmGmoI3lQmoj6MqgViqMQeBWsfXYKtJNLiKhTdTGAYuoFg0RY4uBEIrGsrCGzFFnxnn3tHjOq+iuDuccvnvv//+cnJxPJp9UKgQI77BaAFD1K9vWiYkBAoMAAfG6pFBoXBcAxSJhXLfKMoDagOUzSFEtq1si60Us1y0oQAZVjQ8VwL9UVIsdnU0LC5O5T3c3NuZTqdn+/jOqu6S/phbQBYAkUD7W3vTs6a1Y7NT9B89fvsj29XWNjQ2srW2srr4XCaiq978rAChUs724eHNk5Hxv7410+g1ghcONmcztUKguErlWKOyDFlTFk0VNJRg6Mjh4dmUlk06/s6zmmkDT9vbW0tKrhob6SKQFKJMAKaAno9vSHA6F6tbX86Soarm4T4ZnZh62t1/PZr8CtWoUqravuAj/84CFQnF3r2jcP02BeubI5uZOsVhubT2sChGprXWAwvj4xY8f7nR3HwVKJEHKAYrO1tb35eW3sdjpEyc7K5VvpVIewNBQX1tb4+cvPwFbAagnK0kCarLZ3PDwudHRC44TiEY7ZmevxuPRqal7qdRrSr33EgKXPedJqu729Byfnh6Jx6OOY+dym8nko7m5x4BTTYce+PBXNPYADYYO1QVqfuR/qdkDgt70gPtv+CBCVahWAAUssSzjmirRACqJxCXbrsaJNEYVStoUBxTjur7Stq2JxMBvvFHr5sP1nnMAAAAASUVORK5CYII=">linux 网络虚拟化： ipvlan | Cizixs Write Here</A>                <DT><A href="https://mp.weixin.qq.com/s/rVf2_0yefEgAyLgJgq5-kw" add_date="1670378762" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACVklEQVQ4jYWTsYsdZRTFf+fO7LxdVwW38L1dEfwjorGwEVMJgpq1sLaJnSipRJjONIqNxMo2ECMGAoENkZAuMdvaCIIWyb6nawxrkue8mbnH4s0um8pTfXzfueccvsuBQ9QEx3GDcrwzXh/vjNe5QfnE2zGuADBCGGDrytbbTr9J5xPg5wfaH5TaVejqvbfuXT4+I2qCmhxfGJ8sntJXhF4lgB6WkoNNASSQvtU/9kez92e3qQkBvPDd+A2P4gfEM+5NjALPjdMJoFBoTWSTqBCYf9TkO3ffm/2orQsbL7qqfqJkAnTq2DW+DvEh4Q0AUvchzwudcskJoKRjqsXilaCqzsZqTGhpVKpEcW7v9OwzxLWoQlGFENeWd3FOpUpamliNCVV1VpvfT36l4CV6Uisq3PoO8nU5zjj8HIBSf1v5DdYprehlt9lTKOj5TVuXNueWR0drqSSNhB8Zpz38gbQu3Bgv7CMuagL5/rBVC8kL9z7I1mkLSUhO2wfZeuFeSIAJsP0gLN1UJdlOYwNhUQrJ2GYpZFECYWzbqUqSuBlk+yUN/6pQGOfgoCGiDoWAw3OvUqKlSdovYm97fzfTH0cVIS2TYPLQfRgGk9htRJSxGkWmP5me/utOUBPT7en5fNydUaEWESoV0tJdaIkVhZ7WCgV/dg/7D6bvTr8GIqgxoHm52KFghDhw+hdMY5shxdydf845n/cP8uRse/btUKgsqRE1ucbaa174UrvoPt1/dv/3STPZdHqiUCo129vYu8vrdEdtrMknGspVRvwfLlLgocED/gM4lT/uKMXTbQAAAABJRU5ErkJggg==">一文理解 K8s 容器网络虚拟化</A>                <DT><A href="https://kubeovn.github.io/docs/v1.10.x/guide/webhook/" add_date="1671420136" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC8UlEQVQ4jVWTP2idZRjFz/Pnfb7c77shTQ0kDmlaCEQo0dQUuvS6lQQtksFixkQaFZ0kdHEXHLo4CNLBdIyL0lKX4KLpIqE3wS5XEHrTTAma4d7cJvd+930fh9jaHjjbOWc5/AinIgAOAKOjo1cUWCaiWgImAICB3ei+mYC1/f3931/uEP5XNjE+/hWAzwkYcHeoKtwdMaXnmRMA3+7u7X0JoPd8hQHY5IULPzDz+zHGRMwpxsidoyNyAIPVqrNITCmJinBK6f5fT558CKAnAPyNycmvg9myA11RFQJYVemL1VXUajVs1+skzCyqAFHPQrj42vDwwN+Hhxs0NTV12UQeAhB3Zweo0+n43Nwcf3fnDgDg45UV/LKxkfKiIADOzMndYxnjVc3NbrJqFmPsExEXReEAqP7oke/s7ADu2K7XkRcFDZ85g86zZ+zuSUSy0O/f1GD2Dojc3TnPc3y/tuYn3S7//OABPllZARHhgxs38N716zCz9NHSEh0fH7OIuKjWVEMYB0AgQjDz4bNnaWRkBNPT05ifnwcR4a2ZGQDAwcEBBTMv+31SEXLgnKrq6alEUBGUZYmUkscYaebSJQBAWZYQES/LEqqKoAoRgROBzWwvmLmoejCjPM+dmYmIUJYlyrIEADAzFUXhIQT6L+sWwlNm1d8yMzKzRMz4s9GgVqvlqooQwgu3Wi1vNBrEzDCzlGUZieomvXvt2mXOsodwP73RnQYHB/3t2VleWloC3LF29y626/XUbreJiBxEiYCYer2rBAALCwu3LYTVbrfbBVGIMVKn3cbE+fNwALvNJqrVKkTV3b0cyLKs7PVu/3Tv3i0BwGNjY78WRfFmpVK56ICHEGK1WqWjTodOTk4wNDTkqhpZhPNKJcSU7v9zePhZs9lMAsCbzWbfgR9fHx3NRXU2mGUAKIRAFgIxMwUzYeYuuX/zx+PHn25tbXVfpvEFzouLi1fUbFnca8n9nBNBmJ96jJu9fn9tfX39FZz/BRB5Qx1wroajAAAAAElFTkSuQmCC">Webhook 使用 - Kube-OVN 文档</A>                <DT><A href="https://maao.cloud/2021/01/26/Calico-BGP%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D%EF%BC%9ABIRD%E7%AE%80%E4%BB%8B/" add_date="1668414587" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACiklEQVQ4jU2RTWxMURzFz/9/73tvOjNmaHXUaKnUAk2jJFQICwuxISIVicRKgoSExMYGiZWFioiFSGy7Eh+JBUJCfEXiI1QqgmnTGpO2atppOx/v3Xv/FoY4+3N+J+dQNQw1K6X4zej0zYGx3GRFAIBQl7Smg12rM1tXNIq40Bgy1iqmc/e+nX+Yq4QWRID8NQhAEKcVH9nc1rd7pWbSivnSk6Gztz6pdMyPeyL/pf+VE7nyIBdodWH3SvoxVenuezkxF4KZCAAUkxOBQPCHBiYSES3y6sRGfjZUHC9VleZUoMQJgKgcOidSr1QnEFOtZh59meRixaJiDq1fcq13lVSNBg5vWZbwlXNCRP8KsgiEJsoR1yLTmkmc2dGxalEyiHtrs8mrezs75sdgHBMYAiIARAQCE2njpDnpv8/PDORLvV2ZxoT/bLjYmUl8GJmOrNNExjoi1IxABABbi+aEVyxHlx4Nndy2fENb6vbrQkdLUqqmLR0zkc0kPEVob4wpxdaJNuKa4j4xfc/P9L8pWOve5ks7u1s2dTYf3dp+Z2Bs49L0VM00xvTT4elyaLWveXBstilXpFRw4fEwrMssaDi9OOmprKfoYE/ryK/y0oUNXwtziuAgumVe8L4w+2GygkBrJgrU+MTcyFRVCy4/zJGvGjw1Wqqtbo7fH5w4tb2Dcj/n1l18WQot10cka0w2HUv66vP3GfgMK/AYkSNFL4738PKm+LHNbW66BiJmAoF9lZ8JP/8s+ynfj+lYwvMDhdAcWJ/taZ9P1jojcvzG4NXnoyCACQCIQIATgOAcnOzpbrm+vysVaKqGoa8VEd/9ON7/rjD8qyL1rwBABK3poHfNon3rsoBUo+g35S0xdcGVhDgAAAAASUVORK5CYII=">Calico BGP功能介绍：BIRD简介 - MAAO的博客</A>                <DT><A href="https://huweicai.com/cilium-config/" add_date="1669020452" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC/klEQVQ4jV1TTWidVRScOfd+7z9Nmh+DRpM0WKxgk0LUuKgQcCWEulNXQksxG6Wb4sKNrwgKgqBY0VYwCzeuBG1ciWLBFFsU1KpQaUtJk5o2bZO8l7zv957jwlRqZz1zzsDMEHfBDCRhAGC/HngEwe8FALjiPCe+unAvBwCIe2A/zQxDyu9AOAO1OgBAuAW1eWj6Gh+fX7ybTwAwgATMzswMoVL9AV3RKFoZQNv+RKK7BGvnVxLE+2v75pfvaAQA0Nx2Ui+9hwE/ijTJEBmU/16HKXAzVjb8aDUvvQ8Ax5pNAgCtCWETarcnh+3PsUvFihNLCPYqo8FAlIHVzNmWc1aCoTcUWvnrxz188eqlZhNCM5DPm7THj30YXVl6ees2VM2kFhFnu2JemCZ2TDUszgwEta9icrP16MnDk0deNWMhJGxl8tzJmozNdtZTVQepReTpPOUbiwk+n4uxtJCwUiFhkE6e6GJlfPaZ75KPSZjcePObg92RP7Rh1UK9Fw/wuqp9lMWQsoElw8IXm8iWg0kEhlCSlY3uot6QQ899v3xQxPvZoJlaNAjrG0StyG1BC66aomQCHwnW2orLvxSsVVNbS0fxdzECZ4ma+FkBOJ4WKVXpbOhJak+Zi3EHhREKgZogJ9G61gY7Nf4czzAYnWYJARsX264DrQBkAGH3s2g8MIQGc5TyFqK8ha4og6/swretWVwvHkLEHLadvCfst7IvP5EWmQLBCXdieOIwd+1dQ2X1MgohKt0juDW2BzdCycouhcEFF5VckabnPY0nnMgUYIGAJlDZF2/YqYEJ3Op7Sr0ZQogl29GB0wxmohQYKYThuPS9Pj3Xjjfneus9USTOFXTo1xQvrV9kPSSuHmKnvVtsVx1ECfHelXv6oyzufHJqevCz/8a0/tbpo/DuFVN9MMBcDUjPuK7fP919P+L7/GMhWJlkIGXJTI9/ub//XYD2vzWuvz2/k6hPZYoe+NrF/g+m/uDVE8WBcy9MIM0fBmU9YPPs10+PrN3R/APCgnQ9AgJmbwAAAABJRU5ErkJggg==">Cilium 配置详解 | Anonymous&#39; Blog</A>                <DT><A href="https://lib.jimmysong.io/cilium-handbook/policy/lifecycle/" add_date="1668503197" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB6ElEQVQ4jU2SP2sUURTFz7nzZpPdjZCVBA3bqWgKCwslnZUiqIVF8gHUxsJPoL2930FiYWcnWFlYpAhCLMRGEBPU7JIQ9t/MvHePxWTMvuryOJzL+d3DztZbAJJISgIAEJgbCIK1AECoRbXayFoIEM1AwOfsjCRICZmxSp7cjadqI1PyKnlmlASSpEmCJPloGnvdVnchjMZFTB6Tj8ZFtx163dZoGiVAkhRqs8zs0Ub/xdb1C8uL73d+vXzzxQyvn958cKt/MJy+erf3ce93HTCY2WRW3V5ffXzncm8pX+u1nz+8ViXPM3t2/2qsfFamJ3evDE+Kz98HncU8EJBkxmkRy+hldDP0z3cyY4peRC+jT4tUx2BNqSZAggABI8vkmWjG+oc8426YeyGzzKyGyiZbyGyeszX2NLPDk+JoXNJIwggaj8fl4GSWGf/fLggAmFxFlfaHk/3h5GKvDcGFT1///D2eCSoqJRdAQWxvbkvKgy13W5dWuhvrq/2VzofdAxrv3Vj7eTje+Tb4MRwfjcqYnCTbm9sEHIjRY3QQ59r5rHIACzlHkwgg5BYyM0BAICnAgIU8W2xlAqKrFQxAci11cgASBAhosAICRFCEwKaCJN0BQhIIqtlwCk0Q6g6roSjwrNggCPwDIzsVa4xKQ8YAAAAASUVORK5CYII=">端点生命周期 | 云原生资料库</A>                <DT><A href="https://www.ebpf.top/what-is-ebpf/content/5.ebpf-in-cloud-native-environments.html" add_date="1668759065" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACWUlEQVQ4jZ2Sa2jNcRjHP8/vd+xyLnY2hOUy0nF9IVNSC3UWVntDxsQLkzW0Q4iEEiLLi0nJSu2FVlMuKZJb6UhtzWVz6TSay1ns2JDa6TizY//Hmx0NK/K8enqePt++zwX+MUQkDEz6vW7+kZ8BZAKd/yswXURah2u4/gJONMbsUdUiVf0OzAIig71RwDoBBCg2xpSo6hTAiki34zhPRGQPMHGIYL+q7gBcIhJS1aNijDnjnrVgc3mwiJIVqzDW0hOL8exRC9cunif6uuMPWyJS5zjOcSBqPT7f5dO3WmxdQyMZLhePW1vpjH/Dk+MnGCwmfPM6jjPwi4Cq1gN3AEwiHr+7u7qK4K5jtBWuwcnysmR9FeNKK6h/+o5Uqn+43TjpxAJ3ktH24AybGP8u9oENRXNx93Zz+9Rh+h7WIkB8wEtp2VqyMjPojnV1ASEgOVQxQ0QuBKaKioi6s0XP1aKpV+jeraLl+2t0WqhGw5GojszxfwHGpMH0H/QDYy/VKbk5kOyD7CxwuSDcDJtWrySwaBkvI8/ZGNrpN8aEhttsU8c99ORBVETUGNGFhaJej2hL9JPWhiO6qmq73n/5Xq21P09jf1oxZrLHzeJ91ZDjg+bHwqsopFIgdgSNkS56MnKpLA1y48rFvM8fe+qAxFATPmul4/QR1HmLJtrRpivotgpR78z5erUzqf7NNbp07wktCMxUYM5wYzwQkS+zAzJQuVZ0+WJRY6TNGNNQsqJM8ysP6dkXverOL/gOjP6DB7YAHmACsByYN1gXYKu19o0/N+8rcCAN/QBkuuGAjaYrHAAAAABJRU5ErkJggg==">5. 云原生环境下的 eBPF · eBPF 概述报告</A>                <DT><A href="https://segmentfault.com/a/1190000041379207" add_date="1669713853" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">eBPF技术应用云原生网络实践系列之基于socket的service | 龙蜥技术_个人文章 - SegmentFault 思否</A>                <DT><A href="https://blog.51cto.com/u_12661742/3185467" add_date="1669715158" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">大规模微服务利器：eBPF + Kubernetes_51CTO博客_主流微服务</A>                <DT><A href="https://tonydeng.github.io/sdn-handbook/linux/XDP/design.html" add_date="1671502152">XDP架构 · GitBook</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1672911523" last_modified="1677116735">calico</H3>            <DL><p>                <DT><A href="https://qiankunli.github.io/2018/02/04/calico.html" add_date="1637132715">calico学习 | 李乾坤的博客</A>                <DT><A href="https://developer.aliyun.com/article/986033" add_date="1673430892" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABX0lEQVQ4ja3TvU5VURCG4WfW3ptwEjDGWOglGI0WdFZEr+FcgdGAFnSGkk5iR4XReAVcg4TKzkKjsbOVwlAI5BD2z1gAxwYswKnny5p35l1ctZK4SnYazpfm/TQ4MrhmpLIfb7WQzzR6836bmFXcVuK1fahzyT2VDYcWzJlx3Ujrs9Yj7IHevMa2Wx7oTBw6zhc+6a1ELvtq1l3HGHwXPkjvYtOXM7wgc9l94an0WHHHDI58i3wu1Tqtdb+sxZb+n9xjlZvWNFZ16iIMOhMH1mNLn4vqC8OL6tjSO7CuMxGGWgpp0CgQO7pcsqHxUH+yRJVG62O8sQIaRRoQ578WdoUfhlOcWiXsntdaC4miNUzH3PTqQoQdndZgVhGySEVtZM5qjlWxoztbVlKSkmPVFG+sMmdVbSSV/3DGM5FYMJhR/xUp3p+IlE/c0NjWnIpUHHMq0pTvkipf+TNdNjutP6KopyEB/Kx7AAAAAElFTkSuQmCC">Calico on Kubernetes-阿里云开发者社区</A>                <DT><A href="https://jimmysong.io/kubernetes-handbook/concepts/configmap-hot-update.html" add_date="1673493156" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABXUlEQVQ4jbWSzyvDcRjHX5/n+2NMSS1arayZ5GCljeTH4qC5+kdcODjKUm4Orq6uXB2cpKSJpqUUpR2UZH19LYfNvp+Pw0YmF8pze3686v1+96hk1vCbkl9d/wWwv/VBgFKIoDX6i1ilsKQdMIauMJNpyvfc3DEQZyiB67SuHyucXaJ1OxDpIb/C7j62xfY6Pd34VYzBsigUuSi1AwAKURiYHqM/xuomR6eIADQaNIKfPDTrycMYcln6IgCez8k5fhWlvgEGwBIOj4nHmBhlfgbXZTBO8YqlNTwfu6leawJNOIzrUqvjv7C1QyiECLZFfpncLLEoFQ9ba1LDzE0iikwKoHRNLMriAo6Ngc4Q6REqHs8vKIVtDNFesuMYQ/WVjW0KlwwlmMrQEWpq5LbM3gH3D4igklljWTh2K4r6GyKI4DioD2uf81ZKQUAQtHbNqdbUam1xyMcP/f/zvQN8e3d5nRndcgAAAABJRU5ErkJggg==">ConfigMap 的热更新 · Kubernetes 中文指南——云原生应用架构实战手册</A>                <DT><A href="https://www.cnblogs.com/fengjian2016/p/14807768.html" add_date="1673597370" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">Kubernetes网络组件之Calico策略实践(BGP、RR、IPIP) - fengjian1585 - 博客园</A>                <DT><A href="https://rainwu.cn/archives/calico-rr-guide" add_date="1673599902">如何在Kubernetes中配置Calico路由反射器</A>                <DT><A href="https://system51.github.io/2020/05/27/using-calico/" add_date="1675755269" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACR0lEQVQ4jaVTO2hUQRQ9987M281bs6uCYBFBjW26kMAuyEatbCwEsdY6wtpa7NvC1i0srCSNRVoDNkI+SkwkYGFjFSJiohgVjCbvN2/mWrwE8mvEU86cOXM/5wCHEUUMCB05h1B5dxCHiBEDkQeAy/dXzlUULgJA5rD2+tHY58OcgwJRxIgif6WzNKZM5YG4fAJEg+Xn8odUMO+S7OHc4+bKHnefgBBAcrXz5rYKBp5CJCxsAoJ4AlB4sKmEIKLY5cnd2X5reu8NlyWRtDuLo2yCqcKmA3BJbhR5gOE8oV4zXiPLbZ4OcFCZancWRwESIGIGugIAik2XSVWtLWyjZkzn1jAVzpFioXs3L1Cg2ThXWAJXFZtuWXlXGCAZn5wfgri2zROpGDYbPxJUjUKjpqk1cprWvsRY34xRNWyKLBaIa49Pzg8BJBoAQl0bZoXQ2VRYaTgHmln6ijvXzwsT8OT5R9RrGiIkIA9WOgxFDwNYP7BXAsF7QWPQYO7dd5w5GeDDp9/Y/JXBaAVB2fl+MACkKFa9szGICCIUJw4jlxrY2rH04u03OnUigPMCEU8gIu9snKJY3RUQWu43N0B6QQUhMcNmhcON5lm8ev9TslyEmfZMY1UQEkgvLPebG4CQBnoEQJy3PRZ1zQtX6qG2z16u6624QL1m4EUAoBBSRsSnztte2UCPjjcSEObpDhRj17LEKggB4DgjoRxNFPFsvzVd5OmEiMxorbZZBUwqYBBvi8hMkacTs/3WdBmqcpz/Haaj+Mc4/wWGyyTcro2yoAAAAABJRU5ErkJggg==">Calico配置及原理 - Mr.Ye Blog</A>                <DT><A href="https://my.oschina.net/guol/blog/156607" add_date="1675756538" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEklEQVQ4jW2TS2xUZRiGn+8/58ycOcx0ppOpM7RQm9JqWwmKlxpvwagpMbpi4YYYYmLSBbpyyYZEFy6NujAajCs0aQhuKnFTJwZBKRrrJUCp2NqWmUrKXJjpzJzL/7sYQYK8q2/xPcmbvO8r3K6jKI6iARgrDDGe241yUmz5G5z6/QzQxiAIAAb49+xKAMPU6OPZvYXpVNbd7yad7ZalJAiiYKse/LR+uXaMz+Y/4Q7oFmy/Nnlk+NHc24VdaZFIowMNghERUXGLRj1g6fvybPXT0wepUAOwAAUY+9Ajb+2eGnw33++ZTiMIw06EiIqMQQcdLboT6UTCCnMjmfGq17PH/2H1OCAWYHhiaGz4hXtPFAaTNKs+ylIqlnQsPzJWZLBczxYTGvx2KJ6r2tnhzESlJ9kKzq99ZwNsm+x/PT+acdo3gkBZYqmYUn/+vLlcXql/rCNtBkZ6Dw/tye6IiU2jGXm1a822ickEoGxAZfoSTzm2mFZkcFO2XFm4vrr6wW/PUiqtAKzc33+yc3CsGI/bG6Wl6uf+ufWTLKwvAthAwoqpnSbUYtvoQCPVa60ZSqUV3hyJ8+uOiGLxUnkutpficgXo3J6CupkngDYiIoKySQPwzFLIN8UIgOLy33fCNx20wna0LLbq11EoMYzO9acO1CZ3fsQrq+cB2Df8WP65oS8Ec6H8R/1L5pZPsba5fqsH3htPvvPQ1OARCcIg0liOq1Tpcq1RLbe+MoKVzSdeGhjvdTXQrPrUN9u1q4uV2eb7Zw9ZAIGyrtgFbzo3kHT8dmhMZCST9+K54Z4H+oZSEz29ru03Qx12oiiVjnXcrJvcuFg54c+vFbtFWqtW6oVMJbV928vp3jihr6PQ12JCHelA68DXiELHPccESPyXr/+abXx4dvq/IoGYhdL8ZioZOknn+XTBs2wlIhaibFFOTCnbc9SNim9dOn11pv7emVcB/+5jenFsX9/D+cPJ3vj+RNLpAaGzFba2Gp1vSxfrxzj+48zdxtRVd6rdWJ++70HucUdRSri+tcLc4rn//QD/AGg1V5lOKkFuAAAAAElFTkSuQmCC">Linux策略路由 - 好脑袋和烂笔头 - OSCHINA - 中文开源技术交流社区</A>                <DT><A href="https://coredns.io/plugins/forward/" add_date="1676970087" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADU0lEQVQ4jWWTbWiVZRjH/9d9Py/n7XFzZ0c3aTYZW4tcVsNFUoQZYutDrXGiBkUqFEigsFpkrI7Rl0YhaUp+cB9GLGIfDBtUSFofMrZcDlJTmlmt7Xg6ezmvO8/z3M99333YilwXXJ+u63dd/OH/B/5XSQ4A21pf7b7/rr7Fe+7onWnZuO/BlSEDQEkkOZBiAEC3wikGpNSOLQe3a+KnPeFGhdYkFGYK5dKu69MfXVr1jWg13Nn+dhvn7KwX+LVCiaBU8eD50uC2MTU1M/vA7k076lwLAzLwPz45uW945YAmgPQTW99psG37nJBBk1BesJgr87UJB5E1lrxyOW1wGz/cF22pjlhOsx+4vtTyOb4s45BOtp+ocmJ8lDG2mXQgigXXaG1rUH2pp7D90bsZY5Dfj//SIC0Zd2D4SiuTSHcaAPSL7SdMFtfDmsJbywvzvpxfMhoba3TvoS46/OYp3Pgto7e0NLFE2AnS7gKYBG+N3U5CBjkGgMLrzaORULTTzeV8f9E17Jit+waS+pMPvsbUpTQyxQK+/PYi6qM1jCliGT9Pf1Tm0jEdfprtf3xwp2VZLxUWsoGXq3Aw0q8cewZnRi7QhdGfoWOEgueiKV6HRVECEbTJTZoW2etHJvecZzWx6jVeaUmWc0XyXIHd/Y/RtYnfafTkeSQaazCdmUezvUF7KtBZkQcjLqNWmBwzVASSnH3x0xhlMlkFoSlxWxXVb6rVwwNnUN9Sp8uBxLOdD+lQ1MK14p/EQKo6FDUc2ywoKfqBEckWvdKxKTdrkMV17q+izmcL9EhPB27eLNHOrnup+4VtyAdFMhjXtVEH65wqpQk9Y1ffnwBAtLl5/5xQMr7WsPyNyrESDTXq5fe6MTebR/W6GI72f45K2YUgJRmZZsVz954ae31w2fIjksdjHT+altnlah4hC+kNVevtq5OzzI6YNDo0jkrJh2EbMmRETKHEGyPf9R35BwYAPpcf/zXhdFw0DRZcmZ/d8/CdbTOBS7suT9wIiDNmmEzaPGr6gfvh0DcHDi5b/rj6Nwwrrf+bkNeeHDpsGeEDJbfgc25ZS+7Sp8e/SvcAb2mAbtlly3CKrcSYaWh697Pne0XgDVpG2NRSni6mC3uBlFoNA8Df4zmHUfy0fUsAAAAASUVORK5CYII=">forward</A>            </DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><H3 add_date="1675836892" last_modified="1676959890">ovs</H3>            <DL><p>                <DT><A href="https://blog.csdn.net/bestjie01/article/details/50833560" add_date="1675836875" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAB/klEQVQ4jU2SPWtUYRCFz5n3bvbubhISoyJiJxEsEkglghZJZUTUJkhAUoja2WihgohFQPAXaGVhk8rGRkQrURDEFOL3B2idkDXJ7t3Nve8ci7ubZOozZ2aeMyzmptAvSSBpBgkxgkQIkOQOkgCAZLeaJEi1NkBDWgeEzXUkFVZTuIPcaSjVkqPb5bEZTp/H4aPMc//0Hs+X9Psb0hrlILm9kuRw5+XbNjsPuX//yNEx239Inbbfu6IvH5jWISU9fzNlmV26FWbn/d0rf7SI5oosaPosF25gZC9iLH1ZzE0JRLeN8YnwYEl/fsSb8+xkTOvyiK0O9h3ERhMSAZAGgKTy3E6eppmePcHmOhtDgmjG2iDXVtjnAcAAyCNrDYxPSNLXZVZTxYIlZTmSBKSkciUrb0BSwfAe5DnW11DmUE7u6bhN3/opRHTbSALSGgSaARDAEOCuYmu72QAwJGq39OszLXDqhP6tKjrc6VEbTdUaHDugIufODRAt6OVTxcIWrtuZi6imCokGUkwet7sPbfExBqpy72Etc0C7xVMX7OodVCroZGquojHIoRECvvzG71+DnLRdSQPIWhiftJlzODLJ4VF1Mvz9qeXXevsCRcEQ+hN2Ps/UaaPIUWswJJKjm6EoWB8syZLsPV8PgiLTGlhHjIoFSaR10OQRpSPwH79sFlWOAVADAAAAAElFTkSuQmCC">ovs-appctl 用户手册中文翻译_sskywatcher的博客-CSDN博客_ovs-appctl</A>                <DT><A href="https://www.cnblogs.com/weiduoduo/p/11142747.html" add_date="1672125793" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">OVN学习整理 - wddblog - 博客园</A>                <DT><A href="https://cyent.github.io/ovs/appendix/mac_mask/" add_date="1676342575">5. MAC地址掩码 - ovs学习 - cyent笔记</A>                <DT><A href="https://segmentfault.com/a/1190000038767587" add_date="1676342605" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACtklEQVQ4jWWSS2iVZxCGn/m+7z8n/4k5IV7SGLoIVhSCQoh4KRRctMWFtpRCla5El1IQobS6MN2IiJeNCKVpu+iqBFFL8YZCrbpokwihBG2LNUHrBVORpAlJzvn/b8bFOTkEnOUwDzPvvK/Qv3sQ5zcRTRETEGFxmYEIgmCa1xvOCN6hcSjUYAXhdRhqLTMsVimnZQouyGQ2Sx4jeL8poKaIOEAa6xZvRyBmHOjZzqGe7axIywxPjMvbPx8hRtUAtgAYiLg6v8BanrGqrZOTW3bhxHHj6Z/8+uxvU42CiAQQwQwRJ2YRzTIwBReQkIBmvNm8FEGYqsyy7copstn/haYlABIWrra8QlpsZkPHGpYkTdyfes7Y9H84X6QjbW2oequlnWcuYao6B84h0r/XLK+wbnkXA+/to7utszH81Z0LXH48yvBHfZgZmUYKPnDij6t8cfN7QqkVBwbA4d4P6W7r5Pz4HT6+dJxv/7rF6Msn/Ds1wdmxYUSEXCNf3/uFG0/vQUhQM0LdK1JfAKASI7efP+DC/d+hWIIYOTpykU9WbSTTyL7bP0BehUKKmuIEAYucuXudycosn67ezMSebxjY8SVd5TcAZVntYTgRljaVkVBsOO7UFElSro0Ns+FcH6dHr/OyMs3O1Zvp37oHADVrGK0ohrHgvUMEi1XWr1zLZDbP/ovH+Py3ASoxo3d5FxRKRFNyVfJFoNXzEkAtiJfz739m7WlZzj4Y4p2Vayj6hMuPRmF+huZQJDhHW6FELWhmAmKYeT7o7TNMxqdfSHup1d7t7JZ5zfjxn0EODg4wU52jJW2hIy0z8uIhPz0asWrMhVr6TfhurxEV8nlDvLikWNNanYMQwIVaMlXroj04DEXwDofGIbzDJ80mScFUY82eYoq4UP+2Q3xAfADBUDG8A41DrwC5oDkGZQrSUAAAAABJRU5ErkJggg==">linux - Open vSwitch 入门实践（5）OVS Flow Table 流表规则 - 类型安全 - SegmentFault 思否</A>                <DT><A href="https://cyent.github.io/ovs/appendix/traffic/" add_date="1676345231">2. ovs数据流量及限速 - ovs学习 - cyent笔记</A>                <DT><A href="https://xiaohutou.github.io/2018/04/22/ovs-conntrack-tutorial/" add_date="1676357627" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZ0lEQVQ4jW2TPWsbQRCGZ+Z27w4JSeY4FZKFBKoCgRSGFJZaoyZVSG8wqHDAqdPEDjJp8gviQti4MC5TpUlhcBGF4NpNChMJOwblQxCEON3tzqTwSciJBhZ2d94ddp95F+D/oNkkDMNcEAT5ZbllG5iuGQCgVqs9zefzvZWVlc/1ev1ZquFUg4uH7kW9Xn/sOM5rZn4iInciREDEj3Ec7w8Gg0+L+nmBSqWyqrV+iYjPoyhSWmtxHEcAAIwxaIxBz/MAALpRFL25vb3tz59QLpcfuK77hYheMDO1Wq1vhUJhYowhay2GYTjZ2Njoi4glorbv+xeVSuXRvIDjOFVEXDXGGK11fHR0lD04OJjEcTyJoggbjcav4+Njdl3XJkliiKiolCrPCxCREREGAEcpRcPhUK2vrxc7nc7v0WhkiciJokghIgKAIyLMzAkAgEpvQABAKTTMZDLTw8PDr1tbW4Xz8/M/w+EQtdYyyy+yoxSSzGgzM2azWXt2dpZrt9tet9uNm83maDweIxHJ3SUAlFL4rw9YRAQRJY5jKhaLcHp6mjs5OUl2dnYeTiYTHwAkHWyt5UUGGhEJAKyIgOd5xlprgyBwdnd3g16v97NUKpkkSRgALCISM6s5A2PMd0T8obUuTqdTu7m5yZeXl6Hv+yIime3tbV5bWxtbaz2tNTHzjbV2cM9IpVKp5vv+KwBoT6dTUEqJUkoAAKy1mCQJ+r5vRORdkiRvr6+vb5ZauVqtNl3X3ROR1qKVieiDtbZzdXV1sdTKC+1hAID0A+2nwPb6/f77hc7NYC6NeWeCIMiHYZhblpvFX2+DHaWamhKYAAAAAElFTkSuQmCC">OpenvSwitch的链接追踪教程 | 小虎头 加油</A>                <DT><A href="https://access.redhat.com/documentation/zh-cn/openshift_container_platform/4.9/html/networking/_ovn-kubernetes-default-cni-network-provider" add_date="1676361561" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABf0lEQVQ4ja3SPWuUQRQF4Gc2WdzNB1mNEUkjFgqCRJRo0lgIIoJFQBQb0X8QrQSxFAux8UeohSDYLNhbpNXExsaoaYSFdz8SXUTXa7FvdNV90cIDl+HOzD1z5tzL/0aQ1qnABtVNZoKRovvp942Mc1gOVhL7MZ9YCZ585fketgpf36CaUc+IIfEx42mbA4M1pcFkkkM4UcA/hqUeV4sI0gvOYnehxD6Ob3sEoxmHExfbzC2zcBln8sNvwwkO1tiLtyDjZUY0iCvENHGLWCWaRIdo59EhPtCts/RDAWahjBto4S4e4TQWsS834BOeUdnJvS7TFR7IuJPxOSNaxHviPjFPVIhEVImpfN1FPO4r6jS5nhpMjnAT1zCWcmebeIU1vCO6pBmc0m9TPllvEgQ7mpzPfzGH0jZRys2MgZb1fhq6/sskNpgd5UJwCUcwXtxNm7j9xyjry6/hKE4Gx3Ifp3IRW8HrEg9r1IcSDCIot5noMZ4olelO0Ep8+VvtP+E7/u+AYUr7FgMAAAAASUVORK5CYII=">第 16 章 OVN-Kubernetes 默认 CNI 网络供应商 OpenShift Container Platform 4.9 | Red Hat Customer Portal</A>                <DT><A href="https://www.jianshu.com/p/836f80e4cf4d" add_date="1676361616" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">OVN系列9 -- LoadBalancer - 简书</A>                <DT><A href="https://www.cnblogs.com/dream397/p/12653074.html" add_date="1676362379" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">ovs流表高级特性（一） - tycoon3 - 博客园</A>                <DT><A href="https://21c.me/2018/05/21/ovs%E9%BB%98%E8%AE%A4%E5%AE%89%E5%85%A8%E7%BB%84%E6%B5%81%E8%A1%A8%E5%88%86%E6%9E%90/" add_date="1676368876" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWklEQVQ4jW3TvWpVQRQF4O8eDLGKYNoUgYBIBCsLEYIBUwaL1IJa5AlS+BI2Biy18BEEm3SikKBNmkAsNCGSUgQVDLn3nmNx9+TsO3HDMD97rTWzf2agtwE6zGMD97CAEY6wg7doE/aSbeJbOOvRYhf3A9uoFi8TeIRxkNq0L74n6dXgWTjPE3Ac4FESOo95iJVCXsafIAyD/D0Ad3EHj0KoS5hPmIHtdHuLEzzEO7wP/+3kH6fw1uEgPavDIZbirITypcpJEdtuAlyS2cV8Fb+DBDfifJAGLJUK1HUtQo1pK1UqArMNTv9DbnEl3fa3Ihb8aWPSHPQdVkL4iV/Yw2N9Fbok/AFW9SUsDfMZt7CINRy73FQnuF6e/TqUz/TZP8LXFGLpwlKtp4U8wDV81JdtaPofjKqzF8GdSvIcXlWxtpXQD2yliy8sbx7gjcmvPDPph308x80a/w+OK5Tz1ixqKAAAAABJRU5ErkJggg==">ovs默认安全组流表分析 | Ian21c&#39;s Blog</A>                <DT><A href="http://www.openvswitch.org/support/dist-docs/ovs-fields.7.txt" add_date="1676369056">www.openvswitch.org/support/dist-docs/ovs-fields.7.txt</A>                <DT><A href="https://www.cnblogs.com/goldsunshine/p/13866415.html" add_date="1676451658" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">OpenvSwitch系列之九 Group表 - 金色旭光 - 博客园</A>                <DT><A href="https://opengers.github.io/openstack/openstack-base-openflow-in-openvswitch/" add_date="1676451661" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACGklEQVQ4jS3SvYpdZRjF8bXW8+5379nMmcxRyYdBkEljLCSNWFhY2dqJIBa5hdxKyBV4I7ExjWAjyIiRhAQUNeNkZjhf++z3WRbJDfyLH38+/P5R7SNK9EOnwq6oKxEVkopCIEhJEIOMDiVKhEihq0iwwWFks2zDIkiUTIIJtuaSLVuExN3ew0CQpmnBYWs2Atoz3SxAsADadGJOT3MaNGgDQAIh2pgzM72bcXjYlQipA4IAIRqwQSJtJRI2LEUEbiy6vqIAhAWYlBOohJkmTYBpBh3me4dxfdk5m1K0QCDJcVqNL57OU6tDPaj1gBjmLCDGOi57Mg0XFTMAS120s93Lny6X75yeP/nFxruZt2pXx4HLRX7z2auP37862xVRJEh1aGf98YtjH62erTO5nf5ab59fbY62u4/qQf/Dr68efLX5/G6hSEkRFLrC9cX6zw9P7n37ZVvtYt7nxXrz8p+Lo1FPTutqsydLqYGQkWaH7eXfjx+ffPcFsjUg+0G3h8XJjZAuP7nTBbr9VEAwIBLAuBi+vv/pzXu3r9LLRVkeRi0M5rWR+4b1Zj7fZAHeEBJAadPRyfWr/y5W/16yx9YznNNunvYNdpvbtHchARLNQPvtx5+3Z+fD0IvZ0nNLgCFRNCDJrRUIsA0wFNeOX5/+EREGKALA2x4AGlmHvhRJFAKKuHXng9e/Py2lgG+OSmQCsJOG7ToO/wO0CRNRLfqqvwAAAABJRU5ErkJggg==">云计算底层技术-openflow在OVS中的应用 | opengers</A>                <DT><A href="https://www.jianshu.com/p/ba36d66d487d" add_date="1676533762" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACz0lEQVQ4jV2ST2hcZRTFf+f7vvfezOuk0cTWaYtVUEGyEhV0oaBQ0uJCpV1lUwuCBSMoLQiiIoJ/KNiCi1hdxC4UBP/gUtCNiOBG3XRRin9qaJPUUs1Mp0ln3nvfd11MI8WzvNx77uGco5VDe/bnLj9Rp3RbAoiNzHlJYhOWEmDIeQPMSWTS+SpVR4JZWADrRkjCpHZH1COsqsbX3qMsB+ewaxsSRjQsK/LbjbDgJLpDw9Kg7/KZ+7Tj5JcW7rgbTWwldHdhdc3Ui28wffQtlOfmpm+V39Z1w2Qm6Gr50L5ksZGfmLTpl9/FYiM/vZ1meYnqz1+xqwO27N1Pfe4s2Z330Px2xuqV81z5/CNZXZsjRchypl46RnNpVZdeOUz1x1mGp39i8NUntB+ZZe3k2/x9/DVsY52r33+j3uJxLCXkHbpwcNbULnFlh9a9D9J+6FHWv/uaiX0HMAlCIP1zGdcuIcuRHP1PP2D4y4+4dkmQc9jGOnE0pL5wjrL1OMpy+p8t4soOFhsUAmk0RHJMvfA6bnIKixGTCCaRRtfo7HmSyYPPs/rcASbnDtOZfYo46CM53JYO1e9n6J16b5yOJSSQGUESMgMYxxUjYftOLEXW3n8HUsPN86+S3TWDihZyjv8qIhEwAwkzGxfGedJwg/yWGW565ghgZDt30/y1AhJcf7aJMB6CpOsLCdcqaZaX6H14DARTR99EeQEpYjdymBEwM4QAI0YhEQd9wq7dbJ17FuUFKtr0P14gXemPlbtgmAnJwpjIkA+4PEd5QW/xBK7dRnkLgDTo4bftoPPEHC5kpMEaOD9WIJCct2btstZ/+BaqkVHXSk0FqTf2p6kpH7uf8oGHrf/FKQ1P/ywVLZOZtPz03tUi+O6wiYm6ElkmyfF/WNOAgKoyipa1suBGTbropDiPseQlVLRMyOxGpzcjDgE5byo75r0HY0lq5v8FS/1LVvsjW/AAAAAASUVORK5CYII=">ovs bfd - 简书</A>                <DT><A href="https://www.cnblogs.com/liweijiee/p/14370712.html" add_date="1676541470" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">《深入剖析kubernetes》学习笔记（5）——容器网络 - lwjj - 博客园</A>            </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>            <DT><A href="https://soha.moe/post/bird-bgp-kickstart.html" add_date="1668415093">BIRD 与 BGP 的新手开场 - 海上的宫殿</A>            <DT><A href="https://github.com/Jrohy/trojan" add_date="1655705567" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrklEQVQ4jW2SQWhcVRiFv//eO28yoanjkAQdEjImw3OUGBAUVMRuda8LBUFwIV0prrpSV66KuIhapIq4diEUirhQaZW4cSFTbDtMxtZOHhJiBjM2M5m59/4u8p6W0gMX7lmc89/znyscQwAFWE0ffRZjXwdOGWEZQJU/gEsaw2e9zm8/3qmRnLC0RCWZW/9AVF4TkZljoUYAETE5H6voF5Phlbf7fUYAFhDq9dn5EytfOVd6WcAVpsYYERG5gztr3RNi5x8flN3XDIfeAqzWVz4sJckrYeovK/59EVlUpapRtxX9E5hFpB1CeI+opSQpv3CyVK4O9nYvykqz9bQrlX6w1tkwnX60ff3Km8BMPU1PZJ25v+EXradpNTs8vE2/P1pL18/aJHkrhGkIU3/KOetOi5gkhkgUJI81zjqdcfH0rNPZy69WRbzGYEWMtca9YTDyDKiq6mgy8ZtAAEy+5QKSn3D0z2hTYzxAVTE8Z1CWUUGJuzu9azdyQSxqzaEF39npZir0890uGUBUFUEqCwsLyV2T74bQaCQoVVUVQAxwS0QRkcVKdf6pfJK7RwQL6HIy+6SIPKCqCtwywOVjH4Yl5z5vpGkL8PeIEFZbrbRs7Kea/xFUfzLB+3Ooig9xE9hyrnK12dq48NDD6xuFerXVeqz5yMaXhtIWIi1Roqp6H+QTc6N79WeN8bxz9kwcT94JUc8q3H/kGRQGk4mMQV5FpKbKyFjrYuT8zW5767ieZjNZc5VvEHmQGE7r1Oz1eu32fwEajZm18txNMbJojMV7f7E3/OslsmxkAKXbPdq+Nnoe1UvGuu8k4ddas3my0NecSxDmRcT7GM5Nbg9eJMsOAbX/b3nfD/Z2L9xXXfweEwdZDN+yvx8ARvs1agvOBM+7v19vf3xwcOCLlv4F8u80An4QL/0AAAAASUVORK5CYII=">Jrohy/trojan: trojan多用户管理部署程序, 支持web页面管理</A>            <DT><A href="http://chenzhenianqing.com/articles/1150.html" add_date="1614139649" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC30lEQVQ4jQXBW0/bVgAA4HPzPU4CODSsSwYEU9hAFWzAyya1lKeWl2p/Y09TXypN2j9Z1X8wutJW6kUbqCrqNCUk6WhHSSFrSFmci+3YsX2OffZ9MPRjLECIIeMJABxyDuI4iqK+Zdf/rs+YBZpQy7owMsbcdEnAIhIIgJDzJMEQIJ4gwCHk5x+btt1tnjU8x2GjkQCQ5zi1en048ggAMeQAwCQYhUTAkMO+ZdEw2NvfHw6HKiJ/vjqwet1UJj27sChqCgGcJUmCRWHoOqlUCiP4ePdh46TR972F0lytXPn57k/pTOaHOz+a82bX6RMQxxBBSll/MHBdj4bhmzdvm80mkAgL6cXpx9KsaeRykiB+OGmYS4vkfeMMCySk7OnzF61WS5W1vu0nXHAG3v4fB4slc2llTZREANFfr183/z0l1dq79sUnq9eVFJUImuezhIsJFztW23FDrOjy+MTugx135IgCbPzzFn/73bXK4WG5XB03csXi9Ob1zYUrX86b89Vazer3ISZde+AHPkaAMwoYRR9OjmjgxXHUOD62B73dh79emtRvbV8bel3G/DAa9vodTdcm8vnPTdO8ukKC0ZCxkGDcPj+3B/bkpHHv/i9bN64zymhAGeOEQS7hW9u3V68ut5pnSJSETDaNCUpnsy8PXimqUpye3nnwm65lMZJYxEdeFAVxSk3LovbZVBEZY2nDMDLZMTmlC5Kys/t4ds5cXfvGH3mSTAgCEfVjGpZmv9B1NZvV0cTYhO/5x+8bvYE9nrvU/s96/uL3pa+Wb968oWmEMi/w7aXl+UIxr6dFRYUoDEMAkSRrlEGA5fxU4dGTZ5VqfWtrMz+V63Q+JZzOzBSePX1ydnoiKxL+fns7jrEX8gTJWFQ0TfNc993R0fraWrfTO6zWL18ubKxvRFHUbrV918MbqyudnhMwjCQNC3JK1VRZqFXKiiTljMm9vZerX68ncVIpVwVEPMf9H2PohrrzbViuAAAAAElFTkSuQmCC">NAT网络下TCP连接建立时可能SYN包被服务器忽略-tcp_tw_recycle | 趁着年轻</A>            <DT><A href="https://www.hi-linux.com/posts/38692.html" add_date="1642668935" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA1ElEQVQ4je2OzQ2CQBSE5602QAPGnxKwBOkB5A4tcDExWQ9Qgtw19gAlSAtCbIC7yD4PKGHRkzHh4nect/PNAkNDm9PUY4YBADuniLaHyVyJscfMJhFlN3WPQvdaBoeJMRbCI5DZNDmVdhHT5jhLQFg9Qx9Me32CM9QjH0IlQDP0gsGB0B435RKMtJOZEOoMwABxBuDSukGeLiDOKlUv5Dq3QOz3br60i6V08kVHMtcEVa2s0L2WzbDoLkXSLuLO39ubJniV+yioj/mb4Bv+gh8IhucBKMRQ5HHeXcIAAAAASUVORK5CYII=">Kubernetes 高性能网络组件 Calico 入门教程 - 奇妙的 Linux 世界</A>            <DT><A href="http://ip.chacuo.net/ipcalc" add_date="1612335117">ip地址计算器、子网掩码计算器、ip进制转换(十进制、二进制、八进制)--查错网</A>            <DT><A href="https://blog.kelu.org/tech/2020/04/26/Enhance-Kubernetes-network-scalability-and-performance.html" add_date="1632810144" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADY0lEQVQ4jV2SXWiVdQDGf+/7nvfrfHl2NtuHZzsbLd12chBNG1Fmpax0hIPAi0gHJeEuTGgUhHdBRBDhhRS4iwq6kUWlBCpNnVM2c+Jyo03xo519b2fTs52zve95P/5dLVbP1fPA83uuHon/KZ+9uwPkww9Gx17W9XDV4PU/KUnEJral6q9FzMAPxYnnBzb2pY1haqzvVKSspCO/soIPVCRqyS7NsjA3S+mWLaw+WSb+VLRLM7cdWWfkddNz5vTviql3uK6DFg5RXF7J/NQjAqZJsr4e21ojYARAUd6/dvan3v8MfHzo2CnTNF4vrUogGzpKQMNzXGRFxrFtCraLHgqjR0Ooisbgzdu79u8+0AUg72reX3/l9kjHxZ5B8NfYFKpEVlRcxyZYVIKq63hOAR+JsJFEuDa3hkaImsH3uk9/36ic+OT4ZxfOX22KlceZeDiO52aprd2OrKusZZfwHIdwLE5Q28TC5F90dn7O8FCaA617aT30hsHQnb6xzsNHRNu+NtHwWpt4Zscr4uIvXaKw+kj4Ykn4YlHklu+JkYFzouXNFqFFEqK99R2RHrkhhMjeV468+9aXRnmF2jc8zfhSluqqBFsND3tpHtsrsDgzzb3+P3gyMcXgjI1mFKGZOn6ijB11VaaS3Lnn0xv5kBrZ2sDC7AwvVZjsbWpg/nGeTHqSxalZhFCJx2KsFjwGRh5i1KcYV2I8mJhz5P6smc5ZLqoaoPq5JoSssLqyjK6pRMJRgsEIkiJh2xZOboVwXYrqpp1sDgW5mc5OyyFdvqRJAiuXQ9F0ks/Wk6wuxcsvk8k8xlpZQS7kqSgrZnOykvK6FMIHy1ojrKu9Mopz0pd8fOEhCbC1IGptilzVdq44xVzKR8jFK6l5oZHSp2uwrAKOtYokSUi+9LUE8PZX350UEsdQNMjMcXBPMw2NjQTxyVsuGdsiPXqLy/3DZKMJFNkDn2+7O9uPygDdH7V/6Nruec+2WbBcyk2dVCxIwlBIxU12J8uIB4q4M7mMqki4Baenu7P9KICy/um7PWd/rHmxJWbbTrPvOejREIPpWcbmF/EkiTsjo4zNLaMElG/Onfjg4Dr37wDA/d7fLmx7dd+vMwuLa9GiiK4HDcN2ffvv+czYz5evn5Flo+PiF8e7NjL/ANvocEpCmKLwAAAAAElFTkSuQmCC">增强 Kubernetes 网络扩展性和性能 - 阿里 | 血衫非弧の一存</A>            <DT><A href="https://linux.die.net/man/1/nc" add_date="1605081194" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABEklEQVQ4jWPMYGJkIASmfPmSw8MDYTMRVI0GKNMgrqGRvnZd57NnU758mfLlS+ezZw4ZGWgaWOAsh4wMh4IiBgaGPienlzduMDAwuJaUe9bViWuoI2tghHu64catjw/v97u7oxnZ+ewZNx8fuqfjFixiYGDAVM3AwNCkZ4TFD0oWFusrS7H68uubF1g0iMhIPT1zHqsGNIAIJWkTQxI03D161CkjiwQNV3bvk9DVxarCtaQci4bdPZ33jp9ouHFLXEMDWTpuwSKXonwsGhgYGGYGB318eD9zwyZI7HKLSDTcuKXt5tJtboFdAwMDQ7+7+/rKUjkLqylfvnQ+uHPvxIlyKak3jx9d3rkLroaRmOSNDADqOVrXSjsfJwAAAABJRU5ErkJggg==">udp</A>            <DT><A href="https://zq99299.github.io/note-book2/http-protocol/08/#http-%E6%9C%8D%E5%8A%A1%E5%99%A8" add_date="1637132805" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACX0lEQVQ4jVVRv0sbcRR/732/d8klSGNSbik6CEJWhSyXTbRQcBKHuuuUwUnBQREkCOI/4OAsIjhbugUJxV0QLxI4tcHaoeelueR+vNfhWqVvfZ8ffD4fbDabnucFQTA9Pb2zswMAACAiitT34Plr55tBBgBEaWyQNpWhPc8Lw9BxnEqlwsxE9MoxybALZUIUgRRYkzaV0sw8NTXVaDQyXJqmiIiILPy+WPpUrcP/RwCQJAkzt1qtdrudOWSclFMAuL29vfhy8fzzmZmTJCEAUEpFUXR4eFiv18/Pz4kok0DEp6enubm5lc8r9959pkVxHCOi53mmadq2vbGxEQQBEYkIEe3u7j4+Plar1bu7OxFhZqpUKqVSSWt9eXnpOE632z04OFBKaa2vrq6Ojo5mZ2ezYv6GeHl5GY1G3W4XAGq12szMjGVZNzc3IuI4jmVZ8/PzAHB6eioiSZJQsVg0TZOZlVK9Xm97ezsMw/39/ZOTk3a7vb6+bts2ABBRHMdBEOgsHCIqpQaDweLi4tLSUqvV6vf75XJ5c3NzbW0NAAzDOD4+vr6+preCiYgoTdNmszk5ORmG4dbW1vj4+Gg0yl6+7/u+r7PWmXk4HCJiEATVarXRaDw8PKyuropIFEXMHEWRYRhKKQ0IImJZ1sLHhYJVyOVyIrK8vCwimVatVhsMBrZtu66LiCjMgPg2vQiLZOjXyRERAPb29jzP04NoOExjTRTGo5w289o0lZEhMhozn52d9Xo913Xz+bz2h/0fv38Zivxhv2gUPryz8wUz/VddZtLpdFzXHRsbm5iY+AMxikWuFMUS4wAAAABJRU5ErkJggg==">08 | 总结篇: HTTP 性能优化面面观 | NOTE-BOOK2</A>            <DT><A href="https://int32bit.sh/2019/11/28/IPVS%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E7%B2%BE%E9%80%9Akube-proxy%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86/" add_date="1637291337" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACDUlEQVQ4jVWRSW/TQACFvxmPs9iJk1ZpG2hVRIUqKFJFUUE9Irgh8dfZKuilICRKSyCLE9uJx56FA4vIp3d8n97hCZ6cYg15QRAgBdYxGqkotmXptcYYwpBAEscYQ1kG7O9RG+qaqI1SGLN5dGya7e3HJ6TTKssAjEUIdIUxAbOUyYRZSjpnPCHLN569yN+91bo+OH3048MFQYCAKGJrQLejiCOEwDmqGil7+/vV1Vc3nZgiHzw/I1S0WlQ1SZfFAmsFr14CeM/3EUJ0PPnrNzgHNJIkOTkeT2ZcfePsKUWBcwEbfbIcXVJqVVX68hNVBQBW63q5co2QRcbONs6hteLjBWGI80jpmi1fFPyP83tHD69mM96f047Is4Bej15CGLbvP0CFbnSzJgjB3XsbB3fy6YzNPqtSEkjyHGMEgR2N8OsDy6I4Py+zAiH4OWa5kiRd+n22Bmp3V8ZdhFgzlKLVig4P2b2NdYAiXSAli4XcS/18JroJWiMlSolAudVSlGWi1PX1DVpjrSLLGO7gnV4u7TzFe7zDCurag4xjOxlnn79QLAlDnA2IY5zHGFcUfjrBWpz7F69L76xRocnm5DnOB0iJMVjnTY3zIH6/9odGk07HzFO6HbwHFMMdggCt2d7i8vNaWwgEdGLw3BqSppRaDdsRWjMY0GgyHFIUGPNXgLBB0qXZJOkRdyjLX4fpIudl5LwNAAAAAElFTkSuQmCC">IPVS从入门到精通kube-proxy实现原理 - int32bit的博客 | int32bit Blog</A>            <DT><A href="https://www.kernel.org/doc/Documentation/networking/ipvs-sysctl.txt" add_date="1637565878">https://www.kernel.org/doc/Documentation/networking/ipvs-sysctl.txt</A>            <DT><A href="https://www.qikqiak.com/post/how-to-use-ipvs-in-kubernetes/" add_date="1637652803" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACuElEQVQ4jY1TTWhcVRg957v3vckMnVibJhIELVJpsVDURRdCV7rprgu7ka514cKNFZXQTEGk7vxBhFIo2J0/iIh/iHRRRKkUsbhITWlMjK0lselMOm/em3vv97mYvGm761l/59zznfNd4m6YEaQd+ag4QNWX1NLTMQJQvTgo0qnv53ZeqGdqCu9iE6C9cKp4heLfjim1UlUiJQUkQ6shRW+zeOOrYzPv17N3BLZUj56uDrtG/kV1u6uWNIakokkJ1QTSb2tPys2b/cPfvL7zy5ojIx80dM558WnOUjACsQjmm7mw4YVFoI9R42a/NNLmcOQTV6/B2s7Rs+WezPB7VVZ5LmYPtYknH8ktxMSLV4e4thHs9iAJ6aog3P/DazOLgFHQGa1RdYc7hmUSAhZM7ODeCcw+KHx02uPgEw0MIuGFBjhnhZsCAHRO0KMDA4D1fwp1ThniEPsfa9EhQ9MRMRmbHvZwS7mwUiH3xpRk1EJnHmMHTkAScGa4slLgz6W+dTcD+kW0hasFl6+VcDCAhMlW+J0T8HWJEUBmoAh4a5DSL4vJr/UGAM0WVirrlYZmDgEs+nH783cEPADQkppxsv2AX7s1uLR8I80C3N6akKyVS1LVCsJc4XXkADbOwGUT2yD8DPSEZE+FYffzdrO1T5xcTuaej3Hzb7p8RU2f09jP6xDHGSg0p7ghXfOvWPV+EtpUSDFWiuuSNf6wFNfgfBfE9aDcymDepHag4jegYZWW2pR8A+QyYdNlrM6HoniLjm3vJ6Zg/sMbZXVhdEM0qW/6x+OTP393/MUOBLvMbT9z7p2z75rpTAhpffm33mWD3xHj8OOU5V9f+eDxChg9PA5xhE9Tpe8dW/1vfWn3oQMZKVk7941fv901nN239PL5k9OXcL/YfWix8eybq2eeefXfmXt/7L34H2wzbAp7lL+HAAAAAElFTkSuQmCC">ipvs 基本介绍-阳明的博客|Kubernetes|Istio|Prometheus|Python|Golang|云原生</A>            <DT><A href="https://github.com/trojan-gfw" add_date="1655778960" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">Trojan-GFW</A>            <DT><A href="https://trojan-gfw.github.io/trojan/authenticator" add_date="1655778963">Authenticator | trojan</A>            <DT><A href="https://roov.org/2020/03/bbr-bbrplus-bbr2/" add_date="1655779599" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACaklEQVQ4jQXBy24URxQG4POfqurbXHo8Y2YQso3AXBRDEjawyAYlW5Y8QqS8UJ4hq+QtkCJlhRAoEVE8YDBhhG2YS7enu6vqHL4PP/y6pkBacEgM9TkMyM8MjGpNzVLzkmLJRomg1JBTZUQiBwRCArFQgJWCwGV4so9Rh965lgtJL2EdGYKloFqwRhJD1CekACFX/XlCj0r887/2F3Gw1sBhc91U1wwnBmAypUmBFRALnHfyndPvrf72Qsy/fnjqs8+hPI8xUhvIxtLEjG8GjGvhIz6aUN1RRjir6AHJj/d4/k5eHcvJ/aQacXqpFhY9kN/qw1tsoL8/C/sLOczktJLTGutGf3marrq4nYfhUj/tG9trNWtomvHsCv74MxwuwnQpy0XXfvZ1aY8eZiev/cXz8G0XzwbG1IktlI3ouEebSgcXMhSlHqZ9zqdZs5E7Ezqe+8xr7dhE7JwFNiKJqERKvHIjccciN1evJeORKQTjindGzFU0pMoUSbkfdYepWseBw2RmwQRovdX1UkyCd393t27bgz32XpTkwIKvCGAJa0LEjV10tQAUlZgQMz1Z+fmL7sHjrGupcHxYGnaRhhE3LF6/CofXOY2o1tKIiMhqKcHowT33/FmTFDyyEK82MRi0FAKtNvrhTfzpsVsteNZXF/TLeRyM+cOxv3wv3+ylPkXwaieVFq1uHfUs//cy7F6Ic/Tmry7fhN2b9v28287Do2lWp9gYsCV796OAaJvzp0wGARcn8mUbCxFq9O3LrhWd5TyyRo1mBrmBzVvyjoaVmKV0DpKSgcaINDBlnIg0XtDq3iXikAqir8pdXJiDGE9VAAAAAElFTkSuQmCC">BBR vs BBRplus vs BBR2 一般网络速度对比 | reizhi</A>            <DT><A href="https://p4gefau1t.github.io/trojan-go/" add_date="1657870639">简介 - Trojan-Go Docs</A>            <DT><A href="https://www.zccie.com/cloud/linux/2023/" add_date="1675931596" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACo0lEQVQ4jUWTTWidVRCGn3fO+e5Pb9LEVqq0lqjtUhQt0oIIuhBE0J3YpQtBrFgCBRW6EFxYoS0WuhF14aobQVy0C8GdoEGk0AoSRcSgi6Q1tjdJ773fzznj4n5JzuYs5sw8M+87R+uLfIIwd1yAAwY2MDZe+/W5L77ZPHYK6h5Oxtg9roC0rPJdHMAdJKgzDPYAW1wOP7y/wcDO5noyDbKNUJtgxK2aBscRAnJhGGOWj904+VUu0jXKUQ2AJNy9vTNmgdQsm8CAiBOyY/1IxDl3ffPIOwp5tsVG3EP7zoCAm9PkRXPHgQzUg4IYG77tfn+msv7kVa+rBghI2p3dM6Eb8HyFpcvfxU4g+HSsYE76ebjvYhXieXnpmIQD7j5NxpGM3NylmXwAEM34RZCsoNsd8fXTN998UoPmCa9S3ZLTDl2eCN0uqbzA0qd/ARaHQ07cHqMHgAd/e/sQveonb5qELBAKw0TrE4QiUo1/Z+POJSAAOR78jNEO4dn4EdIcOSewksY/pOnfQh4QGTqBUkvcvHRvp6m2UuKZ0y8R4lVS08hUeAprfx698soj969+7KLaVnEC3VFWb9vTCDgPv95Ddg4chCR3d+lG3n94oVh93nY9oAf08HafnAhkDs29RSgep5k0yAxcIM0WVflP2d+8dvvRPYd7Q69zYDaUWq/7zBdj1uoZIsffeIhg75HqPFXd5S5wlGuze6nQ9fF+Wy73+lMz/+nq+gIv71vh87XHSAQixeA86ADe1C09uVyIPBcm6Y/JfDrS3cwLnbs+bPocn1nVrarPC/Mr/FvPEFE4iQSh02n9mq67tHdpdLBz+sCPsy/e97epjUVBlUUnOClDxJtFcjhBznn6LTI+rTAqk6/UmS+33Pv4VHYMhLOVphb+D7P5PX9D/HopAAAAAElFTkSuQmCC">OpenvSwitch的原理和常用命令 – ZCCIE博客</A>        </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DT></p></DT></p></DT></p></DT></p></DL><p>        <DT><H3 add_date="1672912756" last_modified="1672913065">存储</H3>        <DL><p>            <DT><A href="https://stevenocean.github.io/2021/01/12/minio-sts-assumerole-sample.html" add_date="1653985628" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZ0lEQVQ4jW2TPWsbQRCGZ+Z27w4JSeY4FZKFBKoCgRSGFJZaoyZVSG8wqHDAqdPEDjJp8gviQti4MC5TpUlhcBGF4NpNChMJOwblQxCEON3tzqTwSciJBhZ2d94ddp95F+D/oNkkDMNcEAT5ZbllG5iuGQCgVqs9zefzvZWVlc/1ev1ZquFUg4uH7kW9Xn/sOM5rZn4iInciREDEj3Ec7w8Gg0+L+nmBSqWyqrV+iYjPoyhSWmtxHEcAAIwxaIxBz/MAALpRFL25vb3tz59QLpcfuK77hYheMDO1Wq1vhUJhYowhay2GYTjZ2Njoi4glorbv+xeVSuXRvIDjOFVEXDXGGK11fHR0lD04OJjEcTyJoggbjcav4+Njdl3XJkliiKiolCrPCxCREREGAEcpRcPhUK2vrxc7nc7v0WhkiciJokghIgKAIyLMzAkAgEpvQABAKTTMZDLTw8PDr1tbW4Xz8/M/w+EQtdYyyy+yoxSSzGgzM2azWXt2dpZrt9tet9uNm83maDweIxHJ3SUAlFL4rw9YRAQRJY5jKhaLcHp6mjs5OUl2dnYeTiYTHwAkHWyt5UUGGhEJAKyIgOd5xlprgyBwdnd3g16v97NUKpkkSRgALCISM6s5A2PMd0T8obUuTqdTu7m5yZeXl6Hv+yIime3tbV5bWxtbaz2tNTHzjbV2cM9IpVKp5vv+KwBoT6dTUEqJUkoAAKy1mCQJ+r5vRORdkiRvr6+vb5ZauVqtNl3X3ROR1qKVieiDtbZzdXV1sdTKC+1hAID0A+2nwPb6/f77hc7NYC6NeWeCIMiHYZhblpvFX2+DHaWamhKYAAAAAElFTkSuQmCC">在 MinIO 中使用基于 STS AssumeRole 获取临时访问授权的示例 | 未来边缘</A>            <DT><A href="https://www.cnblogs.com/chenny7/p/4026447.html" add_date="1655879018" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZUlEQVQ4jZ1SS2gTURQ99703E2O/FBFsUUcFwWkJtk1mMkmj0aWgK0URxIVgwY2lSAUXgiuXblwUV1IVFy7cFXf+W1MIhTSIm2qhpVCLaG3zYZI314UTjVJFvLt33rn3nnPeI/ylMsnkNRK4CgYT+M7z6dzY7xyxSZ8AgLTnjpCgGwF4BIxhCHlmyHPH/9RHzYcsoDJecjHtOBcamNvfb2e85FosFtu+mQJuBte7u00wK1Srrxq83OzsW4AX26KR4eTAwIHGYgFAevG4A0A2wPzychmEnGjZOmHbdiuAION51wHqECROKVOdCLlSANBSiWNDicSR0IoAAF2qXAQQ3dbZ8T7jefNC0AgCvieV6gPTznBAIACAiTag5OXQSgAAU4XCx5fTb2Ic8BgQPNiofjkIwn4pBIQQh0PFAQFAanBwnzSNQt2vDU7n8++aQv2RTcqNnzSNyCOtAwa44q9v7M0ViysCAKby+XkAWhnyUlO41Mgl7TgZ04jcDWf6UsootUazDeJ3G+DHEPIcAAVAh1Z0OpE4bZjqBYCWml8b5UCPGoYBBepp3gQEeGYq1TnkOMcBIJVIJA557m0p5c2AebxSK/e+npm5tVauPvR9n0C0qzFAA0CtVJqs1essDTWR8dwPW6KRGQadD1hP1jUXALPLtm1zbm7us9b6KQEOQrkAgFyxuJJy3bOmYfQxWPp+vUTEmoUwKOAWBbRrrSMAfDDug+gKAPrlC/9reb29Xaq97cmnta9H5W93MpvNSsuyhGVZwlpYEAs/c6LwWWlpdbWyu2fHHmGYxf9RQAA4FY/3lev1pW/XBdgLKncYjQAAAABJRU5ErkJggg==">LevelDB库简介 - 如果的事 - 博客园</A>            <DT><A href="https://www.storswift.com/product/swiftminer.html" add_date="1664183428" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUklEQVQ4jaVTv4tUZxQ9537fm+fsuDuKLkpgGwkYDQGNa5M0C9k2NsEi/4CljSHBblKZCEEw5J9wqmS7kGIiFlaiwopFUgQJS0CzZmfdmX3vu/dY7BpRNlrk1ueee35wgf85fBvg8s3xfMHGF1LM0OgMUYBglkn+lv9zUzKQoTxdnjt49Mvpsw2YGQAgItCZ6WHy9MmvuwQi9Kqupa9HNoJUyqPFZvKsbbc221BUJEWYh3su7j/tElCvmxkNUAAgp7XFKG0FMBmTAQIoeLOtUL6XAeDw9w/fqcz6bTsJoEYnNRw3Ee8d6fY9YkHN9lRQ7GhjkNaR9Hu7Ob7P/dfvzM9afdOSHYtSHCQJCZaMwNqHR/D5icMz/7TemuWOXBKblNHD39c+Wvgz96r6AwaOy53/uhCCuTaU7T9WPjt5e+UNLWVznWJVF7VTh2BAUGDLlDpq/d55KWH4IL0/fzJGGGEJS1hdgoZAgFQ2S59ad7YKswq03UijQurg6RZ/GZIOwIcvwn1NAY/+sHqJwLsML0HQYPCQH+x15j85fmhfv5vXw5VgJoVU1d3kpV29cmb/1d3G955vH07PNVX9YzMpoKWdYNzR7VcY/zVe+ebs3DlAzBjIsDp8SbR8zLB2xh+PN5a7vbq0k80GYBYIKNxSPwf4MwCcvwHLGDBeOT2EYzCwqvrqNKAsWGYymHYEe2nAhPsAMHwA7fkLFz6+OBulHGjDnxAskChBNFalmT7aKn4XADBg7J2BxIu31hdSSp26Uji3WVQre5Mi71v/bnHu8Qvoc6wjJGuT2AzjAAAAAElFTkSuQmCC">StorSwift上海储迅信息技术有限公司|高性能分布式存储专业厂商</A>            <DT><A href="https://github.com/qiniu/kodo-browser" add_date="1664185343" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">qiniu/kodo-browser: Kodo Browser 为七牛对象存储（Kodo）提供类似 Windows 资源管理器的功能。用户可以很方便的浏览文件，上传下载文件，支持断点续传等。</A>            <DT><A href="https://blog.51cto.com/u_14834727/3097427" add_date="1664185809" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">filecoin lotus 测试网络挖矿_KK下山去买菜的技术博客_51CTO博客</A>            <DT><A href="https://www.r9it.com/20201020/getstart-for-filecoin-mainnet.html#%E5%90%AF%E5%8A%A8-lotus-worker" add_date="1664244700" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAC+UlEQVQ4jQXB3W9TZRwA4PO+v/e857OnPevX1jK6jrJ1dQyHwAIYFmVJI9xIgkESuQYNoNHEhD+BhBu448pE44VxF8ZECZp4sagjm8mEZBmWrdSxlXZtD2tPz1fPF8+DUtl46Pk+4+MQKA9AGCZAhuHEJGFI4XqGNcC02+kLIkc47KEQWMISioFgxg8JBswgz/HUCHdsYkRMiq8aho9RJMJREFiedVybsBJghALEUJF1bT/w8ZdX3jk7nUqqNERhpTr27R+11ZctVY50tV5oeQTCAA1CYMG23NFs/KtLs+UTaddyA8IAJcemIiEr7H1vrW1UeZljEAZB5AWZdy3/gzOF+zfmeMb+denlo+Wq8dpuNDR74E3kYtOF0eVKZ98wgUUgipxpDMqnxx98fuq7X9Zv3V259N65xcfV3R1L5LOf3X/YaBjzJflKubT8rKcPQpBEGgb4649na7vdT+8tlzKpm5fPThYO/PDw7zs3P3pa+X9xaX1t03j3sPz+yQKfzmEOSFRVPcd7Uu0NbGN6Mm/w6UImfWH+5AZbuHr9i4wqrz6rf/NbNR8NRkUK0ZhIBWG7+Xr+6NjmjpY9NF28eA2Z2sLMsJM5mlBjem0LCByfVEzM/7i7CQmZl3zYqZsvtvffOqieKI6dnsoE/a4feo6u653GuMJO5eR6b39xpdnWbRjmJd8Jo5RqmrHTtAhBKWI1TXANGRlW6/E/K5X/Hjl7z9umxwVSFOCImk2IEp1RI7MqTnB13N9otgtPa4KjeYFp12r8Rq0+KgUqZ3b14UNDMHe86MYYh3UlhcaHJWdgpTLxhWLpr5+WTGDO3/iws7oVmPpgYUQCarUcYudRy3REkQ2UQEdassiD6ykHkzqGuZl8a3fvxfYrWWWhH+RKsWaCwa2gP5RKjORSSpzPSBNaJdbZIsh3IB07kE/9/vOf7XYXKM1PZGwnVJgIjJ/KcgLd72iHk2cul2+/PVNeW5fm4m3MsdEhZbWfzX9yrY9pxfiXkYWLT5g3/jxUc36MCk8AAAAASUVORK5CYII=">从零开始搭建 Filecoin 主网挖矿集群[持续更新] | 飞行的蜗牛</A>            <DT><A href="https://blog.51cto.com/pengjc/2417004" add_date="1664262394" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxklEQVQ4jU2Sz2vcZRDGP8+873c3yW5208amWkOkVGpRROsvKFYE8eLFQw8VShH1oOZgD6KICEL/AQ+ihwpSTx6Kokiv/sJ/oKUohlZQYlMbjE1rdpvd/b4zHnZbHHiYOcw8D/PM6MJDTx5RSh/Wpb7LpSDCAAIEgDRGRCglcHdzV075Sl3KCZ07+NTVJBZGkisnhQcCPEIyI+p6zGMW3utjM9NgKapSWwnWs5sWRv3tcs/Jd61z6AliOIScFeFY1eDPDz7i7y++Bklzhw/F0vvvUP+zqUtvvFViOFzIRDi4Ne/eQ3Nxj4IgtodRRkOl6Wms2aC5tMjuY0dj1/Gjyu02g7W/QpJF4BkwzPBSE+70f1mJlZdfl81M4/0ByokHzp6hMb9TQIS7fDiUj/1RhghJWFUhiTDpztdeofPYIwxWV7nyyWf8/t5JZh9/lN0vHpNVGZmFAU6QAwkJm2qCROv+A0zvv5eUM+2HH0TNJivHX6V3/mfmjzxPY8ccuCskQBjuKGfqXp/Rxgb9lYv8+sJL3PxjlSiFqX17aS4tjgXcuX3aSWQkIoJLy2+iZMRohKoG1DWYoaoiAEpB/xu8TRClYK0Wi2+fwJpNyo0brJ06PRESRIwxEQLGeVJnQYhg7pmnqbod1f9usXbqNF7KpHGsFLcIATMLTQiNqtLo2qa2zl9Q1DUxGERjYRfjtw18MBivBeAeUQpe1/IIIckMnOJx/dsfQjlT3TGv+z79OKb37UXJuP79T/hWD8s51G5JKZE6s2FSiPAc7pZn22Xjy28shnXsfO5Zpg7s1/Dib2x+9yPrn58htVrU2wNd++psWLtNvbFBuDso6dzBw1eTtDCK8HqrJ8uJ1O1SbvZVen1Su33LzPBeb+KnYqrdsoLWLXksC102oOp23GZm8H4fS5lqbg6Zbl8kd7tUO+a80ZlFssvJffk/1cpYlw4f2WUAAAAASUVORK5CYII=">linux系统下检测硬盘上的坏道和坏块_赤练挚爱的技术博客_51CTO博客</A>            <DT><A href="https://book.open-falcon.org/zh/faq/linux-metrics.html" add_date="1664263151" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">Linux常用监控指标 · GitBook</A>            <DT><A href="https://filfox.info/zh/tipset" add_date="1664263555" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADA0lEQVQ4jY2TTWhcVRzFz7n3fcybTBumk+nQmlJsCKWuWq2LFNLQhWIWQgkKbhSk1rpoxaUgSBeldOHK1mL9QEoRF0IpBhRakUyy8KOUUO2iGqdYMpim85GMk7zJe/fd+3fRRM3Osz//w/nxP8QjEYAAwK6xK6O5fOkYdThKrXYBgFg3LzaZWYtbn85XX575r4fY0M7n88MHTp7Tft8b1KGvxABiRQCQmtQBxCbGmJUPf5u88DYwGa9fOa1QqUXDT79yNYgqz9qs4yhi/1o1WoT0NZE5JxBaKOhcfpvy7MPrv/50ZQKLQz0CwPD4N+8HhcdOObOUZA5+mgqfGSnhuUMDKBcDLHczfHezhSRxkhprqrcR+u7P83cnx9/k7rHLI1FxqEqA1llFgOfe2oujRyr/1gPWERFnP6m581/Mu4FiIN3m72MqyJdPUIU+YRH3LN95bQhHj1TonFs3iRhjARCNpUS+mnrIQgQIAj/Il0941P5hIpM4tWrfngJeGt8JAFjuWml1UpaLPvtynsze7fDMR/ew0ExQyHvKWiPU/mGPSg9SMiSJ8MkntsL3iMnqonx2rc5f5rrYUc4hChXvL6zJWuJQyGs4JwQyUOlBb6OhtcCOUoAbPzQR+hrjowOYmV0CmSCzDkGg0RdpOLeZjBJn66AH34fcqa2g3UlxaH8/j0/slq8/OIjBSgitlWhFWicbOAXUEGfrSqyZdvS4JfJc9WYbvcShkPfx/e0237v8hyw0UvE0KUIhCZKgiIPyKdZMqzRuXBKbGM/T6KxmUpuPsdhK5NV378j0rRapQJAi8ijdiQioAJeaNG5c0p371+rFx18se9H2EdheupaKikLFGz82UdwSbOosgADOeEExyHrNi/e+feFjDZxW7e50tX/7noNRobK30V6RWj22JhNaKyS58UWWpNLBNt/0Hlyfu/X561idsBqYEqz+bNory1f7S/u2el74VLfn+YQQEBAAqBV1TkNsliXti3OzF47jwZcxMPXPGjfNOSqUjoH/b85/A+cHiqGYs5AvAAAAAElFTkSuQmCC">最新区块列表 - 飞狐区块浏览器</A>            <DT><A href="https://github.com/filecoin-project/community-china/blob/master/documents/tutorial/local_2k_dev_tutorial/local_2k_dev_tutorial.md" add_date="1664263923" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">community-china/local_2k_dev_tutorial.md at master · filecoin-project/community-china</A>            <DT><A href="https://docs.yycloud.pro/manual/quick-start.html#_07-%E5%90%AF%E5%8A%A8-lotus-p1-worker" add_date="1664514501" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADKUlEQVQ4jXWTT2hcVRjFz3fvfe9l/j3TiUnRxIZWGsvEbIwosRYVgwqCQWkVxP8N2EhA0RapShi7qQi2aqRW7aaiLejGQikiXYiJu0BiaJO0mFYxxmQmocmbmfvm/bufi5iNJN/6fJwDv3MImx4TGGAiAAABvJFKAcCDx8cbZ5z23RTqtgTSz6ac8dlX6RIIIDAAYh7u2IXVcncQWznHThYqdteoe/DnJSp8sXTvYoj3HKUuBX61ZkkpY1K3M3FmudY8xONkojvzQxYYRsgrItaRsTMpisK7Esv9mHad9pqSitdTieTd7NhSSsUIgpIkU45MPHjG77cf0r+eNJZroyFqFQlTHJMxMjVpp/xRMfOiuxxDeAZJcnPWmU5FetZPqN0z4tGzN54LXnM+8rSdvl/waoGjhlm4TdMm5FBy4tMbpUUBMF0fvPUXS4nynBc+7sXc58stVwf1SfcD97D4Rr9S+5qf2InI/Cbi1T6s/PWYcpxYvTN3AQAEQAwwZbX37SMtF194MjX/ciKS3dt4vrMjuqK0sdu+yzybq1rZPmpuP4Dw0EvXoobPuQjxH53/oQPxUydGdizFyfEjtaNjMvDSR1qOtfU6U5+8vX//WBEQRcCsf4iN2ErL8LpEEhhEHMHasC207lwoTmWexve6VNiX/mphx/Cnlbd6ptTO0r7wh/RQ5n15rrL3TzfT3o+DY8vlYmemGVOaijBqPfZq/p/nh9Wb94n5WlpY9k+LoiU3Y3c1ZcMzf+/VZxvdWJ/n2u9f0lHX22Jy0/QufwjQWoLtJ0p7dD18oCWfu+77dbHsm65EiK3nVp5pHXCHeaz68FwGeqWm8hOZm7JxuFTeZtvOOB2e+5E6T63mw7DSU4nlPSwdSUoaEQZlB1gIuP76aX3A6dUjn0VWY9pqCG5BnAhjyDBlJqSlRpXkuONGbA9YSk0G9bBqRYlKpNMdwLjL+raB3ssXOL4jP2SxjuKQr6pQ15HKpUSw0g/KVwkAek5dzl+rb91DoW5NpOWnbTnxx0DLxNoCmQCAj7UXUPW6I2NnLRUvVp22kdyhydLmawYIzMRrTaPNRP8C7QiB3KigwiMAAAAASUVORK5CYII=">Lotus 快速部署 | 原语云产品文档中心</A>            <DT><A href="https://www.i4k.xyz/article/dadajuan_plus/106571287" add_date="1655179364" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACL0lEQVQ4jVWSu09TYRyGn++c71zaCgKVCi0KDZiAgDCBURzwkqCLcTdxYjMuJjD4fzgYEl2MidHEhVETE/GGAxoakWgj3ioKVGhpz+k55/scqATf5be8T37P8IrUtA4iIoXWCEGkMAS2xBAoTajY9mlwEQJDYAikUqQaSMaJ2ZR9muN4AV+KlD1iNu2NnO/jwQJegB9Si5B+yPgRbkzwaIGJfubyHO/i1hxlj2vj5NcY7mCkCwF3XjG7iCENtjyCiPVtNqtsbFOssFkl3cjndf5UebKMH+HYvPuOY2EEClfS2UKmiaVVRrOUalRqJBze/6TsM5ShN8XXdYoVTAMjjEjvJ1KkG/ECDjfjSraq+CEnu2mO0dlC3GYww8VjlDykJVnZIFdg5jmn+7BNlCLhMNbN3dc8nOfmZVY2APJrWCbSlczmmDjKQIaDDcyvUKzS28bTj9x7w+QYPSluv+TxB+I2cRvROqUNgWsRRAQR2SSnetCaSg3H4u03cgUihTQBtMZAoKHsozRrZS4Ncf0M2SQDaabOcqGf3yVci91INAhMA8C1WFpl8QdNcbRmscDSKq6N0vUdCIEUoo4qjWXSc4CYRTKBIYhZDLYTt1CK3ZrcORoMCCNGsszMcaiF1n08+8TkCZRmR1vsBQQoTdzhRZ5zvQx1UA0YzpArII26z38fgFCRTDDQTqi5ep/lX1wZpb+NhEPJR/4DRGpa7ygJjQLbrE/AkWx5JGwsE7FH6S+ZLNvSPZXi4wAAAABJRU5ErkJggg==">Gunicorn入门简介（小白也能看懂）_dadajuan_plus的博客-程序员信息网_gunicorn好处 - 程序员信息网</A>            <DT><A href="https://docs.yycloud.pro/manual/quick-start.html#_5-4-%E5%AE%89%E8%A3%85-lotus-miner" add_date="1664347742" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADKUlEQVQ4jXWTT2hcVRjFz3fvfe9l/j3TiUnRxIZWGsvEbIwosRYVgwqCQWkVxP8N2EhA0RapShi7qQi2aqRW7aaiLejGQikiXYiJu0BiaJO0mFYxxmQmocmbmfvm/bufi5iNJN/6fJwDv3MImx4TGGAiAAABvJFKAcCDx8cbZ5z23RTqtgTSz6ac8dlX6RIIIDAAYh7u2IXVcncQWznHThYqdteoe/DnJSp8sXTvYoj3HKUuBX61ZkkpY1K3M3FmudY8xONkojvzQxYYRsgrItaRsTMpisK7Esv9mHad9pqSitdTieTd7NhSSsUIgpIkU45MPHjG77cf0r+eNJZroyFqFQlTHJMxMjVpp/xRMfOiuxxDeAZJcnPWmU5FetZPqN0z4tGzN54LXnM+8rSdvl/waoGjhlm4TdMm5FBy4tMbpUUBMF0fvPUXS4nynBc+7sXc58stVwf1SfcD97D4Rr9S+5qf2InI/Cbi1T6s/PWYcpxYvTN3AQAEQAwwZbX37SMtF194MjX/ciKS3dt4vrMjuqK0sdu+yzybq1rZPmpuP4Dw0EvXoobPuQjxH53/oQPxUydGdizFyfEjtaNjMvDSR1qOtfU6U5+8vX//WBEQRcCsf4iN2ErL8LpEEhhEHMHasC207lwoTmWexve6VNiX/mphx/Cnlbd6ptTO0r7wh/RQ5n15rrL3TzfT3o+DY8vlYmemGVOaijBqPfZq/p/nh9Wb94n5WlpY9k+LoiU3Y3c1ZcMzf+/VZxvdWJ/n2u9f0lHX22Jy0/QufwjQWoLtJ0p7dD18oCWfu+77dbHsm65EiK3nVp5pHXCHeaz68FwGeqWm8hOZm7JxuFTeZtvOOB2e+5E6T63mw7DSU4nlPSwdSUoaEQZlB1gIuP76aX3A6dUjn0VWY9pqCG5BnAhjyDBlJqSlRpXkuONGbA9YSk0G9bBqRYlKpNMdwLjL+raB3ssXOL4jP2SxjuKQr6pQ15HKpUSw0g/KVwkAek5dzl+rb91DoW5NpOWnbTnxx0DLxNoCmQCAj7UXUPW6I2NnLRUvVp22kdyhydLmawYIzMRrTaPNRP8C7QiB3KigwiMAAAAASUVORK5CYII=">Lotus 快速部署 | 原语云产品文档中心</A>        </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">Java </H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Java视频</H3>        <DL><p>            <DT><A href="http://edu.csdn.net/" add_date="1350273831">黑马程序员—Android培训Java培训.Net培训Windows8培训</A>            <DT><A href="http://dl.vmall.com/c0pvae0z27" add_date="1350273831">黑马程序员_毕向东_JavaScript视频教程–华为网盘资源共享-文件备份-免费网络硬盘</A>            <DT><A href="http://edu.csdn.net/main/service/javacourse.shtml" add_date="1350273831">黑马程序员java自学课程</A>            <DT><A href="http://edu.csdn.net/main/studyline/heimaline.html?flz" add_date="1350273831">最经典的Java学习路线图,Android学习路线图,Java视频下载,Android视频下载</A>            <DT><A href="http://www.itcast.cn/" add_date="1350395760" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAc0lEQVQ4jWNgGGjAiE+SLXbNf1xyvxaHMDIwMDCwkKqRoAuQNcNswaXm1+IQRhZsEsianzEIw8WkGN5iGAgXIFYzsu0MDAwMTOgmYtOMzRIYwBqIyADdZmRL8BqA7F98AYvXBehOxhUreA0glCYwAnEEAgBAxjhOhSYPxAAAAABJRU5ErkJggg==">传智播客-聚集众多java培训,net培训,php培训,网页培训大师|先就业后还款！</A>            <DT><A href="http://dl.vmall.com/c0gblm1v9x" add_date="1352644625" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jWWSX4jUVRTHP9/7mxnGyZnd1cWwsM0/meDusjGCsw/tTllR2kspQj70EPSQaEQPuvQgCkVPQgQWBNFTBUIQlKz0sAZK4Ow+rNRm1gpBIKbNrLiszjrzu98enNZlO0/3nPM953zuvUessNOQPDdcfd9mb+q4J4TWHTk/AZy5Pn9jbPvMzL3l+szKBs/uHD0AGpMgMU9Dbl5iK7B1fbH3D+DT5foAcBxCozL6wbVyuYC0/UE2DMoMLdP3T5XL2cZw9cOpcjm7RHC4MrIPhffy2WLJxPOQACDoM2qqUx3R5KZM6QQwtjFXnAU+DwBS8vL9Ch2Sk27bfwFguhA994/ckGMgcKST27N0heg4uQQpHwKd7SBklt7JHieEt+jgWZ4ECI1K9WiMTNt80aEYAAfwzc6kCL5luCu0oxP7KqZcaFSqR1UfrtaEBu14CilivSb5IZtvkDbIXjQ0JHbbithfE2hjHZR8RfXK6JtS+KyDOQucNdoE/G17wsJBGsHeKPSbxQuCJwEc/Y4A1SvVY4K9ltYK2rYnbH07cfHc97+C39458qIVXhHsMsohzynqu0sXfSwDWK35j5wtdWGXLLqArpD46n5IAd51nG0rKVlMAXNYC3e8cPIZau0AsJDL3SsGFQvS63lCX0E6teanH3/572NKtQu/Z8UnBfRoQbyxOoR19WazuXKLOT8w0PO/4Ao7NzTUvdzX/qHnd09v6K2FfObVwtXW5Rhb15tP5HpX1WP3trlrBUKSzhQfno1rk13tmI6vuh0HF3ty65PUjf4/b0YdKI+eAf0s/FR0dtwx1kLSfklomyGDPS30GKgvKnsJqw+REBdPS1ST/kce32LzQ5BXozQf8GYR1hmuIBpIKdJmiF8KV+TWx4F0wIF/BJl/AdrXGRDeg72OAAAAAElFTkSuQmCC">黑马程序员_Android核心基础视频教程–华为网盘|资源共享-文件备份-免费网络硬盘</A>            <DT><A href="http://dl.vmall.com/c0gblm1v9x" add_date="1353246005" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jWWSX4jUVRTHP9/7mxnGyZnd1cWwsM0/meDusjGCsw/tTllR2kspQj70EPSQaEQPuvQgCkVPQgQWBNFTBUIQlKz0sAZK4Ow+rNRm1gpBIKbNrLiszjrzu98enNZlO0/3nPM953zuvUessNOQPDdcfd9mb+q4J4TWHTk/AZy5Pn9jbPvMzL3l+szKBs/uHD0AGpMgMU9Dbl5iK7B1fbH3D+DT5foAcBxCozL6wbVyuYC0/UE2DMoMLdP3T5XL2cZw9cOpcjm7RHC4MrIPhffy2WLJxPOQACDoM2qqUx3R5KZM6QQwtjFXnAU+DwBS8vL9Ch2Sk27bfwFguhA994/ckGMgcKST27N0heg4uQQpHwKd7SBklt7JHieEt+jgWZ4ECI1K9WiMTNt80aEYAAfwzc6kCL5luCu0oxP7KqZcaFSqR1UfrtaEBu14CilivSb5IZtvkDbIXjQ0JHbbithfE2hjHZR8RfXK6JtS+KyDOQucNdoE/G17wsJBGsHeKPSbxQuCJwEc/Y4A1SvVY4K9ltYK2rYnbH07cfHc97+C39458qIVXhHsMsohzynqu0sXfSwDWK35j5wtdWGXLLqArpD46n5IAd51nG0rKVlMAXNYC3e8cPIZau0AsJDL3SsGFQvS63lCX0E6teanH3/572NKtQu/Z8UnBfRoQbyxOoR19WazuXKLOT8w0PO/4Ao7NzTUvdzX/qHnd09v6K2FfObVwtXW5Rhb15tP5HpX1WP3trlrBUKSzhQfno1rk13tmI6vuh0HF3ty65PUjf4/b0YdKI+eAf0s/FR0dtwx1kLSfklomyGDPS30GKgvKnsJqw+REBdPS1ST/kce32LzQ5BXozQf8GYR1hmuIBpIKdJmiF8KV+TWx4F0wIF/BJl/AdrXGRDeg72OAAAAAElFTkSuQmCC">黑马程序员_Android核心基础视频教程–华为网盘 资源共享-文件备份-免费网络硬盘</A>            <DT><A href="http://www.itcast.cn/" add_date="1353246005" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAc0lEQVQ4jWNgGGjAiE+SLXbNf1xyvxaHMDIwMDCwkKqRoAuQNcNswaXm1+IQRhZsEsianzEIw8WkGN5iGAgXIFYzsu0MDAwMTOgmYtOMzRIYwBqIyADdZmRL8BqA7F98AYvXBehOxhUreA0glCYwAnEEAgBAxjhOhSYPxAAAAABJRU5ErkJggg==">传智播客-聚集众多java培训,net培训,php培训,网页培训大师 先就业后还款！</A>        </DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Java API连接</H3>        <DL><p>            <DT><A href="file:///root/Templates/html/zh_CN/api/index.html" add_date="1396149896">Java Platform SE 6</A>            <DT><A href="file:///var/www/html/java/api/index.html" add_date="1409645532">Java Platform SE 6</A>        </DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Java 工具</H3>        <DL><p>            <DT><A href="http://download.eclipse.org/technology/babel/babel_language_packs/R0.10.0/juno/juno.php#zh" add_date="1352632361">Babel Language Packs</A>            <DT><A href="http://help.eclipse.org/juno/index.jsp?topic=//org.eclipse.platform.doc.user/tasks/tasks-127.htm" add_date="1352632463" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrklEQVQ4jaXTz4tVZRzH8ffz3POcM3Nmzr2DE2pO440gkRjFsRqTUeFGkeaqFhW6CZEIt22CaNsyXLWJhBZB9GtRKxeiIaiIjqIQQ9rI6AQ3Ju+93nvuec6P50eLG9w/wO/qu3rx+fLhK44vn/U8xQQA9zurFEOJMJOEwQRBoPCZIVY1opqlKDWGHOMKKquxFEzXFXPbD4yAYeoJfITejNCVYs/WOtvm60hyNvsD0sJgcGSFpiwrnHAU0owTlDKifKQ4dvQFTr6ziG/XsbPTXL93jcGddbz22DxD9Qxh35GVQ6SUYyCZm2Ftvcd7r+/mzdP70W04/el3dAcpSSMmmIqoSoWaAhF5TDtHWD8GnlNTHG7Nk92PsUP47MsfsLWcHfUEl1usqFDEhHiEr7DFAKtLACTAzZuXsSsP2Lu0l08+v8Cla3fZouoECKTwCDxSSoIgYGJiksmZkDAOARDHl8/6xXfPILxnKgl40tU4ZwhqCu8deIdzbrRjwVdUlabSFWtXzo9O6Px6jtfeOoicfpGLv/3CTJKQqAC8wXuH9xXOl1iTYcoe6fAJeeYIeXYEyOWj3NaKXSJi39Lb5FmXMEoAh/f2/yQGR441j6nriiJTbP6xMgIu/fwFLzV38sHCKdqbK3x/7isOHmkR1BSCEicrrB9SVP+QZmv0OpPo3izN5ssjYH5hF1dvXeHUmVW+/uZb1jf+YuPRHZ6ZfR5RcziXU9ouuugwSLcyGChUWBvXePn8j6Tp3+w+9CEP23c5srDMn3HC6sYqHo2rZaRFRr8f0v3Xk6cpjS3xGHAu55VXT7C41OT9jz+itadFa/8h0Bu0+10yU5AXniw1pGmKEhVlacc1dsQ9osYcN37/CWgwG2/DWYmxFonEYUEYpCiBAiksjXpMc8cbI+Bp3vk/AIFWly9dRJcAAAAASUVORK5CYII=">Help - Eclipse Platform</A>        </DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Java 论坛</H3>        <DL><p>            <DT><A href="http://www.iteye.com/" add_date="1358251193" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABjUlEQVQ4jaWSP0gCcRzFP1aDYKgtgiDBtYR2DTldDg3XIAW2ZJi0SS01pLjlUFNbZENT2BY2NdQQOQgtoouT6NDgkBDZoInCRUENcpfXnUT0xvf7/t73z3uWyZXUJ//AmBlpt1mRRIGZKTcAr12FYqVOtf70u0AiKhMLBbDbrIbiYqVO8uSKRrOlcSODBUe7q8TXZdPPAJIocJvewSe4jQKJqExYnjP9+HO9s70NrcmISsZCAV1hrlQjksqwFD8lfZmn01O0N4/LSVj2fwtIoqAbu1ips3V4wfxsf+Sw7Oc4m9c1CErebwH12ioy1wUA4uuy1tExbtW5IIkCMMRGddxGs43H5QT6ViZPrgwHHgN4fG7ryLVFv7ZGUPLy2lU4vymY9WLUMb1w0Gi22F5d0Eif4MZigfvyA/flB97eP3hpd00FLGqU9zeXDU4MIn2ZNxwSBnJwnM2bRlVFLBTA45oYLtDpKURSGXKlmqmA3WYlEZWHrzAISRQISl4tsp2ewl2xRq5U1QVqqMBf8AWXvIajUqSvnQAAAABJRU5ErkJggg==">ITeye Java</A>            <DT><A href="http://www.crazyit.org/index.php" add_date="1364008680" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACp0lEQVQ4jZ2TS0hUcRjFf/fOzG1eDpolo5lOae8EtaYgLStBaJJKelBREfRYVFBYQeUqaBdhRLUwF4EuWmi6CIIg8YEo6qjlIystbJp8lOb4GJ07zv23GDAsiugsD5zzfYvfkYQQAsB7xcVk+1uM9hiszg0I2YC/o42R+jZU/wz2jHQSSxv4TTPdLeJ7xX0R0gLib/IW5IlGhyLe5Tjm+fw19Yuaah6KN5lLRVdG7JynB8h/mosjOgWA3tHXbI7NpnWwjt3rTlDZWYxBUri0/TYlI8/oO6ZjS8skcZUPiNx3HhmgZ7CdOFs8S6KT6R14xaEN5wkKlZ0r8vjm89I13EzT5xq2OVxUnO2hzmnmY8EN1O7GcMHe1DMA7F9/CgChh4VGOwAmxYpRVnjccIs9qadRpAVsXZyFCAQZvHstXJDc/41XX+rxB8bR9PBhqBMATagA6GUTQRFEj4QmVHKiMwHQ2czhAt3jcj6Nf6Si4xFGWeH5myc4E7chSwqzUojJWR8AsqQgSwrpG4+gRBiJuXwf2XPRhSPKztCEh6p3FcRYEmn2vGRHUh5lbQ/QCx0GyTD3kSZUPJ21rCx7iSF2OfJobRgOeRZ0koGERStxLs1mIuij1H0HnWRggc4cZkadQZYU3qt9KElp4Zymasz2etH0kL3mEGlxWWxK3IFJsZKVtJ/hqX7sEXZcq45T4i6kZ9BN/UTnHIh6a/xCxvuGOJhSwNZluzAp4Ws2JQqbMZKctUfJXXuchMhV3Ku5zou3ZRxOO0fIP8Z0axX4fV+FO8kk2m+eFL7A6D8ROVFXLgK9rT9RHi26KtyrzcK92iwCnu4/BseeF4v+/APzPEmI8Bo17wcGCi8wVFlNMBTCEmnBYLMwMx1Em5omOiONhKLq38Y4V/C/+gE5rsBdKNon3gAAAABJRU5ErkJggg==">疯狂Java联盟 企业应用开发与实践 CrazyIt做最受欢迎的Java论坛</A>            <DT><A href="http://www.blogjava.net/" add_date="1353676032">BlogJava - 专注于Java技术</A>        </DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Android</H3>        <DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Android 官网</H3>            <DL><p>            </p></DL><p>            <DT><H3 add_date="1596439270" last_modified="1596439270">Android 论坛</H3>            <DL><p>                <DT><A href="http://www.1000phone.net/" add_date="1353056498" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZklEQVQ4jaWTX0hTURzHf+ece3fn3WqbOrdp09SIZCXk7B/9gbCXnnO+5JsvkiTUQyQkXRll4IMSQUoIUUFwZ/VQEIQR1EtJgZBNKxvOsd2UTdvm5u7un9PLlBmJgt+n8zuc3+f8zvl9fwA7FaUUAQASAHDR9oa4sEY7vux/QlK3Zwxpios4q8bsve8GE/fPD5ES0pCdjvhddyY/ZV53jOsr2bCm5HttF5+HC5XQdUDkQnU7sWkPiIU3otKy60ylK4zyy0+ZsnIN2xxHtUzyCk0tteuZ/K+l8ZC3PhBKFQOw+9n8Eyix3qKyQkHO9so57iNijG9oLoPp6p9BYm24BogsUyVXbztb11NIXv8PLPqAMAdgiK22zbMO3lRiSt0Aq6sHm3ZRhPEZ0OPNVIHbQAG0RKJrwe+tL4bgunNeXNH1bYXz7Ovk9lcm+EZ3h8m7hzM2nXhkaGgGxlk1gA96H5JyyxwiYIYc7St0BkFRKQgAaPZtZxV2VDTpRsskYgwMa+C/AlVMiKqX1GQorknzYm5yVs1M50+6R4MTog8IUwBQQQDMtwxHASC69j4l9ngE6fmrVF7qU3hnI2Glz4aa3c3YnO6HUWixewD9aw4kij4cDHqoIAg0FRsp41U6pctSBcL6wOqP2Zd4RfqghKO6pnCt5T1TLzZ1lyj6SFtbQMtHhi+zhvRddWFO1Tn7IfnLe7/2O9KqxpPfF38uNpLNAIFAkAIA8g++mjjtrWVrHNwRPRW3aGmpG1TjYZpMHzPba0u37e/MzM1KiCfAdOpeDABA6j++l7UiZbv5eOsjW0gQNk7kWvwXPdj5NW4Wc/cAAAAASUVORK5CYII=">千锋网 - iPhone开发,iOS开发,Android开发,WP开发,手机软件开发论坛 - Powered by Discuz!</A>                <DT><A href="http://www.eoeandroid.com/" add_date="1353056541" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACQklEQVQ4jW3TO4hcVRgH8N+5987dMXF3kvhYRHyNRkhcH0FBxUawEGLlA0tbCxUJ2KiFSAgELKKFIBaSQrSwUBAb0whimkh8sFGzhmRDJMSwbja7rsvszNxj8d1lLDxwmnM+/s9z0gencn73Z4aZMlEkmkzOpMRL9/DIjSxvcvwSX53nrwHbKl69l3T3pzmPG3pTrA8DqFMEADx7B7PbqAt291gecHSBX5YDpEh46jYOP8wLu+l1KARImTi3xqV/OHGZt75nYYWDD7HvelaHVDM1b+wLlsdv4tQVPl9kx1SoeOJm5q5jtsv6iJe/48I6r93P+/NURWKqZNRQFjzX5/ZpttcTG8f+4ORlnunz9X6eP8ZnZ5mpqXJmlKkKmoan+7G31riJ+28ucugkGyPu6vHJGa7tUKU2+ZyROHeVpUGoKRN7doTCJ29hbZM3T0SgvTraqphUNhxzZJ4vFtlZM2x4cS+vzIWaPbu4c4aFq6E4pRagab1mwdotgjUlpqu4SxiNA7RIE4sVMait7u0Hef2BOCsTu7qT4eN/cnaVugzSlKhyy5xzsNRl0CU0WBmwMebbi3x0upX+H9uVPEHbGPHhr/ywxHTNOFOK1/fjUrTRLSOrLdXRQptDmTizGhX1OhNlVZtJ0c5K5KZVMBizuMYN10QGB+Z4bDbQyxQg44btHS78zce/x2faCrLaGPHePEceDZB+L/b/rS/Pc2UzbGVUiXT0t5zf+Yn+NPtvZWc3GCOpkFkkTq9MvnJVRNUH7uNfhUDTJ6uU5U4AAAAASUVORK5CYII=">eoeAndroid社区-Android开发者的必备网站-全球最大中文Android开发社区-eoe移动开发社区</A>                <DT><A href="http://www.eoeandroid.com/" add_date="1358251259" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACQklEQVQ4jW3TO4hcVRgH8N+5987dMXF3kvhYRHyNRkhcH0FBxUawEGLlA0tbCxUJ2KiFSAgELKKFIBaSQrSwUBAb0whimkh8sFGzhmRDJMSwbja7rsvszNxj8d1lLDxwmnM+/s9z0gencn73Z4aZMlEkmkzOpMRL9/DIjSxvcvwSX53nrwHbKl69l3T3pzmPG3pTrA8DqFMEADx7B7PbqAt291gecHSBX5YDpEh46jYOP8wLu+l1KARImTi3xqV/OHGZt75nYYWDD7HvelaHVDM1b+wLlsdv4tQVPl9kx1SoeOJm5q5jtsv6iJe/48I6r93P+/NURWKqZNRQFjzX5/ZpttcTG8f+4ORlnunz9X6eP8ZnZ5mpqXJmlKkKmoan+7G31riJ+28ucugkGyPu6vHJGa7tUKU2+ZyROHeVpUGoKRN7doTCJ29hbZM3T0SgvTraqphUNhxzZJ4vFtlZM2x4cS+vzIWaPbu4c4aFq6E4pRagab1mwdotgjUlpqu4SxiNA7RIE4sVMait7u0Hef2BOCsTu7qT4eN/cnaVugzSlKhyy5xzsNRl0CU0WBmwMebbi3x0upX+H9uVPEHbGPHhr/ywxHTNOFOK1/fjUrTRLSOrLdXRQptDmTizGhX1OhNlVZtJ0c5K5KZVMBizuMYN10QGB+Z4bDbQyxQg44btHS78zce/x2faCrLaGPHePEceDZB+L/b/rS/Pc2UzbGVUiXT0t5zf+Yn+NPtvZWc3GCOpkFkkTq9MvnJVRNUH7uNfhUDTJ6uU5U4AAAAASUVORK5CYII=">安卓网</A>            </DT></DT></DT></p></DL><p>        </p></DT></p></DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">SQLServer</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">SQLServer案例</H3>        <DL><p>            <DT><A href="http://sqlserversamples.codeplex.com/releases/view/72278" add_date="1362912187" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABi0lEQVQ4jcWSsUtCURSHf/e8Z2VmkSTSFJZl/g/OURGEQYRtBTZFrUUQ0VJLQ9FUg6NjS0M0tzYV+EzTIMjEUMrMfO++dxvk+UwrGoJ+0+Vyv++eczjAf4eZh9B4OFgs56KFUn5I41UGABrnSClptrG4l+zz9Pmcnd0gkupw8eWpJpiemJ3LZJWYAc6ICIzVvGpVRfz6hgHAZuQgGfAHfE5HD4gIAPD49AAKjYeDmawSE0xnkiTV4eZsH68MxxPxVKn8DMMw6vdULOei5s8AYBgGOOdQVQ0a5y2SxE0i9a5WLEGhlB9qhJ12V8XrCezGrxIspaRbytk6Wh5+q5QtgcarzCxbGAKuLvf+6fnJ+k+T57pVGf308Dchm9wuhBAAAEYMhdf86tRYaGdmcn7gO0iWZEvgcrpvzakSEUqVgj2TU9aU+8s73+igaIa3lg6TnXaHJeh1eBYIsmiUyLIEW5sNNln+BG9GDpL+Eb+vo81uCU7OYhfe/tEwE5LQdR1mO835apGAP1jl/88HKZ63LIgdosEAAAAASUVORK5CYII=">Microsoft SQL Server社区范例 - 下载：微软SQL Server 2008 R2的SR1</A>        </DT></p></DL><p>    </p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">考试证书</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">国内认证</H3>        <DL><p>            <DT><A href="http://cet.jlste.com.cn/cet/home/index/31979cfd84baafa54c5f860ebb1b4718" add_date="1350273830">CET</A>            <DT><A href="http://ncre.jlste.com.cn/ncre/user/info" add_date="1350273831">计算机等级考试</A>        </DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">国外认证</H3>        <DL><p>            <DT><A href="http://www.vue.com/programs/" add_date="1363352093" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABr0lEQVQ4jYWTvWsUURTFf+97RpeEgAFLG0nlRyBWFvo/bGOhZUrBgIhF0P/CwsawCAZUghAsxMpOwWbBaEjURCu1EEMmM5nszLVw3ex8RE/13uXdw7nn3Ke63a5Qg1KqchdpPBnB1gsiQlEUo7PWGmsNIu1Ett4cQsB7j4jgrCVNU37+2sFaQxjWWwm01uzuJlyYm2Xh+jxJsod3HmMN7z9s8KC3zPaXr0QhUI6R6OrskGUZoXOCFy9fsXDrLku9Zc6cP8udxZtMTkwwKIqKRxUClCLPD4CSb99/8Hlrm8crqzzsPWL65ClmZk6TZftHEygOjQreE8URxughKeR53kioqqAiRrGf5czNnuPqtStsrvdZW1snjiPKsmxPYRwCLN6+waXLF3nz+i337i8xKAY45ypJ2HqT1hpQOGd5+uw5T1ZW+fhpixB8o7mpQMDoP1MZY+j33zE1NUmncxwRaV2kigcignMOsHjviI9FhBAoy/LIdW6Y6L0HUoz5u75lS9sh1PhnEhGiKCKOI/L8gCRJGrHVUfFAKUWapiRJgtZ6aOi/0YhRa40xZqTof/gNonetujei/B4AAAAASUVORK5CYII=">Pearson VUE: Test Taker Services</A>            <DT><A href="http://www.openlab.cn/ocp.html" add_date="1364286980">全国最大OCP,OCP培训,OCP认证机构_OPENLAB国际IT教育集团</A>        </DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">ACM大赛</H3>        <DL><p>            <DT><A href="http://acm.zju.edu.cn/onlinejudge/showProblemsets.do" add_date="1369287368" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACf0lEQVQ4jW2TS0hUYRTHf/d65446Yz7CoSYdtdEM3GgPVyokaG0iWlYEthiywmhR4SpsUSQtIgiRZilCG7E2QiYGEoKhhJavkMbRzMzXjKjN685pca1xtLM53znnf/5853z/T+E/1vhGpH8WfAEzLsqF2hJor1OUvdikhKdbxDsqZhAPmj410/SqAhngqQTv6QTRv0PNi3UZ6O0CXx+sTIARMgtWGxyrgzPNYMuGLKgpg4FKk0QB8Dzrl86Op7gr3ORXlJPtyidF19leX2N2aIixnndEXNVw8TnogAM8ZeAtVhQNYCo4zPXONqyOI0iKBZHEWMX158k7dZLXba/gIBAGYuBdMuva45FRCbqOE1V1tgyIRZOXtIqFpfxS9Oo6IlnAFqDtLHteRFtISUcVnd9hiBoQjZvFkAGTEQgA6eMTRM5dBjWZvH8TtLiWxmbYbBCBsAG+MEwaIDGwjg8SULIhIxPikti7RfBFFbS1wCZig40ozEXgWxhCOztQ5qYJf3hLzPMw8ZQ710c1ibT3X6bZtpeyGdujkNkp6H5JrKk1OW/d8RYosoKat+wjFN/TvOhH6WpHmlpBsyTycYHQFiz7YXmBWpuYA2k9fok5XP9AStNZpOoCFJTAxgr8nIP5Gfg+g7L6CxHDxPq/mmoqvXFfpq89AVVBDa6gXjmBkWrHmmEnPTcHu/MwtsIibEfdpDrzUHWdgrFhOu7cTmg68+YDCTa0oGkKdt8nciJrZDodpDkcqAeyMVJ0AEQE++dB+uqrElL+a+6rt2T+0l0yCgrJSoX0XePH4mAsL+Ia6aWvsWH/Z9pt5c2P5IfTjXYoDxHBWJynMLDAx5Z7+/B/AI0A7jZafDNFAAAAAElFTkSuQmCC">ZOJ </A>            <DT><A href="http://poj.org/" add_date="1369287682" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/UlEQVQ4jWNM7bz4n4ECwESJ5sFhAOP////hYfD6/TeGSavuMLz8yMCQ7S/BoK8uxsDAwMDw5MUnhpkbHzC8/IjQOKtMj2HZzvsQFyzbeZ+hcNJlBgYGBgZDVT4GDxM+BjV5QYbWuWfh4iEOEsR7QVOek+HWw/cMD9+yMnz98Z/h1LV3cNdgNSDKXZGhP0+X4efPPwznb38iKQxYYF44cPEzXPD6w+8MnlbSDPLCjxnefGVjMNMSYrh+9yWDhwkfg6eVNEPVrBuoBqCDHWc+MShLczFUJxszMDBAAnHZnpcMDAwMDLaGYgz9eboMT158Yjh98wsD42hKHAQGAAAmvFjVPX1r/QAAAABJRU5ErkJggg==">poj</A>            <DT><A href="http://acm.zju.edu.cn/onlinejudge/showProblemsets.do" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACf0lEQVQ4jW2TS0hUYRTHf/d65446Yz7CoSYdtdEM3GgPVyokaG0iWlYEthiywmhR4SpsUSQtIgiRZilCG7E2QiYGEoKhhJavkMbRzMzXjKjN685pca1xtLM53znnf/5853z/T+E/1vhGpH8WfAEzLsqF2hJor1OUvdikhKdbxDsqZhAPmj410/SqAhngqQTv6QTRv0PNi3UZ6O0CXx+sTIARMgtWGxyrgzPNYMuGLKgpg4FKk0QB8Dzrl86Op7gr3ORXlJPtyidF19leX2N2aIixnndEXNVw8TnogAM8ZeAtVhQNYCo4zPXONqyOI0iKBZHEWMX158k7dZLXba/gIBAGYuBdMuva45FRCbqOE1V1tgyIRZOXtIqFpfxS9Oo6IlnAFqDtLHteRFtISUcVnd9hiBoQjZvFkAGTEQgA6eMTRM5dBjWZvH8TtLiWxmbYbBCBsAG+MEwaIDGwjg8SULIhIxPikti7RfBFFbS1wCZig40ozEXgWxhCOztQ5qYJf3hLzPMw8ZQ710c1ibT3X6bZtpeyGdujkNkp6H5JrKk1OW/d8RYosoKat+wjFN/TvOhH6WpHmlpBsyTycYHQFiz7YXmBWpuYA2k9fok5XP9AStNZpOoCFJTAxgr8nIP5Gfg+g7L6CxHDxPq/mmoqvXFfpq89AVVBDa6gXjmBkWrHmmEnPTcHu/MwtsIibEfdpDrzUHWdgrFhOu7cTmg68+YDCTa0oGkKdt8nciJrZDodpDkcqAeyMVJ0AEQE++dB+uqrElL+a+6rt2T+0l0yCgrJSoX0XePH4mAsL+Ia6aWvsWH/Z9pt5c2P5IfTjXYoDxHBWJynMLDAx5Z7+/B/AI0A7jZafDNFAAAAAElFTkSuQmCC">ZOJ</A>        </DT></DT></DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">ASP.NET</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">ASP.NET源码</H3>        <DL><p>            <DT><A href="http://www.cxy.me/code/class6-1.htm" add_date="1364270798" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUElEQVQ4jY2SO2gUURSGv3vnrjOrrpsQiXGxWBTXBxpZrIzEyreNooKNiDaKoKBYiBZaWAgWgoUIFmmsDGhhioCIEYTFR8T3G6NG1LiCJFl3ZvbOzLHIBpYlBH+4cPi597//f85RNCGTyRSMMbdFpEMpFU3yIuKIyEtr7dlqtdo3yTvNAp7nbVBK7VdKGWttKgzDlLU2FSViHMfkUimzzXGcEWvtUwDdLGCMWa+11n4Q0Ll8Cffv3eXZk8f091xkYfscbJxkjTHHgfapHKQ9zzsahGF+aaHA9d5elq8sMHfsFXk7TEtQpjT8l/G/ftbaWgl41+igyxhzXERyfrXK1q5V5Bli+OoJDuw7yPM7fewoeBRzM/GjxAW6myPsEZEFQB7jUR1+A3ev8GHwPr0Phwj8Kq4jzFIRIgpgPoCpP94IvPE8LxCRQ1oJj7784fO3DN2L2xi9sJnYhnwfT/gRplASI/B2sge7gbXA+XQ6vVNrvS5lHEbGQ8bwWNSSouLXGPGFS4MV+l9+J5N2y67rngqC4JcBcsBvYIaIbNF6IlUU1bhWGuLmoINCEAE/SohsjWWdK26VSg9eTTp4BmwHOlzX3aW1nqmUQmtNGPjUooQEiJKEyNZsLpfriePkcLlcjgBUvQezgcvZbHYvgFKKJEn+VCqVURFxAVpbW18Ui8VjcRx/GhgYCJr3B2ATIA3nBjBnqouNaBzjmoa6DLwGTgLz/ldgdUP9EzgDfAYy0wkooK3+03vga53rBFzgHBNxpsVp4BP1zarjCPCRiRFPi3/cDfIc/+gSawAAAABJRU5ErkJggg==">.net源码 - 程序源码 - 程序员网</A>            <DT><A href="http://www.mycodes.net/7/" add_date="1364270961">.NET源码 - 下载列表 - 源码之家</A>            <DT><A href="http://down.chinaz.com/soft/31953.htm" add_date="1364270942" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAlElEQVQ4jaXT4Q0CIQyG4a+HC5loXMCJcA7XcAncABpHcQHP+ovGIneGXn9CnjcNCRRiEmyZEJO0U0qROZPMmaR3XyfEJFMbZGbs5WjOdpf74gIm0MP/RgMerAEv1kAPPygvImbWd/l5RACYDu9VfLo97QZerIGKRrHZYA0D6GITGJ3X9ewPVOwKfOPhQIsBgLZ+5w84jm5tcXpKXQAAAABJRU5ErkJggg==">有花淘宝客网站程序|有花淘宝客网站程序 v4.0下载_网站源码_站长下载</A>            <DT><A href="http://blog.csdn.net/feihu_guest/article/details/8508118" add_date="1363348814" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACkUlEQVQ4jTWTzWudZRDFfzPz3I/E9jbeRM2HAbFGFCIuRIRGFxVLUXAjSEUR96KL6qKgCwWl+AeI/4KLLgWlLvzaWBVxIYKKIKgl0SQmuQtv0vd95rh409XsZub8zjn21en7hJw0wBIpKdmneoIlyAmBgDRwEgBUqNZQEgcDU8UUyAdwMpjf2GB85gwn19fpLy/hgyBluIlmZ5/J9z/wy5tvUFxQ3bvNchZfeIbFF59ndPpuMhM3IwlcIhHmlTKaI4Z9zIxSHYyWMnOCtcvvMv/0eQzITMyMaoEmBxzt/gsKYmFEfzTHdHcHq0EpCqqLtffeYeHJ80iViuFyNj+8wu7Vq/z326+0+xOE0zsxoreyRMz0usNSZf7s48w/dQ5RkUG0lZ9eu8jOJ59SFCSVxDEzDvf+Zrq3TeRN6TgrF54lqUDgGWx//gU7H3/W6ZZID4KAmkQtRDpGYiQuF7MPrhPqYdZZNfnmO4o6eFhCiswWwmm9AWsRBVHwpBJliAyk2nkcTlqDWYAKWOImqolQjy43SajFQ3Dj+l9IAjMMMX7iHArHs5KWFBmtO6UCJOmJLEGFeGm8+LbPDhg/9iiyxNKZWVlm9p57Odq6Th4ckE0HFxe9uTHD5RXayT5VLfbl2v3ywZAHPnifUxuPIA9SSZgj4PDPP2g2t6hNpTdeoH/HbUy+vsbPr16iektRBnV6xI8vv8Jdl15n8bkLRJTjvIvB6irDO1fBDGWCV6abW2QITyihpIZgmvz+1mX+ufIR47Mb3PrwQ/SWbidumcMGjo5a8vAGzd42+9e+JWlwRSdBGTgt6YHV9higQH7chUqLddZa99zNphar1sGT8GpAYNUBSEsSIXPKcYtd3UwKoZb/AWRoSOxcHDTnAAAAAElFTkSuQmCC">收集一些.NET开发资源站点和部分优秀.NET开源项目 - feihu_guest的专栏 - 博客频道 - CSDN.NET</A>            <DT><A href="http://www.51aspx.com/" add_date="1372895304">Asp.net源码专业站|- 51aspx.com</A>        </DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">ASP.NET论坛</H3>        <DL><p>            <DT><A href="http://msdn.microsoft.com/zh-CN/" add_date="1364345009" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABbUlEQVQ4jaWRPa7aQBSFvxmMpQgkfldC7RUgSkRPywZSQUfNIoAVwB4sQYVoXGQDJn6PB3Gk2MY6qWw9HlWcI11pNLrnu3PPGOAH0KGaPgzwC2hWBPy2QFrRDJDa/zADUAO+A9/G4zHD4ZAwDFksFsxmM/r9PofDAc/zWK1WTCYT0jQlCILC/wfgDdBut5Mknc9n+b6vKIokSdvtVkEQyPd9ZVkmSfI8T4CA9xKwXq8lSfP5XIAGg4HiOJYkjUYjAZpOp5Kk5XJZApxyl1qNPM/ZbDYAnE4nwjAkSRL2+z0Ax+MRgF6vV2ZQhmitJcsykiQBwHVdjDFkWYa1trwDMMa8Aj6DPssY82QAkPQKcBynnFrIdV3q9foTrOgtfcXhdrtxuVzI87ycEkURcRyXzY/Hg+v1yv1+f3rRG6Bms6lOpyNrrQAZY9Rut9VqtYrE5TiOut2uGo3G6zdWrHcLuF+D/Ae5DvATyCoCPv4C7ijFl0YjQwIAAAAASUVORK5CYII=">MSDN — 探索桌面、Web、云和手机软件开发</A>            <DT><A href="http://msdn.microsoft.com/zh-cn/library/vstudio/system.numerics.biginteger.aspx" add_date="1364358590" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABbUlEQVQ4jaWRPa7aQBSFvxmMpQgkfldC7RUgSkRPywZSQUfNIoAVwB4sQYVoXGQDJn6PB3Gk2MY6qWw9HlWcI11pNLrnu3PPGOAH0KGaPgzwC2hWBPy2QFrRDJDa/zADUAO+A9/G4zHD4ZAwDFksFsxmM/r9PofDAc/zWK1WTCYT0jQlCILC/wfgDdBut5Mknc9n+b6vKIokSdvtVkEQyPd9ZVkmSfI8T4CA9xKwXq8lSfP5XIAGg4HiOJYkjUYjAZpOp5Kk5XJZApxyl1qNPM/ZbDYAnE4nwjAkSRL2+z0Ax+MRgF6vV2ZQhmitJcsykiQBwHVdjDFkWYa1trwDMMa8Aj6DPssY82QAkPQKcBynnFrIdV3q9foTrOgtfcXhdrtxuVzI87ycEkURcRyXzY/Hg+v1yv1+f3rRG6Bms6lOpyNrrQAZY9Rut9VqtYrE5TiOut2uGo3G6zdWrHcLuF+D/Ae5DvATyCoCPv4C7ijFl0YjQwIAAAAASUVORK5CYII=">BigInteger 结构 (System.Numerics)</A>            <DT><A href="http://www.ferrari.cn/chinese/Pages/home.aspx" add_date="1374535551" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAChUlEQVQ4jW2TTYtcRRSGn1O37r3pSQ9D94ROwihiHCGiw5hNwI0fiUEC6saIGMxPUBeuBVduRfAHKBiyEcSlH0RCViORhEQlMS0EYSBfwzSZ9Hg/qup1cXsmLiwoqAPn4bznPafs7mPLY4NBERPnlnpceHIen/jfExw8db/iwxsPMOdIsOmBkYz5qqnIj57k1LunIKkjbEbOQpwx+fUKW59+xkJZgMh9IrUmo8l6PLP+Iy+snYdmBhQJckHlIBrkMB4ngstJEgm1XriuSJWho3fgowkEkIdLayXX/yx4840tFhY6RfqhQN88gTIhM7xIgCFLXZMzybdvlXz95eN8/9OIye2bvP/BPchBjUcmkkEEXAJ27k6rWxsZi/tqjr88wQycExSA63ISEBGBiN+BBJgToYXPv1ji8lXPrb/30J+7w8pz29xfz8CJLBOBrnoUuKTuEQXOwcaGx+eit0eMxy1Hns948dg//Ha1YPxXTp5DlJESBMCnmYkJow3G/gOB1169x5nTMBwu8+134pOPF3nlpZyynELVIIRmql0gEklE0q4Hqys1S09XvPfOTfb2G746O+DCxYxnV6fUjRElonX2+zjbl/gfEy0TN66UhFSyfKjl9ZMT3n7rAUWZSDKiPTLdB4QBYVcYmGBxGOjPG2dOV5w4PmW4P0HqoM5AIROuG4dod3GQYN/BSL0NR1YnDEct1I/GGGZMRPhaXQuNIC/Fz+d7jH8vyJyoa6MoxdovOVVtHF5pGTnRqsuPgAuyPACtwArh5xIN8LA15gaJsi82po69g0QjUA4N3S4EWe4bS3cNWhVi/WKPQU8cjkKCcrv7jiOJctMRp44/ruX0XaIyIdj8Fy+yRkGRe/SjAAAAAElFTkSuQmCC">法拉利GT跑车/运动跑车 - 法拉利中国官方网站</A>        </DT></DT></DT></p></DL><p>    </p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">设计类</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">AS3.0</H3>        <DL><p>            <DT><A href="http://www.9ria.com/" add_date="1396148964">天地会</A>        </DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">CSS 论坛</H3>        <DL><p>            <DT><A href="http://www.mezzoblue.com/zengarden/alldesigns/" add_date="1352259778">CSS禅意花园</A>            <DT><A href="http://subtlepatterns.com/" add_date="1352196301">Subtle Patterns 背景纹理</A>            <DT><A href="http://www.jb51.net/" add_date="1358251485" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACvklEQVQ4jVWSPW9cRRiFn/edmXvX9nq9ApwQubGQQ4EUxYiGIkK0IGgQNYgiSHyICvgPFHSU/AR6vkUTCSmSiWKLD+PgxDEkdhwvXm92787emXkp4obiSKd7dB4dKSWZmaAKoEA5iwd73BRAIAOOBOZJknGmeAFQZXi4y2T4EJUKqwQbJqYn/xJEMV9IKRE6PRaWluiurBLmF84wplAKt69/ze6NH/BVjc33yNunnGz+ipurMDMwh+JIrtBfXuHi669x6Y238EZGnBJzIjaPUEsgFW0zoYzHxNziisMEXF3hqsDp/T2uff4Z48MjxMwMy+xsXePozh9UPhCqReJxw/jePlrVGAqWGWze4OT2Ns7VpDTDNCCzYhYAJAGegqEYhiLwP6lNGvPNB+8y2vkdghKTw3sME2E6GpCaBlVP1oK2nhynQMGch5S5/8vPxAf7mFdKa8ydexIPBSnK9k9fsbPxHVUnoN0lyk7D4OZvUDucQZJCiQkfalQDbeW4/PZVPCioYV6pg8N8jXdzRJuQphOECjubUvsOOTjaNrP49DmeWX8BTzFwigKtQRCj5Am9S+uUhSfwKojOE9OIyc4t9HQAwRPv7vH9J+/hRZVshVxaRIQya/F1j5fe+RQXAECKgQij8YAfP/6Q4z+3qDt9Hv51F9/GEc3pAwb/3MJ5UHFk54jNEVVbk3PGBcgxEXfvQJyC8yiGrzLy7RfvW5wOkWmLhA4wocydp9v0Od7aRCsFC6RZy6Ojv5EEUnk0JcZxhh8e7OG6FaYdfJoximOee/FlmuvbHN7coNPr44qQRQkVpFbIs4YY5rh89SM89RKmC4gD88LqxSusX3mTjf0vkQsr0O2TJWNFsRCYXz7PU2trrL3yKqvPPo8cHNyzoIYV8PNdlhZ7GBBHJ5wMx6iC6eN3OvX0ly8gUhBTimT+AzI+XrhIk3smAAAAAElFTkSuQmCC">脚本之家</A>            <DT><A href="http://draeton.github.io/stitches/" add_date="1376228992" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADFklEQVQ4jSXDzYsbZQDA4d877zuZSTKZTDZfG5NNavejUloUCsX1UEQ8KR78j3r27/AqPXjRgyAoKIUWRJRtt92SZjfZzcck2UkyH8m848EHHvHtV53sZqLoHPcIgg23qwRLJAwGKzaJwSbUtBoee24LHSYoM0Pr/wspMczuN2hrn3lYZ7XImC1zjKMelt2g126xX3OplSvsNzOkPYEMpBBIQ0AG4vRRN5NOmzScES2GLNURTUdx0K5Q8wrcrhPOLnwMY8YHDclk2EBJgc4ykBlKb3yU7WCnO4xdma1jUXZNDpoeOcvCkDs++9jh+WubsT8DNDpTKBP26i5qi03qDxDbjDT/Ib1ui8OK4PGjx3QLEcH0PSM/4GbToD+ysc0NUbDDFJLZLED5qx3dfYt0p/GjiK9PUk6PK/Q+f0Kp2ePyp+9IwiXH1YxaqcUuWvD8bICMTeIowRAyz42vOB8krII1eVNQMCVi/pbEquLd+4JqtYmZJTSLKUbtmL55xLTcYVHuonYaVHEPW3rMRkNGfogQAiUFZuKzdDpcqjvY7prR1Yh/tyVi6TLdxmiRYVxd3kCxits+Ik5SXrwLeBs3GCcm45fP+P3H7xld+5y0SniO5HyqcXMGIg6RSYjMMp7qzYLidsJmsyZfLGAWKly/O6fpFbi7l+Pw+AEnB00GF6/4Y6QItYLVFEwLZagctQr0OpowLbCcB3x5YqFTuB1fU6q5TC7+4k2woO9rHuTHzK079LdVrGoZ5VVstMwznAnWoeDKn/Dryz5116JQdElkicU6wl+ZLMOMA1fwsF3mdf0QrUOkVSw9nU1WDIcBUZSQyxf47cUrmnUPr35A5eSUSvcTrt6cEaQGdc9hFLsYuTJlp4SKEshsh3JujRPH5OoNbtchv/y9QKoBtf0hC/2e6fwG1zQwi22iRQV2CTspUCkmhhLYOkdxtyOOt9x7+IS8U+fP/j/EP//A/bsdJvMAw/a41R5JkpCzbQBEtfdRttqsMbRGJXM6R5/S7t3HMARbLUlWEwqWpFSpouwqWmdIZZCzLKQh+A9JX2Qxcj88egAAAABJRU5ErkJggg==">Stitches - An HTML5 sprite sheet generator</A>        </DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">设计学习论坛</H3>        <DL><p>            <DT><A href="http://www.xswlpx.com/forum.php" add_date="1362970105" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAByUlEQVQ4jZ3Qz4vMcRzH8cdndnbt1NrxYxO1foSEQjlsciFZJylqS8hRCAdJucjByclBLuz/sC60DUoUTbsHh23VJmrt7kEz2bXm19r5OMy3xjgs61mfPp8+796v9+v1DvWhQzHsPMGqPsIY8RvVKYovKY1R0WA2ubuOsf0UE8NiuSgVMkV69iPfaJ5/Q+Exi2O0Y2XSmEUGpTdMvmLrAKVpqVheQyixMEn1E/Nv+VluNKWS5k5N6iVmX9PWQWePdOOzxkKBuafUClpIaTiBWuJiMd0sh0yRSntTfSk6ELKsP071G8pSNl7m4yM6jrLqJOlMIpacFjfdbDhL9qA4PigceCjEGKP8TWbfN7bbtYL5HHPDrXG+o303vdeYGGbHJbb0J2vqu0fvSUbukL9P22FWn2m6WfjNRTUtlots6W/ZM7suMjDDtqt8foY9rD3fqFWS6euuUPvRkqoR4U/e3eDrC3ZcoHszPyuEFUy/EqdywpEnZDctIQBTz8WRu8LiDCEjVkrCtnP03f4HB0sx81bM3xIya9h3nbgcCqOxnjsdY2E0xi+5WB86FFN/H/kb1WrzHav/GeHDoDj+gFRW2HtViPX68gT+4BfKq9+DxkJH/QAAAABJRU5ErkJggg==">【新提醒】七六二一网-【邢帅网络学院】 - YY 7621</A>        </DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">微软产品</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">微软视频</H3>        <DL><p>            <DT><A href="http://technet.microsoft.com/library/aa991542" add_date="1366710526" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABOklEQVQ4jeWQvUoDURCFv7m7q+sfdhHFbIhYCFYWFuprqGAvWItoEeytBUtrX0IL8Rnso1k0zYVggq5R74yFJBht0oqnGTjD+c4w8OclC1l2SZBFACKmCTxBEHPRVT2/361klVsJvN093G8ARS9YzbJTAPfa+thpd5/X34Nuo3Qlss1293UtiB0CoxFmiC5Xy+Xaj/IxYNw9dh69976pb9rEQrddFA/e+2aj0WgBDjARagZ7lbm5lf7pZmqgcc8IIyFGYkmSJPleo8hEJFyrWUqcnAOrgPb2bphHBdXJep6fOGyqOl85+L4bCqBm8dewXUOPS6XSDEgxNKCnep7fOJGLiTQ9M8E5QwcAKiI/QwIDXrt4ORJYEmTLVJ77gFEzQZxL03QgICE4oqjvee87H7AvIrM4fhX+R30C9dh/Huo68KgAAAAASUVORK5CYII=">TechNet Library 主页</A>            <DT><A href="http://technet.microsoft.com/zh-cn/hh763481.aspx" add_date="1364347462" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC/0lEQVQ4jb2TTWgUdwDF33/mPzszO5ud/UiyH0lwDDWu2jVpVymigoooRQ/a0pMiegl68CB4KKW3HttDEAqKJxFLaaEUm7RSKomGIGj9aqJJdHcTk2x2N8nuZje7MzvfvRgRlB77O73Le7zDewRvMZkM9a9W1C8ZERupxIBQVw8GxKEXfZ3nDn/3zxLeA1kXwwBt2SyNs14n0RLzQAgwYHkXzTqLgfDW87HPvG4hp98YODOyCgD7TiuCJyJ8/CYgs0tKNkAeBbooFSIsuCgB0R3MqfG/f030jQgfPLlYKNizpTI3kVsxkKnqPQHOL9M3XTj2gCQT6lUY0CDACC7qRQG1rT33ot0tSdVtRWuoophsQykaBCLLgUw7N9cDCE+d41LIhmOxlrXCsCYRiU0JrHjvDOFfnWjWJfgFBo5soVLTobk8ijPqXxQA5ndBGKetUxP8J/dJfGd+k9PkepZH9/q5lW2+7u7gbPZRKNXZiXxtARzhIft0lCue5lq2cpcCwOfbL/dM+JUOqbXj+IfhgNQW5I3knvMPTinGF4W5q/t128Xk8jIcx0BVt7FquXCq/GMxJ05RAJhrT/arov9oRBYR8wFdPkhj6dKh3Vx2/kh6YEeqfff3TwMfFfN1tY2UF3lmoeSwGe2nW0jrNNV/hcua5l4QDTXTg0rThtQwYeiW0efNFCC19UbtghKdv1G0wNY0L6PxSqPr6/S2HwGABhOJRDWjb4GPRUm3MataUDUDvR3yc395eAs8PLAhJcNalGnjGVrsAvKzkeJkXkgDAGMa5FPHsClMAGsaJjVgWiWIGa/usKXHKUgEMF4C9ReAUQMKFp7k20cHB3/OAQDNLS5EPM9v/xCwy6NKR1Srx/t2ZMM7j/lC95YRrkYgEqC6BGgasGYAKoOxaTq2Ph+a/v36V0j/oS8BeD32a4fOfvtNPHj3sBteE0i1ATQBNBygrqNhtGl/PiyPv/OF93Hpwr6DG+TSyZhQ2mxqrjO1xKeHJshvv4zO3ARg/Jf3/+Nf71NGm0CEIlMAAAAASUVORK5CYII=">TechNet 中文网络广播 - 点播 （2013年）</A>            <DT><A href="http://www.ilync.cn/index.php" add_date="1372644603">联科教育|windows培训|exchange培训|sharepoint培训|Lync培训</A>            <DT><A href="http://msdnwebcast.net/" add_date="1372644603">WebCast</A>            <DT><A href="http://msdn.microsoft.com/zh-cn/dd796167.aspx" add_date="1372644603">MSDN 网络广播首页</A>        </DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">微软产品</H3>        <DL><p>            <DT><A href="http://msdn.itellyou.cn/" add_date="1364392971">MSDN - 微软所有产品</A>        </DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">微软论坛</H3>        <DL><p>            <DT><A href="http://msdn.microsoft.com/zh-cn/library/w0x726c2(v=vs.100).aspx" add_date="1373174793" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABbUlEQVQ4jaWRPa7aQBSFvxmMpQgkfldC7RUgSkRPywZSQUfNIoAVwB4sQYVoXGQDJn6PB3Gk2MY6qWw9HlWcI11pNLrnu3PPGOAH0KGaPgzwC2hWBPy2QFrRDJDa/zADUAO+A9/G4zHD4ZAwDFksFsxmM/r9PofDAc/zWK1WTCYT0jQlCILC/wfgDdBut5Mknc9n+b6vKIokSdvtVkEQyPd9ZVkmSfI8T4CA9xKwXq8lSfP5XIAGg4HiOJYkjUYjAZpOp5Kk5XJZApxyl1qNPM/ZbDYAnE4nwjAkSRL2+z0Ax+MRgF6vV2ZQhmitJcsykiQBwHVdjDFkWYa1trwDMMa8Aj6DPssY82QAkPQKcBynnFrIdV3q9foTrOgtfcXhdrtxuVzI87ycEkURcRyXzY/Hg+v1yv1+f3rRG6Bms6lOpyNrrQAZY9Rut9VqtYrE5TiOut2uGo3G6zdWrHcLuF+D/Ae5DvATyCoCPv4C7ijFl0YjQwIAAAAASUVORK5CYII=">.NET Framework 4</A>        </DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">Android</H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Android 官网</H3>        <DL><p>        </p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Android 论坛</H3>        <DL><p>            <DT><A href="http://www.1000phone.net/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZklEQVQ4jaWTX0hTURzHf+ece3fn3WqbOrdp09SIZCXk7B/9gbCXnnO+5JsvkiTUQyQkXRll4IMSQUoIUUFwZ/VQEIQR1EtJgZBNKxvOsd2UTdvm5u7un9PLlBmJgt+n8zuc3+f8zvl9fwA7FaUUAQASAHDR9oa4sEY7vux/QlK3Zwxpios4q8bsve8GE/fPD5ES0pCdjvhddyY/ZV53jOsr2bCm5HttF5+HC5XQdUDkQnU7sWkPiIU3otKy60ylK4zyy0+ZsnIN2xxHtUzyCk0tteuZ/K+l8ZC3PhBKFQOw+9n8Eyix3qKyQkHO9so57iNijG9oLoPp6p9BYm24BogsUyVXbztb11NIXv8PLPqAMAdgiK22zbMO3lRiSt0Aq6sHm3ZRhPEZ0OPNVIHbQAG0RKJrwe+tL4bgunNeXNH1bYXz7Ovk9lcm+EZ3h8m7hzM2nXhkaGgGxlk1gA96H5JyyxwiYIYc7St0BkFRKQgAaPZtZxV2VDTpRsskYgwMa+C/AlVMiKqX1GQorknzYm5yVs1M50+6R4MTog8IUwBQQQDMtwxHASC69j4l9ngE6fmrVF7qU3hnI2Glz4aa3c3YnO6HUWixewD9aw4kij4cDHqoIAg0FRsp41U6pctSBcL6wOqP2Zd4RfqghKO6pnCt5T1TLzZ1lyj6SFtbQMtHhi+zhvRddWFO1Tn7IfnLe7/2O9KqxpPfF38uNpLNAIFAkAIA8g++mjjtrWVrHNwRPRW3aGmpG1TjYZpMHzPba0u37e/MzM1KiCfAdOpeDABA6j++l7UiZbv5eOsjW0gQNk7kWvwXPdj5NW4Wc/cAAAAASUVORK5CYII=">千锋网 - iPhone开发,iOS开发,Android开发,WP开发,手机软件开发论坛 - Powered by Discuz!</A>            <DT><A href="http://www.eoeandroid.com/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACQklEQVQ4jW3TO4hcVRgH8N+5987dMXF3kvhYRHyNRkhcH0FBxUawEGLlA0tbCxUJ2KiFSAgELKKFIBaSQrSwUBAb0whimkh8sFGzhmRDJMSwbja7rsvszNxj8d1lLDxwmnM+/s9z0gencn73Z4aZMlEkmkzOpMRL9/DIjSxvcvwSX53nrwHbKl69l3T3pzmPG3pTrA8DqFMEADx7B7PbqAt291gecHSBX5YDpEh46jYOP8wLu+l1KARImTi3xqV/OHGZt75nYYWDD7HvelaHVDM1b+wLlsdv4tQVPl9kx1SoeOJm5q5jtsv6iJe/48I6r93P+/NURWKqZNRQFjzX5/ZpttcTG8f+4ORlnunz9X6eP8ZnZ5mpqXJmlKkKmoan+7G31riJ+28ucugkGyPu6vHJGa7tUKU2+ZyROHeVpUGoKRN7doTCJ29hbZM3T0SgvTraqphUNhxzZJ4vFtlZM2x4cS+vzIWaPbu4c4aFq6E4pRagab1mwdotgjUlpqu4SxiNA7RIE4sVMait7u0Hef2BOCsTu7qT4eN/cnaVugzSlKhyy5xzsNRl0CU0WBmwMebbi3x0upX+H9uVPEHbGPHhr/ywxHTNOFOK1/fjUrTRLSOrLdXRQptDmTizGhX1OhNlVZtJ0c5K5KZVMBizuMYN10QGB+Z4bDbQyxQg44btHS78zce/x2faCrLaGPHePEceDZB+L/b/rS/Pc2UzbGVUiXT0t5zf+Yn+NPtvZWc3GCOpkFkkTq9MvnJVRNUH7uNfhUDTJ6uU5U4AAAAASUVORK5CYII=">eoeAndroid社区-Android开发者的必备网站-全球最大中文Android开发社区-eoe移动开发社区</A>            <DT><A href="http://www.eoeandroid.com/" add_date="1440502939" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACQklEQVQ4jW3TO4hcVRgH8N+5987dMXF3kvhYRHyNRkhcH0FBxUawEGLlA0tbCxUJ2KiFSAgELKKFIBaSQrSwUBAb0whimkh8sFGzhmRDJMSwbja7rsvszNxj8d1lLDxwmnM+/s9z0gencn73Z4aZMlEkmkzOpMRL9/DIjSxvcvwSX53nrwHbKl69l3T3pzmPG3pTrA8DqFMEADx7B7PbqAt291gecHSBX5YDpEh46jYOP8wLu+l1KARImTi3xqV/OHGZt75nYYWDD7HvelaHVDM1b+wLlsdv4tQVPl9kx1SoeOJm5q5jtsv6iJe/48I6r93P+/NURWKqZNRQFjzX5/ZpttcTG8f+4ORlnunz9X6eP8ZnZ5mpqXJmlKkKmoan+7G31riJ+28ucugkGyPu6vHJGa7tUKU2+ZyROHeVpUGoKRN7doTCJ29hbZM3T0SgvTraqphUNhxzZJ4vFtlZM2x4cS+vzIWaPbu4c4aFq6E4pRagab1mwdotgjUlpqu4SxiNA7RIE4sVMait7u0Hef2BOCsTu7qT4eN/cnaVugzSlKhyy5xzsNRl0CU0WBmwMebbi3x0upX+H9uVPEHbGPHhr/ywxHTNOFOK1/fjUrTRLSOrLdXRQptDmTizGhX1OhNlVZtJ0c5K5KZVMBizuMYN10QGB+Z4bDbQyxQg44btHS78zce/x2faCrLaGPHePEceDZB+L/b/rS/Pc2UzbGVUiXT0t5zf+Yn+NPtvZWc3GCOpkFkkTq9MvnJVRNUH7uNfhUDTJ6uU5U4AAAAASUVORK5CYII=">安卓网</A>        </DT></DT></DT></p></DL><p>    </p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">C/C++</H3>    <DL><p>        <DT><A href="http://blog.csdn.net/sunmenggmail/article/category/1085765" add_date="1402433088" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jcWTTy8DYRDGf9PubruEEFai2sSfkDRt4s9hL+Li6lu4IeFrOOMbkLhIHNzFzcWlEkoPKpGgSLuCpNXV12FrdW2ExMEcJpl35nneZ955R44QxR8s8hcwgBY+Ur4XQE8kMJIpxDRRbp23cplasYiq1r4jAHNykr6FBTrn5tD7+0P5t0eHXHfPVwJFxDRJrq3ROz8PIt+IVtSvb8ItiKYxsrdHx+ysn3R2dylvb1M9zdN4fkLiJvpAgmhHZ5jAWlwKgK9Wlrlb30AIKqkVCoFYPsaYPs5hZrNe0cUFJ6OjKKVCBF/NH2M8nQ7c4oF/Np+g4ThNTR6ZaBq/+WE+QWVnp4kXYoODDG1tYiSTKBQ0PSgi8ZgfQcsbRLu6GDvYp218witVCpTitXhJ/eEe0TR0y6JeKnFm257UVgWuU+F8eobb1VXcSrlJLxjDQ7TbNm1TU+ipFG6pFGhNPpepRZZh0G7bxDMZNMtColEa1Rru/R0vh4dU83lfgfz7Nr4Doo6Dci0l0QIAAAAASUVORK5CYII=">算法 - chivalry - 博客频道 - CSDN.NET</A>        <DT><A href="ftp://gatekeeper.dec.com/" add_date="1376228781">DES算法</A>    </DT></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">Oracle </H3>    <DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Oracle 官网</H3>        <DL><p>            <DT><A href="http://www.oracle.com/us/sun/index.htm" add_date="1372556388" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABDUlEQVQ4jdWTLU8DQRCGn73SkhDYEGxXnjnOgWhOIgi+SX8NAgx/AcwJBKpANQUECvgBfAhkr3KBrCC90nYQ5S4loR9JDUyyyWZ25p2ZZzPKGl+Yw7x5kv+GwEJ2KYQBS3u7FKPKxIRu84qP/QMGSRsAZY0vhTBA109QWjNI2vRbye/VwgClNeIc79EW4hxY40v39l5ERDr1c7HGH3te1zckvbj8Eaus8WWt9YI4x1u4OXVmz5RZvbvJ43OIvcfnmaDls2s9FMweilEFz5SnCmSQ+98FPYBOfAzASnw08RdKO9ssx4cApGeNoTOD03t4klltFLYa3YXFWpVSrTq2A3GOz+Y16Wkj96n/v0xfzFCsTNyIxV4AAAAASUVORK5CYII=">Oracle and Sun</A>        </DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Oracle OEM连接</H3>        <DL><p>            <DT><A href="https://oracle.flftuu.com:1158/em/console/database/instance/sitemap?event=doLoad&target=orcl.flftuu.com&type=oracle_database" add_date="1387979126">orcl.flftuu.com</A>        </DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">Oracle 论坛</H3>        <DL><p>            <DT><A href="http://www.itpub.net/forum.php" add_date="1350273831" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB90lEQVQ4jX2TwUojQRCGv+qZzMSMmYwTXBAEn0j0snjw4GWzj+FLLKyXleAmCMKCF8HX8Am8CrsIiclMprtnpveQrImJ7n8qqrr+/6+mSuD8EbwEhPfhgGoR+ys5gGrkA59EGlEcZ8gHHONxE4A4LhCBohCKogVUgQ++ieMsur//Rrc7w5gVbefx+JhwcvIFz3Pc3X2n3S7o92MuLnoYExj/rdbSgu87gqDg4cFgDESRI00zOh1DFHmvY/hQMpk0OT7+SlEEOCcoBUmScXV1iTEO58BaD2M8jIGq8pZCc6swnQqzGTgnwBZlCc4ptN5CxJGmM5RyrMMHn2ZT0+v9pN2eMplE9PtnKKV4eQkZDE7odjU3N5ekqSbLNgggDB2npyP29jRPT5bra2E8Vtzednh+brG7W5Cm2bsO1L8gCBRhCGEobG9PsbbJcPiZqgpRqsJaD7fZvySoazAGgsBwdPSLOB5TlhGgsNbb7FwneE0oR5Lk1LUsysLOTo7IO/KrBEqBCLRacHhYsr+fk6Y5Bwd/6Pev6XY1dT1/t/GJANbWaA3WQrtdMBj8oK7VwpEhz+fN1oJS1VsCrYXhMCGKcqpqLtFoVIiwWKKtlRFrRqMWSs23VuB8Cs0oCHKWV/Z/KCVo3cK5IvOB32ATYxp8fNLrcIAFGP0F3LHTM9cSw94AAAAASUVORK5CYII=">论坛-ITPUB论坛-it168旗下专业技术社区</A>            <DT><A href="http://bbs.mysql.cn/" add_date="1373238539" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXElEQVQ4jaWSTU7DMBBGn+3YCQoJgQpQQSxYcAKuwQ05FogFEksEFBDlJzRt4phFqFM3lVgwK8+M58039gjnnOMfFgFcXj/6wEkWc36YcTedcfVS+vjF6R7j1ADwXDUhYNXeqobJrOHpu97Y8bO2TGY9QK4mM6P4qi1pJClrS6zkAPCxaP1ZCREClhJb11LWlp14IJCy6QGZliFglHQFN6/fAKRa+Zx1jsq21G3/5kWs1gEaoyQP5QKAfEXB3Dqm8767loI0WlMAcPQ7BkBuekDZtHzU1vu7caduAFiOMU4No6QfYda4UL7pchHA+cE2ANtacVZseUBhFCd50klWwhenkUTLzhd/beJ9WTNd2CB2nGqvYPjRa5ab8IoSgkz3sT8BlQ0FZlqiRD/OcFOA2/c5Rgqsg8q2Qa6IVeBvBBgpgo3zxUaRRqHojYBESSrrsL/vq6VgN1bsJ8PrP7HAcdxCnedJAAAAAElFTkSuQmCC">MySQL论坛 中文MySQL - Japanese are not allowed to enter</A>            <DT><A href="http://mysql.ntu.edu.tw/Downloads/MySQLGUITools/" add_date="1373327598" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABOUlEQVQ4jaWTvUvDABDFX8UhGYR0DLhktFMN9E9wEad2y+jq6OhYnJw7FJpBcJJ2kdgtClUcKqki2AxKCg6JICQikpZmeC4SjDGJ2jced4/ffZVIEgtoaZFiAFgGgNObAOePNgABzS0VovhHg8qqgOd3CfVqBa3LEWxvBlUWsLOhFjvwU50zh3wjzbFPkrSckFrbIOfMVWzg+iG7QzdREM5JTTd+Z0CSeyf3qQTHDbl7bGYaJLZQryq4evASLSqyCAgSvGCaPwOS7AzSBCTp+2SzbxUTBBAxjYDedZKiXAYmL69AVEBgjHx2hy7X949+nIXWNmg5YSKO74nbhyatpzCzHePO4cHAibdVIjN+IQIwA7CSjPVuJ+jbATbXZDRqMlIERdJ0Iz62fIIc6RdjSIKIRk3Bvwy+6gMRduTYcdqk1AAAAABJRU5ErkJggg==">Index of /Downloads/MySQLGUITools/</A>            <DT><A href="http://www.linuxidc.com/Linux/2013-01/78156.htm" add_date="1401975964" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACf0lEQVQ4jX2SS2jUVxTGf/f+5z/5O3lM7CTiAw3a2DYVKzEJIioiKhWEWSgTulBsFy1C14WSuhikCHWjEsVFKXRXCS58TRUtVowFHygiKrgJZmIWQZOYYpKZzv/er4v4SOLjW1zu4Zzzfd899wS8HxGwDKgA5Q/UzYABqKqqas5kMteBf4EHQNv0/HQEs2ILSNKhxoaPtifCOdYYO78mFcWlcvnPV/npDYlZBB7AWrsku2OPS2rUTZRdUHwyGhbO9QDSO0zMRD6PTYSp213fLdDozVRp4FK9z26c/wtg8lMO3rI8497dXddRm65b0bqm04emxT5/PtcEUWMJEPkPi5tcLpcE/u5ob1c5loaGRuK+vkG//+eDj4HFkgzveYMBqK6u/hFQV1dX5dnTIe9c7CXp1s0bSiaTp17WvUVgAFKp1EJr7XBTU5MrFvudc87HcUXy3klyu3fvcqmQVilvZ5MEAFEUfWMM2rx5SyxJ8lPn2NiYl7wrFM57CI5LWKZ9vwWQMGFVGEgJOTcJbhiBkEypNGnA2HQ6YtsGbTUGD7jX6spjzCZ08bdMW6g42+j7/JebalHdBuPj/4iiiLOFXgbvfs/BfenadZ+XU9hK/71HjAAgMGePNq+duLv6iR4s1+SVRNz7R+fU9CS9mJS+2rHKDV3OON1fX9HASv3ze/2vAOohsAbkvK8eeVEZJ0wTfdIS3L52Msh1fk2hUKD3coFjP1g7b+kiS3I8QcIRJCoRALmZ06y9cLjmwKrP9O3pc+MP9x7lBBDUWOb9dYSdiz9ON/QXK1efjk1cv1/kzE/HuPO6M59/s5HZZbS3LaRBUiBNCbTUR03ZT/niXQv0Py4oHHSxnsOnAAAAAElFTkSuQmCC">非图形化静默安装Oracle 11g_数据库技术_Linux公社-Linux系统门户网站</A>        </DT></DT></DT></DT></p></DL><p>    </p></DT></p></DT></p></DT></p></DL><p>    <DT><H3 add_date="1596439270" last_modified="1596439270">开源社区</H3>    <DL><p>        <DT><H3 add_date="1459348403" last_modified="1505891162">开源项目</H3>        <DL><p>            <DT><A href="https://code.google.com/intl/zh-CN/" add_date="1376228054" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADCklEQVQ4jSXSy2ucVRjA4d97zvdNJpPJbTJJE9rYaCINShZtRCFIA1bbLryBUlyoLQjqVl12W7UbN4qb1gtuYhFRRBCDBITaesFbbI3RFBLSptEY05l0ZjLfnMvrov/Bs3gAcF71x6VVHTk+o8nDH+hrH89rUK9Z9Yaen57S3wVtGaMBNGC0IegWKIDxTtVaOHVugZVmH3HX3Zz+4l+W1xvkOjuZfPsspY4CNkZELEgEIJKwYlBjEwjec/mfCMVuorVs76R8+P0KYMmP30U2dT8eIZqAR2ipRcWjEYxGSCRhV08e04oYMoxYLi97EI9YCJ0FHBYbIVGDlUBLwRlLIuYW6chEmQt/rJO09RJjhjEJEYvJYGNhkbUhw43OXtIWDFRq9G87nAaSK6sVRm8r8fzRMWbOX2Xx7ypd7ZET03sQhDOz73DqSJOrd+7HSo4QIu0Nx/4rOzx+cRXZ9+z7+uqJ+3hiepxK3fHZT2tMjXYzOtzL6dmznPzhLexgN0QlxAAYxAlqUqRmkf5j59RlNQ6MFHhgcpCTTx8EUb5e+plD7x4jjg1ANCAgrRQAdR7xKXjBlGyLYi7PxaUmb8z8xcpGHVXLHaXdjI0egKyJiQYTEhSPREVIEUBNC+Mqm+xpz3j0njLPHB2nsh1QgeG+IS48dYbD5YNoo0ZUAbVEuTUoKuBSZOarX/WhyQn6eg2+usDWf0s0tq8zNPYk+WI/Lnge++hlvlyfQ3NdECzGRWKwEEA0qNY251n69kV6+Y0kbaCZoebG2X3oU7pKoyxuXOPe945zs9DCeosGIXoBDyaLdf6ce4Hbk+/Y299ksKtAuaeNsiyw8c1LKIZ95b0MdgxA5giixACpTxEPSau6QdFfI5/2cLPmEW+JAQrtJUJzDXF1dkwHzVodJMX4HFEcQQMaFdPeM0Jb/4PUtzzaLKAhRyJFwo6lbegRNFfk819muV5dR4JBQoQdQ2xFiDmSNDHiaptamR9Gq5cQ18AledrGDpOfeI5Lq8u88smbhMRisoSAgAYghdfn5H/JkHuRZ1owLAAAAABJRU5ErkJggg==">Google 代码</A>            <DT><A href="http://sourceforge.net/" add_date="1376228331" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB6UlEQVQ4jY2TMWhTURSGv/dy2+SVTgpSK4pD0YpVMaBisELFgOBghRbERXApgtI9VMlU0KGTS0Wpi0IhgtnEikKiFguibZFiB9EOxahgLElfbd451+GFBFGSXLjbfz7+/7/3OAD9qUnrf/6AayK0cjQQvN37yY+POE5/atICnDi0D9d1WgOo5eX8EgCmsDhL99Ek81++srEZYJsMO0Cs3RDxOlmdm8GAi1Vl3f/dcLjwPo//8zsm1sHO42eqWhdjraIiTTJXuHf9GonDfRR+lRmeyABgrWJUFZWgJv628JqN4o8wX9Rj+5FTrC3kOJC6yK6T5zBRj+5jyWoXirEqNYAGFe6nR0nED4a2iyUuTEwz92gKL9rGSi5LoVji/M0HoQMVjFVFgxDQGYsS7+tl7+khyr6Pt6WLrb1xzqbvkh27RDI99Vc0W3dQAWCtXOHdp1U+PgszPsnNcuPxG2zEhA6rujpAMFak5sCqMHz5CirCjq5tPH94B828QiIOiyuFmq4GEMGorZcYbTMsv8jSEW0H4OnbJVQCSusBV29P//s6VqsdVAG+BCRGbzV80v900PwfNASoBGE2p7U9qE9bVALcnoFBNktFrARYldauBGyWivQMDOJAuM7LMxncSIvrLMKe5BD58RHnD6NoHz2JqK7JAAAAAElFTkSuQmCC">SourceForge上 - 下载，免费的开源软件开发和发布</A>            <DT><A href="http://www.debian.org/" add_date="1376228612" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABJ0lEQVQ4jcWTsVKDQBCGPxkbTQs0FmGcoUnjyAt4D3FDG94EfBKSFukpOXpGOxoLaGyCrdqJ1WUuFzLGyq1ubv/9d//79y6woiReexTBDoSHEAAjSvmgRuJBUmxNvGMXL3jJJkQG4OMqH1cBfBImLrtNSby2m+6LK8JeIaYG0rl8h6wVYjJJ9hOs+E4A3vGTB3i0CSTFtsPZmNgDdoWYWqLcvG+J8g5Zm/cdsq4I+wMpDaQKMdnFc1I1VhM4AAui4Iu3wQT1PAd24Rz2Uh+uuAng9aijtlW/yzW3wRKGlWnnnIQOWdtuVIS9rd8BGIkH3U0nRkrlIYW2ViGmJXfDB/eZvUwAPEFtT6GnayA9uUCm1lNLdHa0RPmRx/9CMrttfw39uX57wB98n5EuURHvVgAAAABJRU5ErkJggg==">Debian -- 通用操作系统</A>            <DT><A href="https://appengine.google.com/" add_date="1382011389" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACGUlEQVQ4jcWSO0xTARiFv3v7SHv7ulLTgkp7ASEYAxaCBiWRwkAwJiQkjiYqk6/BxkE3WIwT6ahxUBKjjk4aXaBG46DREFAcHGxpoS0tDX3QUi69180BUJn0jF/yn5zz58D/lrAd9Nx+OZMplpTY16UuIqG1vxmI24HfIwd7OlsVsyLf2EsC43awWt3CLol4vJ7xxHA4Mhg4qLR5bYrLYfGn8xtvpm6enfpjhaPj07rV5cQraYwoJnqb3SRSKySWkzQrfqYXVmfvjg10/bZCpqIy1GTi1kmZE037iCfTxOMJVpJLfPr4gdNtrsDY5IuJXQ0Clx8F7wzWMaSYMRkNCILI/FIBb0MjnR3HcDidJJPL9B6pv7CrwUBXw/MWjwSAQRTJ5td5EjPzOg2buhG7zUGlXEZVNWXnE4NheVPV5LnFAkgSPrtObXODSilHvcVEslTDrtUA0NF/nRkYDgfdZ66Md3co9xv9fkusamAhW6RaWKdHcfPl2wJlwUp/o521tRxGoxHdvp+6vvOK2DocEx68W9QFUeBzLMPM9zjlQoF22czFU4fxux2kUmnWi0UsVhvZ1RUO+Xw8nC/x9kceqaKOCu1Xn034PE7mlnOkFrORS4MHwiPHfQFZdiEioNU08vkCqqoi2SSiudrstXvvQ0CUV6Hojh0AdF9/PHGur6XfYTUEt2oqaBrVLT2aKaqRyafzob1M/N/pJ0pIyg1/y0tzAAAAAElFTkSuQmCC">Applications Overview</A>            <DT><A href="http://docs.cloudstack.apache.org/en/latest/" add_date="1399274511" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABOUlEQVQ4jaVSMUvDQBh9lhZsgmhJ4tBAIIg1g6NLbDu4OInQzd8huPgDdFB0dHDzDwSs/SeWXiJBqBYhhnbqXTYdNEeOS5qKb7r77n2P733vVg57J1/4B6rpYVVRUFdU/sDoHAmlcFrbUhNlDOO3d1HAtGxsObucFJJnhGSI87NTSWDkB7i8vhUFsk17nQOhwXt8gtcfAAAe7u/yLfzYUNHQDVRrNYGka1quFUnAtGyYlg0A+PyY8Hq37aLbdssFpnGEWRyh+SuSYuQHIH4AAOgdHwlvlexlFkcIyRCMzgUS8QN4/QHfQ+EETctGQ9/E2voGZnHE6519F85Oq9xCXVGFv5DC0DUYulYuUISlYyzC0jEWYVGMldzqH8AnmIxfMc1sPo3y4upGaqKMyQIJpUgolcgkeFk4wTejOmiY1NcHGQAAAABJRU5ErkJggg==">Welcome to CloudStack Documentation ! — Apache CloudStack 4.3.0 documentation</A>            <DT><A href="http://docs.openstack.org/" add_date="1399344915" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABw0lEQVQ4jY1Tu4qTYRA9Z+ZL/iSKK4EVV9fGarHaNo3YCNoINj6ChYX4Dr7AYmHhI9gIVpaLCnkDEREb4yosLK6X3GeORbLqakyc8vvmDDPnwjdntq/WnPdCaJBIkMSykiTBnBhOQjvFnQ9OmG+NcoYVAAH4c8rR26xHqMzwFXGxgFjrZ8ZUEiGr0WzRCpwPGStTQkYmQawVSQnSOfvXRPkK4ICEHd8cCagJYIuEg6CkLCQtATRpHGS+qH/av9ZFb7yOK8cW2ceuOtisj8+uP2uaXR5CIGnFIm5OzKu+ws20dwG9wQyyu+CQ3uCdtW/3M88lLWoZoxLmdwrZrpv7MNQFcP+3k/+iIdNvNZydsRBhflBA3WjQT5+kYYTJUgXnUzqnWK5/Q6KP6WdbiVhRBeLTIbKdSBfQXQUQ0P2iKcZCQDwonvFwYl5lpptp71ffIixgFo+HwZc/SUz3JwXcaLBgkPn8PTaXy5j+qDWXMd0/8u3Gdq/Qzod05OLXq4wEgE5yqvxQSBqEkCASVqNdWpgmAgIxmVk5AJCkGYTDlplXZKnmOfgXAQRQ0awiS8vMIRyWCN39jpjFGfrvOE8zhhHa+QFnqvMIfJI5TQAAAABJRU5ErkJggg==">OpenStack Docs: Current</A>            <DT><A href="http://docs.cloudstack.apache.org/projects/" add_date="1399364651" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAACHElEQVQ4jWWSwUuUQRjGn3fm3e+bXV3dDcPqGkiQ5SFJkLpZ0aXIyjpHh/6FqKwwIoigSxAUQaeiOnWJqGsURlK5eujQsXRTc9kld/ebed8OoyvRnF4Yhvf3PPOjwyfOBu+9zwACAChzzlhuNOqiCgAAEamqS1PnHHvv+/q3be3fEUIAYK2tLvyorfyaODmepomIEsH74NL0a2WuMj/P3md9/dv37Btp1OsAunuKn6ff138vnTk1ztb64IkMs93S2/3g8ZOPMzNMIAnSqNffvnwGYOz4hIRARIvV6o1bt1drtWKxODV5yRjTbK4ZY0yk/H+w1sZIcbbWxisGQVWYeezYaQDMrKoi4py7d/eOhACiVqslQWIrDAURicj3b/MABnYPERERee9fvX7zZ23NpenBA6NkKG6LD0wI4cv0OwA7dw0SkTGm3W7ff/hoeWW5VCqP7B82xmw8IKiKtXbv8GjEjUhJklw4fy5uSJJEpINEUFVjzMDgUAytqqrKzEePHOpkUNF/Mqhqq9kEkC8UiGCNbTabF69cW62tFos9N69PlsulTaT4+bE1oijIerPW2I1+1w8DiNAiAkBEVCEqzDx19XLwnoxha7PMiygAVlXL7PKFKJrLFywzoKVSqdjdFUIgoqydlXu7nHMiwsy5pcWfs58+eJ8BYM4tVxdE6enzFznmKJ+qutTNVubyzlFH70ivuqm36obyQEfvvzv/FV/NMrVSAAAAAElFTkSuQmCC">cloudstack | Read the Docs</A>            <DT><A href="http://cloudstack-administration.readthedocs.org/en/latest/" add_date="1399364664" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABOUlEQVQ4jaVSMUvDQBh9lhZsgmhJ4tBAIIg1g6NLbDu4OInQzd8huPgDdFB0dHDzDwSs/SeWXiJBqBYhhnbqXTYdNEeOS5qKb7r77n2P733vVg57J1/4B6rpYVVRUFdU/sDoHAmlcFrbUhNlDOO3d1HAtGxsObucFJJnhGSI87NTSWDkB7i8vhUFsk17nQOhwXt8gtcfAAAe7u/yLfzYUNHQDVRrNYGka1quFUnAtGyYlg0A+PyY8Hq37aLbdssFpnGEWRyh+SuSYuQHIH4AAOgdHwlvlexlFkcIyRCMzgUS8QN4/QHfQ+EETctGQ9/E2voGZnHE6519F85Oq9xCXVGFv5DC0DUYulYuUISlYyzC0jEWYVGMldzqH8AnmIxfMc1sPo3y4upGaqKMyQIJpUgolcgkeFk4wTejOmiY1NcHGQAAAABJRU5ErkJggg==">Welcome to CloudStack Administration Documentation — Apache CloudStack Administration Documentation 4.3 documentation</A>            <DT><A href="https://cwiki.apache.org/confluence/display/CLOUDSTACK/VM" add_date="1399540128" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACOElEQVQ4jY2RzUuUURTGf/e8M81Uo/iZTRmUIViNShRBYKvAsFUQbZLClAbbVH9AUIsIISgIFzmaZEUEIUJGLrKPVSQE4TRDZAgtlBCz1DQ/3vfe2+LV1JykZ3l4nh/POccBIHZmG5tjUUaCk/DVsJa2xAvYum8n37K+wxcjAMyHorDhObH919l9+sA/wxV1hyi0lwmpHkpKSwAUAIUnIkTzRhEVxpghJudLiQRqcZwbAHhuPTOBXiJqEFH5WDNOP5sg4foNRh9PYc0jAESKiYSaSE08RKlhjB0gHXhCRN1CVD4AWnVAwl1qAFBRW4za+AElORhjsfoc49PduNqlMK8eRzUBYMwIY7N7GL43thIAUB4/hpJOBAGrmdd1BGw2OM2IKLAuhhqSLS8WIysBABUNF8C56QeWyWDQuoF0693lY2cVYOR9H0V7XZQcXgobi9bnSbe1/m2XVQCAZNs1PO/KsskcTrA3kzUDoCZEZbwLdDtWN/suCSP6fia/gngQEi67TsVYt/4IUI2SaoxNMWWriPAUkaqFVbrR5iXObA/JB598QPnZBI6KgRzEmlEsBf4Bjcsv2YHj5hIM9vufMRqjxsHmoXjNT9soiBxF08fMdAljP8r+dLO8YuD2MB/vpFD23UJhQ9JGmbJlaBkkW7oCGPMMR+UyPTuBG54DcwmtBLy3Syecu0owVIlYz4fbCZTNwVNvFNvrwmSFj4M9ieUzqZaLGT+zqFhjK2KK0F4H6fbONb3/o9+N3NZC1TG6zAAAAABJRU5ErkJggg==">VM (Page Not Found) - Apache Cloudstack - Apache Software Foundation</A>            <DT><A href="https://github.com/" add_date="1406870302" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jW2SwWvcVRSFv/ve+80kbUjJJDVSsKlx2iQtRXDTCnXhXgRx5cIuRDeKQjdCi4IrcaEIVitW/wFBUdxWlOqqgmIx1k4ik8SShmhjx6ImmXnvHhdJyFA8q/vgvns4373GlgwQwERz+uEYq2cDPCq4F2SGrTj2lXv+cHH+2hX6ZH11NTl9/A2D5y2EASQkCcDMDDPkWpd0vt366SzgOwMCNKvJ6YFPUqoec3fY+tc3f/cdYiDn3qft67NPASUCmpw68FatVjudc/6yqLxi2Fgw2+/yFUHHzCqhKyWXs0h7arX648MjY/Xba79fskPNmZMxpcsxVTH3uh+0W7MvAOnIkQfHu92/1gBKvd640WrdArqTU8ffTlX1Yim9zdwrp1KI8TkLoSYvGGQgAmVu7upyH5+b23mioezu0SzsCcGfCWY8giR3rW/08ntA2W7uB7xTl0zvAl7+RpKZnQrCDhhmoD+W29cXthu9j9wORQEstVq/CW6agWH3B8CEJBhqNJqDdznfLRsfHx8QDEtmMlIwYwmJYNYYGq1ObDul/4mQANX3jZ4MZvdIksFioPi3hADYP1VKH00cPjzDFsy7I+SDzaPHqhjPA1gwk/SNTTRnHkopfe/SO8HsvhDjE+7lcy/+2sLcz1cBDjaPHquq9LKkJ4PZXiBL8lLKibD06y8/SP5+ivGlbrf7upf8JmLo3818Z9e+u2FwOpjtlVgPMSbh7y7OX/sxAKFdNs/I/XJ9oP6xy7+T+7nVpdbORriR87JLqwAxxsGS8xftvHkOCH2gDg08MDV8MaTwtBdnbePOSGdxsQPQaDaHR9JgxywU93Kx3Zo9A3Rh6+q2KXfy7bXVz/aN7f/apFsrpXuJTicDrP/ZYGS0qpesVxfmZy+we2z8B+UDSXAnYXvkAAAAAElFTkSuQmCC">GitHub</A>            <DT><A href="https://doub.io/ss-jc10/" add_date="1505891162" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC40lEQVQ4jVWTz2tcZRSGn3O+eydNZvLDFO0kNhUUW2k3IkgRTVRKdCOiGxUXWqmkS6Fo/RusiitLG4tiV24UxIWkpWJscONCVFyotDSJpqn1R2cmyWTuvd/3ukgL8VkdOLyHwwOvsYUBAhibOzWlLBxGTOXme5JElBbBLzp8uDJ9ZGF7xrjFF6cHxuu1E0IzVstzypJ2b5M+D/TnNVKeoaIszTi9cv3GcZ471t26IoxzZweaWfF5GGwcSu21BEpFjOH5O/dy78AI717+XpVicnO3oYanduf81W56hqeOdh1DTd88EYYah1KrUwSMtbLMDk/s5/0Dj9uPnb9ox8ICnglIrbXChwenmzvsLQzZHefOPBwyn0cCyZA8gr588Gm7f+h29n39Ma2qJHcXYElKtjUTxaQHS0etlgUpyTATKMdsSym8OL6PTlUQbu7MzKQk68uDoxnHfJKyEsJFsmBmrarHd61V3Ixjdz/A5Og47VjgW+YNmVNGOZp0YEJVNDMzwyWg3zNOLv7ElY0Ww3kf7+2f4rasj0oJw2SGqapM2B5nG7r5d+bO5Y02r/08z9XNdQ4M7uTZXffQKQvcbHsEB5YtC5IkA4tK5Oa8vPs+7uof4uSVH+jFyEOjTYI7UjKELMsktOSIi+SZmZEMVEo6ONKk3zMWux2WN9f4dPU3xvoaBHMJhCmRBwMWvMJmVVQRc0tCdc9s1466FrttHhkd49JGi7nrSyx1OypSZY4Jc1OvjClq1q9PH1lIVXXGB+vBoWrHQlKy3DOd/eMXrRZdHRxp6pOVXy33kCRVPlQPUjr155Mz3zrCrt0oX4+d9a8YadT6Pddn1y5VjSzn0Z27eWF8Lxf+Xmbh35WqEXIYbtRie+3CarzxJmKb0rm362O10XfAXiXPsm63y0jI2YgVPcTgQJ3Y61UGsyu//3Ocl95Yv1XJ/9W5ef6Dx8z8FTemqpQmHDCzpQTfkNJHq0/MzG/P/AewHHE7AztW7wAAAABJRU5ErkJggg==">ShadowsocksR 客户端 小白使用教程 | 逗比根据地</A>        </DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">openstack</H3>        <DL><p>            <DT><A href="https://launchpad.net/openstack/" add_date="1452238054" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAA/0lEQVQ4jWP8//8/AymACZnz+/fvX79+Eavh+vXrHR0djx49IlbDz58///37R5qT4OD/jzv/Pp9g+P/734fd/79dYWBA+JMFq4Y/D2r+vVnJyCbx/9cLBgYGJn5HVq0NDMx8OG2AGqYyi83gNLNE6r+P+/886cFnA9S5Qr4MDAwsCkp/X8z9/+kgPj+gWiTEyCL4//cb7Bow4/H/1wv//7xl5FRFdxIbGxsDA8OrV69UVaFyf24nMzCy/Xu7noGBgVkyF12DvLy8uLj49+/fEWZ/v/n/+01GTjUW1VlMAs4IN2CCX9fDfxzGLkWEp9GCAKsok6ArI4sAVilGUpM3ADxniiQMLdqBAAAAAElFTkSuQmCC">OpenStack in Launchpad Bug 网站</A>            <DT><A href="https://review.openstack.org/#/q/status:open" add_date="1451448268" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABeUlEQVQ4jX2SsUrDUBSGv3ubUikasymtgoLv4eILCLoKIgURtz5AKZ27SelWcLXgIr6Cm4ODk0MpVETUxijB2CbXIc3NbRP8l3D+e85/zn9OBIDqXyvKRTLwJ3OhONgXiylC9a8V1fU4sp30xXNh/J4KlYvgTzIilu5sO0Qba/pBPrr/TpMK+BPwX9Ii24m75xXm2BTq9kbpEWe43/litG3hF6aUw/j7q35SdzIA4FycingHBu72ygztD6qiAkDh84dwdYnx9BVXfutiOyrhyQBrcaSnlWeccBksqLDJlnAY4IIFTOcniHeQeDNs+IUpjthlBIxmie7kCqd4iHEnBmEPqRc1K/ZkwJv4zCxraL1nuNhC0t0QsaMSD6qrfZqcCTsqIfWZjCuYHk3Ojkq6MOGk/rNmQmZSrXVCvXmmY08G1Jtn1Fonmsv825dhTyWJJtqNTi4n80bNQzLZIpcRSBLbjc5cJ08GuVzGAsCF6irzAonwYnxUOBZ/EHWxEAXXTroAAAAASUVORK5CYII=">review.openstack 代码评论</A>            <DT><A href="http://stackalytics.com/" add_date="1454639409" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADE0lEQVQ4jYVTS2hcZRg933f/O/femTGZCdMmlDi1mCpYbLVUDS3RsT66aBb10QpCS33QLsT6pFlYZZCKCyWI4BPFBxKEweJCSoqE2iiK2JdIFQyhY2pIsSE2k8zcmXvv/30u4phNwbM9nLM4D6ANVYIqAQD2qTvww9EnR04+sGOZBuMKMP+yDCIBgML4xB0hXSwvcr7UyYvx6Jmtny22kleJxifaRkSQtsGSK5F0jk1c2/Vt9UNl5zj7qZLEsVVVEwTmkYyX+n707NahT4+tz7TFijIrQNSl2oGfZx6jxeggfL+HwrqGkpI+U6XD/mG4mgg5ZFyXESdy2kY6vLraVVm3qxIBgFl49N2X0oO3P+eu6YKEzQSqDKijREJEAMDWasysbjbtbrysre3rdla+/Ks4dCtUNpj45GShdu6ieAPX2+Cemx0uZEENBawlFbXswAS+y81mfGq6Z+7pnR07zs2t6n/RNfR8pPYYs+clEKHm6CmuvX4EzeO/ELGj7HsaZB0jitn5IHzijZvGtgzmB3vmiws/+a4ZcuA4IKoZEUtsDCHjQS/VqPHJGOTHKpr3dRPfkLy/tn7+lfTGvd2bezef0Kuj22CBhkatgExKCca06yBRiMuA62L1b9O4xk+wrf+AxisKonjPnaduFhCUAOjyDpiJVFVVVNBBRu/NFvBwTy+KfkadLO/3dOY0NR9cn5uqD2Srl3aD6HyaUx6BSVUti6ghgmwKcrI7341b0lmFKrWsJSyEiRCt8Gv8jnvhru9I757K/fFrfxRHryUQYcVVps/LzG7pXOkUmZxIkiRU5ZQqHCIFE6sVsfWGRcrdFMylT9D0nhGs+nr/38XgKyVzoynn17z8O+ozocpB1/grrbQERFZJSVUBkJDDrjqMJAzPuGE8urZSivIXdo0DGKd2GM9sG+4zCF5Qpr1BYvBnr9iRQwWWXEBotGZVdDi5vPAmNuypt6cMlJfiLKP839Oe3f7WnYdKb3/z+L6P1Jv8InGmjnyMyc+vW35t+YqvBJYKoiX3knnowAdP5c5W7v8/4T81tHHFDWiIFAAAAABJRU5ErkJggg==">Stackalytics | OpenStack community contribution in Mitaka release</A>        </DT></DT></DT></p></DL><p>        <DT><H3 add_date="1596439270" last_modified="1596439270">创新项目</H3>        <DL><p>            <DT><A href="http://36kr.com/p/210694.html" add_date="1460624299">YC支持的4或6人集体约会网站The Dating Ring毕业，欲提供低成本、高效率、配有红娘的婚恋服务 | 36氪</A>            <DT><A href="http://36kr.com/p/210702.html" add_date="1460628973">Y Combinator Winter 2014上5家值得关注的初创企业 | 36氪</A>            <DT><A href="https://www.zybuluo.com/mdeditor#348398" add_date="1460946706" icon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAChElEQVQ4jX2SS0jUURjFf/fO3xnTHG1MKBPf9LIStMLEMix8EJFk6iKNECuIFi1aVdhAix6rKFoUoWi2SSirhT0oE0pGMU2xFxg+UTNfjDbqPP63RY5MpX67e79zznfudw8sU9nHK6JzSqsjlsOI/0gllWlCyTIlVDIIy/z1iEA164iLL8qL2xcVyM9/aJw2Oy8rpc4BcomBThCXUiK7rlutVh1A83bsQbPXhBJnAwOMZKTEYJCC4dFpWjoHcbt1L8wI6oqtLx7g6oKD7JLKNJANG2NXy/Sd0QQG+JGUEE5oyAp+jE5TVdtOva0HpZRXaE4okVRXUfR5XqC60U+TuxTKdxr7UmM5WZiMeaWJnoEJqmo70HXF2KSDrt7xx8/Liw/LvdZ6DVSSy+35iwzQ8XWY1k9DzDndREesouxMOkeyN9M/ZEdAKoDIKrmfKOCjL9FPM1Ccu41D+zcyaZ/lja0bx4wLp8tDfJQFW9sA71v70JUWqaFj9t25ZpBcOL2bqPAQblY28bapG4++8HaEgDBL4J+DdAVr0iXalUkp70JPFCYzNjnDtTvvmJlz//ePSsHI2C8AR7Dd/4use1BkF9AFsD46FINBoBkkBQe2ELHGvEQcAGirqSnwaAC64HaAye9GmCWA/iE7OxPXkZkWR17WJmpffWVg2M7MrJsQsz+jEw6a2wfQPdxayIHVapW2vrgGIM0rHx9l4WDGBpIS1iKl4HvvOE9ff6OlcxCUePS8oihvQQAgs7QqRuriCbB1Od9Ao1Cu3LqKkp/gk/mX9451B02ZtgshrgP6IkQnQp0PmjLt8ZL/cuBbOUerzbpJJKM8OxDSg66ajUbHh2d3Tzn+xf4Gu1j3YVvHKFcAAAAASUVORK5CYII=">ipset 关于neutron 的使用方法 - 作业部落 Cmd Markdown 编辑阅读器</A>            <DT><A href="http://3g.163.com/ntes/special/0034073A/wechat_article.html?docid=BDU5A309052682V2&token=g9uwhsjayYB6iAZUocBiLFLI1KFryA04W4WwhTS738p48ErR02zJ6/KXOnxX046I&from=singlemessage&isappinstalled=1" add_date="1460685145">用VR看小黄片离我们还远吗？</A>            <DT><A href="https://www.projectplan365.com/projectviewernow/tViews.aspx#" add_date="1464589951">Project Viewer 365</A>        </DT></DT></DT></DT></DT></p></DL><p>        <DT><A href="http://bm.ruankao.org.cn/report/index" add_date="1565853364">全国计算机技术与软件专业技术资格（水平）考试</A>        <DT><A href="http://39.108.218.100/article/2019/7/10/39.html" add_date="1565942354">CKA考试总结 | Felix的个人博客系统</A>        <DT><A href="https://blog.fanfengqiang.com/2019/03/11/kubernetes-TLS-Bootstrapping%E9%85%8D%E7%BD%AE/" add_date="1566270893">kubernetes TLS Bootstrapping配置 | 范丰强的博客</A>    </DT></DT></DT></p></DT></p></DT></p></DT></p></DL><p></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DT></p></DL></p><p></p></DL></META>]]></content>
    
    
    <summary type="html">&lt;h1 id=&quot;运维工程师知识树&quot;&gt;&lt;a href=&quot;#运维工程师知识树&quot; class=&quot;headerlink&quot; title=&quot;运维工程师知识树&quot;&gt;&lt;/a&gt;运维工程师知识树&lt;/h1&gt;&lt;p&gt;作为运维工程师，你需要掌握一系列技能和知识，涵盖了多个领域，从操作系统管理到云计算、自动化和网络等。以下是一个运维工程师学习知识树的一般框架，你可以根据自己的实际情况和兴趣深入研究每个领域：&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>kube-proxy支持多CNI网络</title>
    <link href="https://www.flftuu.com/2023/11/07/kube-proxy%E6%94%AF%E6%8C%81%E5%A4%9ACNI%E7%BD%91%E7%BB%9C/"/>
    <id>https://www.flftuu.com/2023/11/07/kube-proxy%E6%94%AF%E6%8C%81%E5%A4%9ACNI%E7%BD%91%E7%BB%9C/</id>
    <published>2023-11-07T08:00:56.000Z</published>
    <updated>2023-11-14T02:43:44.056Z</updated>
    
    <content type="html"><![CDATA[<h1 id="简介"><a href="#简介" class="headerlink" title="简介"></a>简介</h1><p>Kube-proxy 是 Kubernetes 集群中的一个关键组件，负责实现 Kubernetes 服务发现和负载均衡。它运行在每个节点上，以确保网络流量正确路由到集群中的服务。<br>以下是 Kube-proxy 的一些主要功能和特点：</p><p>服务代理：Kube-proxy会监视 Kubernetes API Server 中的 Service 和 Endpoints 对象，以了解集群中的服务和其后端 Pod。当有新服务创建或更新时，Kube-proxy会自动更新代理规则，以确保服务可用性。</p><p>IP 负载均衡：Kube-proxy通过维护 IP 负载均衡规则，将请求分发到服务的后端 Pod。这有助于实现服务的负载均衡，确保请求能够均匀地分发到多个 Pod 上。</p><span id="more"></span><p>面向用户的服务发现：Kube-proxy允许用户通过 Kubernetes 的服务抽象来访问应用程序，而不需要了解后端 Pod 的详细信息。用户只需使用服务名称和端口号，而不必担心具体的 Pod IP 地址。</p><p>支持多种代理模式：Kube-proxy支持多种代理模式，包括iptables、IPVS、和 Windows 等。这些模式允许根据集群的具体需求选择不同的代理方式。</p><p>节点故障处理：Kube-proxy会监视节点上的 Pod 和服务，并在节点故障时自动处理重新路由流量，以确保服务的高可用性。</p><p>安全策略支持：Kube-proxy也可以与网络策略 (Network Policies) 集成，允许管理员定义网络访问控制规则，以保护集群中的服务。</p><p>总之，Kube-proxy是 Kubernetes 集群中的一个关键组件，它简化了服务发现和负载均衡的管理，使用户能够轻松地访问和管理其应用程序，同时确保高可用性和网络安全。不过需要注意的是，Kubernetes 1.20版本及以后，Kube-proxy引入了一个新的模式，即”Kube-proxy mode”，用于简化其设计和维护。因此，Kube-proxy的具体实现细节可能会随着Kubernetes版本的演进而变化。</p><h1 id="图解"><a href="#图解" class="headerlink" title="图解"></a>图解</h1><p><img src="/2023/11/07/kube-proxy%E6%94%AF%E6%8C%81%E5%A4%9ACNI%E7%BD%91%E7%BB%9C/1.png" alt="1"><br>kube-proxy是工作在每个节点上面的组件，它会去watch apiserver，watch apiserver之后kube-proxy，假设kube-proxy工作在iptables模式下面，它就会去调用iptables的命令，去生成这样一些规则，无非就是说你的目标IP是某个clusterIP，那我就应该去写一些dnat的跳转规则，让后端数据包的目标地址变为后端pod的IP地址，这是kube-proxy希望去实现的一个目标。<br>经过IP tables之后，你访问cluster ip，你要将数据包转到后端的pod里面去，这是我们要达到的一个目的。</p><h3 id="iptables-模式"><a href="#iptables-模式" class="headerlink" title="iptables 模式"></a>iptables 模式</h3><p>这个chain和原生的linux kernel里面内置的hook点是怎么产生绑定关系的呢？可以看到将kube-service这个chain加入到pretouting和output这两个hook点里面，</p><p>也就意味着，所有进入到Linux内核的数据包，以及linux系统里面的进程，向外发起请求的这些数据包全部都需要走kube-servcie，那么就意味着任何请求都会经过这些规则去处理。</p><p><img src="/2023/11/07/kube-proxy%E6%94%AF%E6%8C%81%E5%A4%9ACNI%E7%BD%91%E7%BB%9C/2.png" alt="2"></p><p>假设本地有一个pod，要去访问nginx-basic这个服务，这个数据包意味是从本地的pod发出的，所以它先要走本地的kernel的output表，output就会去执行kube-service，走kube-service就会去看如果你的clusterip是符合我刚才service的clusterip的话，它就会经由展示的那些规则一个一个去命中。命中的话就将clusterip换成了目标pod的IP。，这样就完成了一个负载均衡的目标，这一切是在k8s节点的主机网络空间里面去做的。</p><p><img src="/2023/11/07/kube-proxy%E6%94%AF%E6%8C%81%E5%A4%9ACNI%E7%BD%91%E7%BB%9C/3.png" alt="3"><br>ipvs是netfilter另外一种工作模式，另外一种plugin，ipvs本身是lvs的一部分，或者说二者是可以等价的，lvs更多的是为负载均衡服务，所以对nat网络包的处理，有更好的支持。</p><p>ipvs和iptables不一样，它所支持的hook点不一样，它没有prerouting的支持，它只有local_in的支持，有local_out的支持，只有local int out可以让我们去添加一些规则。</p><p>因为iptables模式下面，当你去访问clusterip，在做路由判决之前就将目标地址换掉了，进来的数据包是通过prerouting去做的dnat，这个时候路由判决还没有做，所以那个clusterip可以不绑在任何的路由设备上面，在路由判决的时候那个IP已经变成了pod的真实IP。</p><p>针对ipvs来说，从外面发进来的一个包，由Linux kernel来处理，如果访问的是clusterIP，那么在prerouting这里是没有ipvs的hook点的，也就是路由判决的时候，这个ip还是你service对应的clusterip，也就说在路由判决的时候，linux kernel会去判断，你所访问的目标地址，是不是在我本机一个有效地址，如果是无效就将这个包丢掉，针对ipvs模式，有一个额外的操作，要将所有的service cluster ip绑在当前节点的dump设备上面，这样的话才能判断我这个本机上面是有这个IP的，它是一个有效IP，又因为它是本机的，它会走到local_in这个hook点，在这里就可以插入一些ipvs规则的，出去的包也一样在local_out去做。<br>这是本质的区别，针对ipvs这种模式，你的clusterip是要绑在本机的某个interface上面的。</p><h1 id="参数"><a href="#参数" class="headerlink" title="参数"></a>参数</h1><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br><span class="line">97</span><br><span class="line">98</span><br><span class="line">99</span><br><span class="line">100</span><br><span class="line">101</span><br><span class="line">102</span><br><span class="line">103</span><br><span class="line">104</span><br><span class="line">105</span><br><span class="line">106</span><br><span class="line">107</span><br><span class="line">108</span><br><span class="line">109</span><br><span class="line">110</span><br><span class="line">111</span><br><span class="line">112</span><br><span class="line">113</span><br><span class="line">114</span><br><span class="line">115</span><br><span class="line">116</span><br><span class="line">117</span><br><span class="line">118</span><br><span class="line">119</span><br><span class="line">120</span><br><span class="line">121</span><br><span class="line">122</span><br><span class="line">123</span><br><span class="line">124</span><br><span class="line">125</span><br><span class="line">126</span><br><span class="line">127</span><br><span class="line">128</span><br><span class="line">129</span><br><span class="line">130</span><br><span class="line">131</span><br><span class="line">132</span><br><span class="line">133</span><br><span class="line">134</span><br><span class="line">135</span><br><span class="line">136</span><br><span class="line">137</span><br><span class="line">138</span><br><span class="line">139</span><br><span class="line">140</span><br><span class="line">141</span><br><span class="line">142</span><br><span class="line">143</span><br><span class="line">144</span><br><span class="line">145</span><br><span class="line">146</span><br><span class="line">147</span><br><span class="line">148</span><br><span class="line">149</span><br><span class="line">150</span><br><span class="line">151</span><br><span class="line">152</span><br><span class="line">153</span><br><span class="line">154</span><br><span class="line">155</span><br><span class="line">156</span><br><span class="line">157</span><br><span class="line">158</span><br><span class="line">159</span><br><span class="line">160</span><br><span class="line">161</span><br><span class="line">162</span><br><span class="line">163</span><br><span class="line">164</span><br><span class="line">165</span><br><span class="line">166</span><br><span class="line">167</span><br><span class="line">168</span><br><span class="line">169</span><br><span class="line">170</span><br><span class="line">171</span><br><span class="line">172</span><br><span class="line">173</span><br><span class="line">174</span><br><span class="line">175</span><br><span class="line">176</span><br><span class="line">177</span><br><span class="line">178</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">ServiceAccount</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">namespace:</span> <span class="string">kube-system</span></span><br><span class="line"></span><br><span class="line"><span class="meta">---</span></span><br><span class="line"><span class="attr">apiVersion:</span> <span class="string">rbac.authorization.k8s.io/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">ClusterRoleBinding</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">kubeadm:node-proxier</span></span><br><span class="line"><span class="attr">roleRef:</span></span><br><span class="line">  <span class="attr">apiGroup:</span> <span class="string">rbac.authorization.k8s.io</span></span><br><span class="line">  <span class="attr">kind:</span> <span class="string">ClusterRole</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">system:node-proxier</span></span><br><span class="line"><span class="attr">subjects:</span></span><br><span class="line"><span class="bullet">-</span> <span class="attr">kind:</span> <span class="string">ServiceAccount</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">namespace:</span> <span class="string">kube-system</span></span><br><span class="line"></span><br><span class="line"><span class="meta">---</span></span><br><span class="line"><span class="attr">apiVersion:</span> <span class="string">v1</span></span><br><span class="line"><span class="attr">data:</span></span><br><span class="line">  <span class="attr">config.conf:</span> <span class="string">|-</span></span><br><span class="line"><span class="string">    apiVersion: kubeproxy.config.k8s.io/v1alpha1</span></span><br><span class="line"><span class="string">    bindAddress: 0.0.0.0</span></span><br><span class="line"><span class="string">    bindAddressHardFail: false</span></span><br><span class="line"><span class="string">    clientConnection:</span></span><br><span class="line"><span class="string">      acceptContentTypes: &quot;&quot;</span></span><br><span class="line"><span class="string">      burst: 0</span></span><br><span class="line"><span class="string">      contentType: &quot;&quot;</span></span><br><span class="line"><span class="string">      kubeconfig: /var/lib/kube-proxy/kubeconfig.conf</span></span><br><span class="line"><span class="string">      qps: 0</span></span><br><span class="line"><span class="string">    clusterCIDR: 10.144.0.0/16</span></span><br><span class="line"><span class="string">    configSyncPeriod: 0s</span></span><br><span class="line"><span class="string">    conntrack:</span></span><br><span class="line"><span class="string">      maxPerCore: null</span></span><br><span class="line"><span class="string">      min: null</span></span><br><span class="line"><span class="string">      tcpCloseWaitTimeout: null</span></span><br><span class="line"><span class="string">      tcpEstablishedTimeout: null</span></span><br><span class="line"><span class="string">    detectLocal:</span></span><br><span class="line"><span class="string">      bridgeInterface: &quot;&quot;</span></span><br><span class="line"><span class="string">      interfaceNamePrefix: &quot;&quot;</span></span><br><span class="line"><span class="string">    detectLocalMode: &quot;&quot;</span></span><br><span class="line"><span class="string">    enableProfiling: false</span></span><br><span class="line"><span class="string">    healthzBindAddress: &quot;&quot;</span></span><br><span class="line"><span class="string">    hostnameOverride: &quot;&quot;</span></span><br><span class="line"><span class="string">    iptables:</span></span><br><span class="line"><span class="string">      masqueradeAll: false</span></span><br><span class="line"><span class="string">      masqueradeBit: null</span></span><br><span class="line"><span class="string">      minSyncPeriod: 0s</span></span><br><span class="line"><span class="string">      syncPeriod: 0s</span></span><br><span class="line"><span class="string">    ipvs:</span></span><br><span class="line"><span class="string">      excludeCIDRs: null</span></span><br><span class="line"><span class="string">      minSyncPeriod: 0s</span></span><br><span class="line"><span class="string">      scheduler: &quot;&quot;</span></span><br><span class="line"><span class="string">      trictARP: false</span></span><br><span class="line"><span class="string">      syncPeriod: 0s</span></span><br><span class="line"><span class="string">      tcpFinTimeout: 0s</span></span><br><span class="line"><span class="string">      tcpTimeout: 0s</span></span><br><span class="line"><span class="string">      udpTimeout: 0s</span></span><br><span class="line"><span class="string">    kind: KubeProxyConfiguration</span></span><br><span class="line"><span class="string">    metricsBindAddress: &quot;&quot;</span></span><br><span class="line"><span class="string">    mode: &quot;iptables&quot;</span></span><br><span class="line"><span class="string">    nodePortAddresses: null</span></span><br><span class="line"><span class="string">    oomScoreAdj: null</span></span><br><span class="line"><span class="string">    portRange: &quot;&quot;</span></span><br><span class="line"><span class="string">    showHiddenMetricsForVersion: &quot;&quot;</span></span><br><span class="line"><span class="string">    udpIdleTimeout: 0s</span></span><br><span class="line"><span class="string">    winkernel:</span></span><br><span class="line"><span class="string">      enableDSR: false</span></span><br><span class="line"><span class="string">      forwardHealthCheckVip: false</span></span><br><span class="line"><span class="string">      networkName: &quot;&quot;</span></span><br><span class="line"><span class="string">      rootHnsEndpointName: &quot;&quot;</span></span><br><span class="line"><span class="string">      sourceVip: &quot;&quot;</span></span><br><span class="line"><span class="string"></span>  <span class="attr">kubeconfig.conf:</span> <span class="string">|-</span></span><br><span class="line"><span class="string">    apiVersion: v1</span></span><br><span class="line"><span class="string">    kind: Config</span></span><br><span class="line"><span class="string">    clusters:</span></span><br><span class="line"><span class="string">    - cluster:</span></span><br><span class="line"><span class="string">        certificate-authority: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt</span></span><br><span class="line"><span class="string">        server: https://192.168.201.10:6443</span></span><br><span class="line"><span class="string">      name: default</span></span><br><span class="line"><span class="string">    contexts:</span></span><br><span class="line"><span class="string">    - context:</span></span><br><span class="line"><span class="string">        cluster: default</span></span><br><span class="line"><span class="string">        namespace: default</span></span><br><span class="line"><span class="string">        user: default</span></span><br><span class="line"><span class="string">      name: default</span></span><br><span class="line"><span class="string">    current-context: default</span></span><br><span class="line"><span class="string">    users:</span></span><br><span class="line"><span class="string">    - name: default</span></span><br><span class="line"><span class="string">      user:</span></span><br><span class="line"><span class="string">        tokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token</span></span><br><span class="line"><span class="string"></span><span class="attr">kind:</span> <span class="string">ConfigMap</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">labels:</span></span><br><span class="line">    <span class="attr">app:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">namespace:</span> <span class="string">kube-system</span></span><br><span class="line"></span><br><span class="line"><span class="meta">---</span></span><br><span class="line"><span class="attr">apiVersion:</span> <span class="string">apps/v1</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">DaemonSet</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">labels:</span></span><br><span class="line">    <span class="attr">k8s-app:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">namespace:</span> <span class="string">kube-system</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">selector:</span></span><br><span class="line">    <span class="attr">matchLabels:</span></span><br><span class="line">      <span class="attr">k8s-app:</span> <span class="string">kube-proxy</span></span><br><span class="line">  <span class="attr">template:</span></span><br><span class="line">    <span class="attr">metadata:</span></span><br><span class="line">      <span class="attr">labels:</span></span><br><span class="line">        <span class="attr">k8s-app:</span> <span class="string">kube-proxy</span></span><br><span class="line">    <span class="attr">spec:</span></span><br><span class="line">      <span class="attr">containers:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">command:</span></span><br><span class="line">        <span class="bullet">-</span> <span class="string">/usr/local/bin/kube-proxy</span></span><br><span class="line">        <span class="bullet">-</span> <span class="string">--config=/var/lib/kube-proxy/config.conf</span></span><br><span class="line">        <span class="bullet">-</span> <span class="string">--hostname-override=$(NODE_NAME)</span></span><br><span class="line">        <span class="bullet">-</span> <span class="string">--exclude-cluster-cidr=10.244.0.0/16</span></span><br><span class="line">        <span class="bullet">-</span> <span class="string">--v=5</span></span><br><span class="line">        <span class="attr">env:</span></span><br><span class="line">        <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">NODE_NAME</span></span><br><span class="line">          <span class="attr">valueFrom:</span></span><br><span class="line">            <span class="attr">fieldRef:</span></span><br><span class="line">              <span class="attr">apiVersion:</span> <span class="string">v1</span></span><br><span class="line">              <span class="attr">fieldPath:</span> <span class="string">spec.nodeName</span></span><br><span class="line">        <span class="attr">image:</span> <span class="string">flftuu/kube-proxy-amd64:v1.24.10-dirty</span></span><br><span class="line">        <span class="attr">imagePullPolicy:</span> <span class="string">IfNotPresent</span></span><br><span class="line">        <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">        <span class="attr">resources:</span> &#123;&#125;</span><br><span class="line">        <span class="attr">securityContext:</span></span><br><span class="line">          <span class="attr">privileged:</span> <span class="literal">true</span></span><br><span class="line">        <span class="attr">terminationMessagePath:</span> <span class="string">/dev/termination-log</span></span><br><span class="line">        <span class="attr">terminationMessagePolicy:</span> <span class="string">File</span></span><br><span class="line">        <span class="attr">volumeMounts:</span></span><br><span class="line">        <span class="bullet">-</span> <span class="attr">mountPath:</span> <span class="string">/var/lib/kube-proxy</span></span><br><span class="line">          <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">        <span class="bullet">-</span> <span class="attr">mountPath:</span> <span class="string">/run/xtables.lock</span></span><br><span class="line">          <span class="attr">name:</span> <span class="string">xtables-lock</span></span><br><span class="line">        <span class="bullet">-</span> <span class="attr">mountPath:</span> <span class="string">/lib/modules</span></span><br><span class="line">          <span class="attr">name:</span> <span class="string">lib-modules</span></span><br><span class="line">          <span class="attr">readOnly:</span> <span class="literal">true</span></span><br><span class="line">      <span class="attr">dnsPolicy:</span> <span class="string">ClusterFirst</span></span><br><span class="line">      <span class="attr">hostNetwork:</span> <span class="literal">true</span></span><br><span class="line">      <span class="attr">nodeSelector:</span></span><br><span class="line">        <span class="attr">kubernetes.io/os:</span> <span class="string">linux</span></span><br><span class="line">      <span class="attr">priorityClassName:</span> <span class="string">system-node-critical</span></span><br><span class="line">      <span class="attr">restartPolicy:</span> <span class="string">Always</span></span><br><span class="line">      <span class="attr">schedulerName:</span> <span class="string">default-scheduler</span></span><br><span class="line">      <span class="attr">securityContext:</span> &#123;&#125;</span><br><span class="line">      <span class="attr">serviceAccount:</span> <span class="string">kube-proxy</span></span><br><span class="line">      <span class="attr">serviceAccountName:</span> <span class="string">kube-proxy</span></span><br><span class="line">      <span class="attr">terminationGracePeriodSeconds:</span> <span class="number">30</span></span><br><span class="line">      <span class="attr">tolerations:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">operator:</span> <span class="string">Exists</span></span><br><span class="line">      <span class="attr">volumes:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">configMap:</span></span><br><span class="line">          <span class="attr">defaultMode:</span> <span class="number">420</span></span><br><span class="line">          <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">        <span class="attr">name:</span> <span class="string">kube-proxy</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">hostPath:</span></span><br><span class="line">          <span class="attr">path:</span> <span class="string">/run/xtables.lock</span></span><br><span class="line">          <span class="attr">type:</span> <span class="string">FileOrCreate</span></span><br><span class="line">        <span class="attr">name:</span> <span class="string">xtables-lock</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">hostPath:</span></span><br><span class="line">          <span class="attr">path:</span> <span class="string">/lib/modules</span></span><br><span class="line">          <span class="attr">type:</span> <span class="string">&quot;&quot;</span></span><br><span class="line">        <span class="attr">name:</span> <span class="string">lib-modules</span></span><br><span class="line">  <span class="attr">updateStrategy:</span></span><br><span class="line">    <span class="attr">rollingUpdate:</span></span><br><span class="line">      <span class="attr">maxSurge:</span> <span class="number">0</span></span><br><span class="line">      <span class="attr">maxUnavailable:</span> <span class="number">1</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">RollingUpdate</span></span><br></pre></td></tr></table></figure><h1 id="编译"><a href="#编译" class="headerlink" title="编译"></a>编译</h1><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">git clone https://github.com/kubernetes/kubernetes.git</span><br><span class="line">cd kubernetes</span><br><span class="line">export KUBE_GIT_VERSION=v1.24.10</span><br><span class="line">make clean</span><br><span class="line">make quick-release-images</span><br></pre></td></tr></table></figure><h1 id="镜像"><a href="#镜像" class="headerlink" title="镜像"></a>镜像</h1><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">docker pull flftuu/kube-proxy-amd64:v1.24.10-dirty</span><br></pre></td></tr></table></figure><h1 id="效果"><a href="#效果" class="headerlink" title="效果"></a>效果</h1><h3 id="iptables-模式-1"><a href="#iptables-模式-1" class="headerlink" title="iptables 模式"></a>iptables 模式</h3><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta prompt_"># </span><span class="language-bash">查看iptables nat 表的规则</span></span><br><span class="line"><span class="meta prompt_"></span></span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">存在calico ip：10.96.67.75 信息</span></span><br><span class="line">[root@fanyi-worker1 ~]# iptables -L -vn -t nat | grep 10.96.67.75 -A 2</span><br><span class="line">    0     0 KUBE-SVC-RH2G6EKXTJDCSNM7  tcp  --  *      *       0.0.0.0/0            10.96.67.75          /* default/nginx-calico cluster IP */ tcp dpt:80</span><br><span class="line">   12   720 KUBE-NODEPORTS  all  --  *      *       0.0.0.0/0            0.0.0.0/0            /* kubernetes service nodeports; NOTE: this must be the last rule in this chain */ ADDRTYPE match dst-type LOCAL</span><br><span class="line"></span><br><span class="line">--</span><br><span class="line">    0     0 KUBE-MARK-MASQ  tcp  --  *      *      !10.144.0.0/16        10.96.67.75          /* default/nginx-calico cluster IP */ tcp dpt:80</span><br><span class="line">    0     0 KUBE-SEP-ZMODNQBWAQHJ2KQZ  all  --  *      *       0.0.0.0/0            0.0.0.0/0            /* default/nginx-calico -&gt; 10.144.154.71:80 */</span><br><span class="line"><span class="meta prompt_"></span></span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">不存在ovn ip：10.96.95.98  信息</span></span><br><span class="line">[root@fanyi-worker1 ~]# iptables -L -vn -t nat | grep 10.96.95.98 -A 2</span><br></pre></td></tr></table></figure><h3 id="ipvs-模式"><a href="#ipvs-模式" class="headerlink" title="ipvs 模式"></a>ipvs 模式</h3><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta prompt_"># </span><span class="language-bash">查看ipvs 规则和 kube-ipvs0网卡上的ip信息</span></span><br><span class="line"><span class="meta prompt_"></span></span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">存在calico ip：10.96.67.75 信息</span></span><br><span class="line">[root@fanyi-worker1 ~]# ip add | grep  10.96.67.75</span><br><span class="line">    inet 10.96.67.75/32 scope global kube-ipvs0</span><br><span class="line">[root@fanyi-worker1 ~]# ipvsadm -l -n | grep  10.96.67.75 -A 1</span><br><span class="line">TCP  10.96.67.75:80 rr</span><br><span class="line"><span class="meta prompt_">  -&gt; </span><span class="language-bash">10.144.154.71:80             Masq    1      0          0</span>  </span><br><span class="line"><span class="meta prompt_"></span></span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">不存在ovn ip：10.96.95.98  信息</span></span><br><span class="line">[root@fanyi-worker1 ~]# ip add | grep  10.96.95.98 </span><br><span class="line">[root@fanyi-worker1 ~]# ipvsadm -l -n | grep  10.96.95.98 </span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;h1 id=&quot;简介&quot;&gt;&lt;a href=&quot;#简介&quot; class=&quot;headerlink&quot; title=&quot;简介&quot;&gt;&lt;/a&gt;简介&lt;/h1&gt;&lt;p&gt;Kube-proxy 是 Kubernetes 集群中的一个关键组件，负责实现 Kubernetes 服务发现和负载均衡。它运行在每个节点上，以确保网络流量正确路由到集群中的服务。&lt;br&gt;以下是 Kube-proxy 的一些主要功能和特点：&lt;/p&gt;
&lt;p&gt;服务代理：Kube-proxy会监视 Kubernetes API Server 中的 Service 和 Endpoints 对象，以了解集群中的服务和其后端 Pod。当有新服务创建或更新时，Kube-proxy会自动更新代理规则，以确保服务可用性。&lt;/p&gt;
&lt;p&gt;IP 负载均衡：Kube-proxy通过维护 IP 负载均衡规则，将请求分发到服务的后端 Pod。这有助于实现服务的负载均衡，确保请求能够均匀地分发到多个 Pod 上。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>ovn-k8s的multi-homing功能介绍</title>
    <link href="https://www.flftuu.com/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/"/>
    <id>https://www.flftuu.com/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/</id>
    <published>2023-07-13T07:15:48.000Z</published>
    <updated>2023-11-07T09:47:33.537Z</updated>
    
    <content type="html"><![CDATA[<h1 id="ovn-k8s的multi-homing功能介绍"><a href="#ovn-k8s的multi-homing功能介绍" class="headerlink" title="ovn-k8s的multi-homing功能介绍"></a>ovn-k8s的multi-homing功能介绍</h1><h1 id="multi-homing功能简介"><a href="#multi-homing功能简介" class="headerlink" title="multi-homing功能简介"></a>multi-homing功能简介</h1><p>具有多个网络接口的 K8s Pod被称为 multi-homed。  <a href="https://github.com/k8snetworkplumbingwg/multi-net-spec">Network Plumbing Working Group</a> 提出了一个标准，描述如何指定附加网络接口的配置。</p><p>有几个插件（Multus、Genie）实现了此标准。</p><p>在特定 Kubernetes 节点上调度 pod 后，kubelet 将调用委托插件来准备 pod 的联网。然后，此元插件将调用负责设置 pod 的默认集群网络的 CNI，然后迭代 pod 上的其他附件列表，调用相应的委托 CNI 实现将 pod 附加到该特定网络的逻辑。</p><span id="more"></span><h1 id="环境搭建"><a href="#环境搭建" class="headerlink" title="环境搭建"></a>环境搭建</h1><h3 id="ovn-k8s-开启multi-homing"><a href="#ovn-k8s-开启multi-homing" class="headerlink" title="ovn-k8s 开启multi-homing"></a>ovn-k8s 开启multi-homing</h3><pre><code> OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-latest ./daemonset.sh \--image=$OVN_IMAGE \--net-cidr=10.124.0.0/16 \--svc-cidr=10.86.0.0/16 \--gateway-mode=&quot;local&quot; \--gateway-options=&quot;--gateway-interface=ens3f2 --gateway-nexthop=192.168.200.1&quot; \--k8s-apiserver=https://192.168.122.10:6443 \--multicast-enabled=false \--disable-snat-multiple-gws=true \--disable-pkt-mtu-check=true \--multi-network-enable=true \ # 开启multi-homing 功能--master-loglevel=5 --node-loglevel=5 #设置日志级别5# 安装yamlkubectl apply -f ../yaml/ovn-setup.yamlkubectl apply -f ../yaml/k8s.ovn.org_adminpolicybasedexternalroutes.yamlkubectl apply -f ../yaml/ovnkube-db.yamlkubectl apply -f ../yaml/ovnkube-master.yamlkubectl apply -f ../yaml/ovnkube-node.yaml</code></pre><h3 id="安装multus-cni-组件"><a href="#安装multus-cni-组件" class="headerlink" title="安装multus-cni 组件"></a>安装multus-cni 组件</h3><pre><code># Note:#   This deployment file is designed for &#39;quickstart&#39; of multus, easy installation to test it,#   hence this deployment yaml does not care about following things intentionally.#     - various configuration options#     - minor deployment scenario#     - upgrade/update/uninstall scenario#   Multus team understand users deployment scenarios are diverse, hence we do not cover#   comprehensive deployment scenario. We expect that it is covered by each platform deployment.---apiVersion: apiextensions.k8s.io/v1kind: CustomResourceDefinitionmetadata:  name: network-attachment-definitions.k8s.cni.cncf.iospec:  group: k8s.cni.cncf.io  scope: Namespaced  names:    plural: network-attachment-definitions    singular: network-attachment-definition    kind: NetworkAttachmentDefinition    shortNames:    - net-attach-def  versions:    - name: v1      served: true      storage: true      schema:        openAPIV3Schema:          description: &#39;NetworkAttachmentDefinition is a CRD schema specified by the Network Plumbing            Working Group to express the intent for attaching pods to one or more logical or physical            networks. More information available at: https://github.com/k8snetworkplumbingwg/multi-net-spec&#39;          type: object          properties:            apiVersion:              description: &#39;APIVersion defines the versioned schema of this represen                tation of an object. Servers should convert recognized schemas to the                latest internal value, and may reject unrecognized values. More info:                https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources&#39;              type: string            kind:              description: &#39;Kind is a string value representing the REST resource this                object represents. Servers may infer this from the endpoint the client                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds&#39;              type: string            metadata:              type: object            spec:              description: &#39;NetworkAttachmentDefinition spec defines the desired state of a network attachment&#39;              type: object              properties:                config:                  description: &#39;NetworkAttachmentDefinition config is a JSON-formatted CNI configuration&#39;                  type: string---kind: ClusterRoleapiVersion: rbac.authorization.k8s.io/v1metadata:  name: multusrules:  - apiGroups: [&quot;k8s.cni.cncf.io&quot;]    resources:      - &#39;*&#39;    verbs:      - &#39;*&#39;  - apiGroups:      - &quot;&quot;    resources:      - pods      - pods/status    verbs:      - get      - update  - apiGroups:      - &quot;&quot;      - events.k8s.io    resources:      - events    verbs:      - create      - patch      - update---kind: ClusterRoleBindingapiVersion: rbac.authorization.k8s.io/v1metadata:  name: multusroleRef:  apiGroup: rbac.authorization.k8s.io  kind: ClusterRole  name: multussubjects:- kind: ServiceAccount  name: multus  namespace: kube-system---apiVersion: v1kind: ServiceAccountmetadata:  name: multus  namespace: kube-system---kind: ConfigMapapiVersion: v1metadata:  name: multus-cni-config  namespace: kube-system  labels:    tier: node    app: multusdata:  # NOTE: If you&#39;d prefer to manually apply a configuration file, you may create one here.  # In the case you&#39;d like to customize the Multus installation, you should change the arguments to the Multus pod  # change the &quot;args&quot; line below from  # - &quot;--multus-conf-file=auto&quot;  # to:  # &quot;--multus-conf-file=/tmp/multus-conf/70-multus.conf&quot;  # Additionally -- you should ensure that the name &quot;70-multus.conf&quot; is the alphabetically first name in the  # /etc/cni/net.d/ directory on each node, otherwise, it will not be used by the Kubelet.  cni-conf.json: |    &#123;      &quot;name&quot;: &quot;multus-cni-network&quot;,      &quot;type&quot;: &quot;multus&quot;,      &quot;capabilities&quot;: &#123;        &quot;portMappings&quot;: true      &#125;,      &quot;delegates&quot;: [        &#123;          &quot;cniVersion&quot;: &quot;0.3.1&quot;,          &quot;name&quot;: &quot;default-cni-network&quot;,          &quot;plugins&quot;: [            &#123;              &quot;type&quot;: &quot;flannel&quot;,              &quot;name&quot;: &quot;flannel.1&quot;,                &quot;delegate&quot;: &#123;                  &quot;isDefaultGateway&quot;: true,                  &quot;hairpinMode&quot;: true                &#125;              &#125;,              &#123;                &quot;type&quot;: &quot;portmap&quot;,                &quot;capabilities&quot;: &#123;                  &quot;portMappings&quot;: true                &#125;              &#125;          ]        &#125;      ],      &quot;kubeconfig&quot;: &quot;/etc/cni/net.d/multus.d/multus.kubeconfig&quot;    &#125;---apiVersion: apps/v1kind: DaemonSetmetadata:  name: kube-multus-ds  namespace: kube-system  labels:    tier: node    app: multus    name: multusspec:  selector:    matchLabels:      name: multus  updateStrategy:    type: RollingUpdate  template:    metadata:      labels:        tier: node        app: multus        name: multus    spec:      hostNetwork: true      tolerations:      - operator: Exists        effect: NoSchedule      - operator: Exists        effect: NoExecute      serviceAccountName: multus      containers:      - name: kube-multus        image: ghcr.io/k8snetworkplumbingwg/multus-cni:snapshot        command: [&quot;/thin_entrypoint&quot;]        args:        - &quot;--multus-conf-file=auto&quot;        - &quot;--multus-autoconfig-dir=/host/etc/cni/net.d&quot;        - &quot;--cni-conf-dir=/host/etc/cni/net.d&quot;        resources:          requests:            cpu: &quot;100m&quot;            memory: &quot;50Mi&quot;          limits:            cpu: &quot;100m&quot;            memory: &quot;50Mi&quot;        securityContext:          privileged: true        volumeMounts:        - name: cni          mountPath: /host/etc/cni/net.d        - name: cnibin          mountPath: /host/opt/cni/bin        - name: multus-cfg          mountPath: /tmp/multus-conf      initContainers:        - name: install-multus-binary          image: ghcr.io/k8snetworkplumbingwg/multus-cni:snapshot          command: [&quot;/install_multus&quot;]          args:            - &quot;--type&quot;            - &quot;thin&quot;          resources:            requests:              cpu: &quot;10m&quot;              memory: &quot;15Mi&quot;          securityContext:            privileged: true          volumeMounts:            - name: cnibin              mountPath: /host/opt/cni/bin              mountPropagation: Bidirectional      terminationGracePeriodSeconds: 10      volumes:        - name: cni          hostPath:            path: /etc/cni/net.d        - name: cnibin          hostPath:            path: /opt/cni/bin        - name: multus-cfg          configMap:            name: multus-cni-config            items:            - key: cni-conf.json              path: 70-multus.conf</code></pre><h3 id="安装multi-networkpolicy-组件"><a href="#安装multi-networkpolicy-组件" class="headerlink" title="安装multi-networkpolicy 组件"></a>安装multi-networkpolicy 组件</h3><p>简介：multi-network policy通过iptables 或者 tc 实现了对net-attach-def的网络策略功能，并为net-attach-def网络提供网络安全保护。</p><p>参考：<a href="https://github.com/k8snetworkplumbingwg/multi-networkpolicy">https://github.com/k8snetworkplumbingwg/multi-networkpolicy</a></p><pre><code>---apiVersion: apiextensions.k8s.io/v1kind: CustomResourceDefinitionmetadata:  name: multi-networkpolicies.k8s.cni.cncf.iospec:  group: k8s.cni.cncf.io  scope: Namespaced  names:    plural: multi-networkpolicies    singular: multi-networkpolicy    kind: MultiNetworkPolicy    shortNames:    - multi-policy  versions:    - name: v1beta1      served: true      storage: true      schema:        openAPIV3Schema:          description: &quot;MultiNetworkPolicy is a CRD schema to provide NetworkPolicy            mechanism for net-attach-def which is specified by the Network Plumbing            Working Group. MultiNetworkPolicy is identical to Kubernetes NetworkPolicy,            See: https://kubernetes.io/docs/concepts/services-networking/network-policies/ .&quot;          properties:            spec:              description: &#39;Specification of the desired behavior for this MultiNetworkPolicy.&#39;              properties:                egress:                  description: &quot;List of egress rules to be applied to the selected pods.                    Outgoing traffic is allowed if there are no NetworkPolicies selecting                    the pod (and cluster policy otherwise allows the traffic), OR if the                    traffic matches at least one egress rule across all of the NetworkPolicy                    objects whose podSelector matches the pod. If this field is empty                    then this NetworkPolicy limits all outgoing traffic (and serves solely                    to ensure that the pods it selects are isolated by default). This                    field is beta-level in 1.8&quot;                  items:                    description: &quot;NetworkPolicyEgressRule describes a particular set of                      traffic that is allowed out of pods matched by a NetworkPolicySpec&#39;s                      podSelector. The traffic must match both ports and to. This type                      is beta-level in 1.8&quot;                    properties:                      ports:                        description: &quot;List of destination ports for outgoing traffic. Each                          item in this list is combined using a logical OR. If this field                          is empty or missing, this rule matches all ports (traffic not                          restricted by port). If this field is present and contains at                          least one item, then this rule allows traffic only if the traffic                          matches at least one port in the list.&quot;                        items:                          description: &quot;NetworkPolicyPort describes a port to allow traffic on&quot;                          properties:                            port:                              anyOf:                                - type: integer                                - type: string                              description: &quot;The port on the given protocol. This can either                                be a numerical or named port on a pod. If this field is                                not provided, this matches all port names and numbers.&quot;                              x-kubernetes-int-or-string: true                            protocol:                              description: &quot;The protocol (TCP, UDP, or SCTP) which traffic                                must match. If not specified, this field defaults to TCP.&quot;                              type: string                          type: object                        type: array                      to:                        description: &quot;List of destinations for outgoing traffic of pods                          selected for this rule. Items in this list are combined using                          a logical OR operation. If this field is empty or missing, this                          rule matches all destinations (traffic not restricted by destination).                          If this field is present and contains at least one item, this                          rule allows traffic only if the traffic matches at least one                          item in the to list.&quot;                        items:                          description: &quot;NetworkPolicyPeer describes a peer to allow traffic                        from. Only certain combinations of fields are allowed&quot;                          properties:                            ipBlock:                              description: &quot;IPBlock defines policy on a particular IPBlock.                                If this field is set then neither of the other fields                                can be.&quot;                              properties:                                cidr:                                  description: &quot;CIDR is a string representing the IP Block                                    Valid examples are &#39;192.168.1.1/24&#39;&quot;                                  type: string                                except:                                  description: &quot;Except is a slice of CIDRs that should                                    not be included within an IP Block Valid examples                                    are &#39;192.168.1.1/24&#39; Except values will be rejected                                    if they are outside the CIDR range&quot;                                  items:                                    type: string                                  type: array                              required:                              - cidr                              type: object                            namespaceSelector:                              description: &quot;Selects Namespaces using cluster-scoped labels.                                This field follows standard label selector semantics;                                if present but empty, it selects all namespaces. \n If                                PodSelector is also set, then the NetworkPolicyPeer as                                a whole selects the Pods matching PodSelector in the Namespaces                                selected by NamespaceSelector. Otherwise it selects all                                Pods in the Namespaces selected by NamespaceSelector.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                            podSelector:                              description: &quot;This is a label selector which selects Pods.                                This field follows standard label selector semantics;                                if present but empty, it selects all pods. \n If NamespaceSelector                                is also set, then the NetworkPolicyPeer as a whole selects                                the Pods matching PodSelector in the Namespaces selected                                by NamespaceSelector. Otherwise it selects the Pods matching                                PodSelector in the policy&#39;s own Namespace.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: key is the label key that the selector                                          applies to.                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                          type: object                        type: array                    type: object                  type: array                ingress:                  description: &quot;List of ingress rules to be applied to the selected pods.                    Traffic is allowed to a pod if there are no NetworkPolicies selecting                    the pod (and cluster policy otherwise allows the traffic), OR if the                    traffic source is the pod&#39;s local node, OR if the traffic matches                    at least one ingress rule across all of the NetworkPolicy objects                    whose podSelector matches the pod. If this field is empty then this                    NetworkPolicy does not allow any traffic (and serves solely to ensure                    that the pods it selects are isolated by default)&quot;                  items:                    description: &quot;NetworkPolicyIngressRule describes a particular set of                      traffic that is allowed to the pods matched by a NetworkPolicySpec&#39;s                      podSelector. The traffic must match both ports and from.&quot;                    properties:                      from:                        description: &quot;List of sources which should be able to access the                          pods selected for this rule. Items in this list are combined                          using a logical OR operation. If this field is empty or missing,                          this rule matches all sources (traffic not restricted by source).                          If this field is present and contains at least one item, this                          rule allows traffic only if the traffic matches at least one                          item in the from list.&quot;                        items:                          description: NetworkPolicyPeer describes a peer to allow traffic                            from. Only certain combinations of fields are allowed                          properties:                            ipBlock:                              description: &quot;IPBlock defines policy on a particular IPBlock.                                If this field is set then neither of the other fields                                can be.&quot;                              properties:                                cidr:                                  description: &quot;CIDR is a string representing the IP Block                                    Valid examples are &#39;192.168.1.1/24&#39;&quot;                                  type: string                                except:                                  description: &quot;Except is a slice of CIDRs that should                                    not be included within an IP Block Valid examples                                    are &#39;192.168.1.1/24&#39; Except values will be rejected                                    if they are outside the CIDR range&quot;                                  items:                                    type: string                                  type: array                              required:                              - cidr                              type: object                            namespaceSelector:                              description: &quot;Selects Namespaces using cluster-scoped labels.                                This field follows standard label selector semantics;                                if present but empty, it selects all namespaces. \n If                                PodSelector is also set, then the NetworkPolicyPeer as                                a whole selects the Pods matching PodSelector in the Namespaces                                selected by NamespaceSelector. Otherwise it selects all                                Pods in the Namespaces selected by NamespaceSelector.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                            podSelector:                              description: &quot;This is a label selector which selects Pods.                                This field follows standard label selector semantics;                                if present but empty, it selects all pods. \n If NamespaceSelector                                is also set, then the NetworkPolicyPeer as a whole selects                                the Pods matching PodSelector in the Namespaces selected                                by NamespaceSelector. Otherwise it selects the Pods matching                                PodSelector in the policy&#39;s own Namespace.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                          type: object                        type: array                      ports:                        description: &quot;List of ports which should be made accessible on                          the pods selected for this rule. Each item in this list is combined                          using a logical OR. If this field is empty or missing, this                          rule matches all ports (traffic not restricted by port). If                          this field is present and contains at least one item, then this                          rule allows traffic only if the traffic matches at least one                          port in the list.&quot;                        items:                          description: NetworkPolicyPort describes a port to allow traffic                            on                          properties:                            port:                              anyOf:                                - type: integer                                - type: string                              description: &quot;The port on the given protocol. This can either                                be a numerical or named port on a pod. If this field is                                not provided, this matches all port names and numbers.&quot;                              x-kubernetes-int-or-string: true                            protocol:                              description: &quot;The protocol (TCP, UDP, or SCTP) which traffic                                must match. If not specified, this field defaults to TCP.&quot;                              type: string                          type: object                        type: array                    type: object                  type: array                podSelector:                  description: &quot;This is a label selector which selects Pods.                    This field follows standard label selector semantics;                    if present but empty, it selects all pods. \n If NamespaceSelector                    is also set, then the NetworkPolicyPeer as a whole selects                    the Pods matching PodSelector in the Namespaces selected                    by NamespaceSelector. Otherwise it selects the Pods matching                    PodSelector in the policy&#39;s own Namespace.&quot;                  properties:                    matchExpressions:                      description: &quot;matchExpressions is a list of label selector                        requirements. The requirements are ANDed.&quot;                      items:                        description: &quot;A label selector requirement is a selector                          that contains values, a key, and an operator that                          relates the key and values.&quot;                        properties:                          key:                            description: &quot;key is the label key that the selector applies to.&quot;                            type: string                          operator:                            description: &quot;operator represents a key&#39;s relationship                              to a set of values. Valid operators are In,                              NotIn, Exists and DoesNotExist.&quot;                            type: string                          values:                            description: &quot;values is an array of string values.                              If the operator is In or NotIn, the values array                              must be non-empty. If the operator is Exists                              or DoesNotExist, the values array must be empty.                              This array is replaced during a strategic merge                              patch.&quot;                            items:                              type: string                            type: array                        required:                        - key                        - operator                        type: object                      type: array                    matchLabels:                      additionalProperties:                        type: string                        description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                          A single &#123;key,value&#125; in the matchLabels map is equivalent                          to an element of matchExpressions, whose key field                          is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                          contains only &#39;value&#39;. The requirements are ANDed.&quot;                      type: object                  type: object                policyTypes:                  description: &quot;List of rule types that the NetworkPolicy relates to. Valid                    options are &#39;Ingress&#39;, &#39;Egress&#39;, or &#39;Ingress,Egress&#39;. If this field                    is not specified, it will default based on the existence of Ingress                    or Egress rules; policies that contain an Egress section are assumed                    to affect Egress, and all policies (whether or not they contain an                    Ingress section) are assumed to affect Ingress. If you want to write                    an egress-only policy, you must explicitly specify policyTypes [ &#39;Egress&#39;                    ]. Likewise, if you want to write a policy that specifies that no                    egress is allowed, you must specify a policyTypes value that include                    &#39;Egress&#39; (since such a policy would not include an Egress section                    and would otherwise default to just [ &#39;Ingress&#39; ]). This field is                    beta-level in 1.8&quot;                  items:                    description: &quot;Policy Type string describes the NetworkPolicy type This                      type is beta-level in 1.8&quot;                    type: string                  type: array              required:              - podSelector              type: object          type: object    - name: v1beta2      served: false      storage: false      schema:        openAPIV3Schema:          description: &quot;MultiNetworkPolicy is a CRD schema to provide NetworkPolicy            mechanism for net-attach-def which is specified by the Network Plumbing            Working Group. MultiNetworkPolicy is identical to Kubernetes NetworkPolicy,            See: https://kubernetes.io/docs/concepts/services-networking/network-policies/ .&quot;          properties:            spec:              description: &#39;Specification of the desired behavior for this MultiNetworkPolicy.&#39;              properties:                egress:                  description: &quot;List of egress rules to be applied to the selected pods.                    Outgoing traffic is allowed if there are no NetworkPolicies selecting                    the pod (and cluster policy otherwise allows the traffic), OR if the                    traffic matches at least one egress rule across all of the NetworkPolicy                    objects whose podSelector matches the pod. If this field is empty                    then this NetworkPolicy limits all outgoing traffic (and serves solely                    to ensure that the pods it selects are isolated by default). This                    field is beta-level in 1.8&quot;                  items:                    description: &quot;NetworkPolicyEgressRule describes a particular set of                      traffic that is allowed out of pods matched by a NetworkPolicySpec&#39;s                      podSelector. The traffic must match both ports and to. This type                      is beta-level in 1.8&quot;                    properties:                      ports:                        description: &quot;List of destination ports for outgoing traffic. Each                          item in this list is combined using a logical OR. If this field                          is empty or missing, this rule matches all ports (traffic not                          restricted by port). If this field is present and contains at                          least one item, then this rule allows traffic only if the traffic                          matches at least one port in the list.&quot;                        items:                          description: &quot;NetworkPolicyPort describes a port to allow traffic on&quot;                          properties:                            port:                              anyOf:                                - type: integer                                - type: string                              description: &quot;The port on the given protocol. This can either                                be a numerical or named port on a pod. If this field is                                not provided, this matches all port names and numbers.&quot;                              x-kubernetes-int-or-string: true                            endPort:                              type: integer                              description: &quot;If set, indicates that the range of ports from                                port to endPort, inclusive, should be allowed by the policy.                                This field cannot be defined if the port field is not                                defined or if the port field is defined as a named (string)                                port. The endPort must be equal or greater than port.&quot;                            protocol:                              description: &quot;The protocol (TCP, UDP, or SCTP) which traffic                                must match. If not specified, this field defaults to TCP.&quot;                              type: string                          type: object                        type: array                      to:                        description: &quot;List of destinations for outgoing traffic of pods                          selected for this rule. Items in this list are combined using                          a logical OR operation. If this field is empty or missing, this                          rule matches all destinations (traffic not restricted by destination).                          If this field is present and contains at least one item, this                          rule allows traffic only if the traffic matches at least one                          item in the to list.&quot;                        items:                          description: &quot;NetworkPolicyPeer describes a peer to allow traffic                        from. Only certain combinations of fields are allowed&quot;                          properties:                            ipBlock:                              description: &quot;IPBlock defines policy on a particular IPBlock.                                If this field is set then neither of the other fields                                can be.&quot;                              properties:                                cidr:                                  description: &quot;CIDR is a string representing the IP Block                                    Valid examples are &#39;192.168.1.1/24&#39;&quot;                                  type: string                                except:                                  description: &quot;Except is a slice of CIDRs that should                                    not be included within an IP Block Valid examples                                    are &#39;192.168.1.1/24&#39; Except values will be rejected                                    if they are outside the CIDR range&quot;                                  items:                                    type: string                                  type: array                              required:                              - cidr                              type: object                            namespaceSelector:                              description: &quot;Selects Namespaces using cluster-scoped labels.                                This field follows standard label selector semantics;                                if present but empty, it selects all namespaces. \n If                                PodSelector is also set, then the NetworkPolicyPeer as                                a whole selects the Pods matching PodSelector in the Namespaces                                selected by NamespaceSelector. Otherwise it selects all                                Pods in the Namespaces selected by NamespaceSelector.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                            podSelector:                              description: &quot;This is a label selector which selects Pods.                                This field follows standard label selector semantics;                                if present but empty, it selects all pods. \n If NamespaceSelector                                is also set, then the NetworkPolicyPeer as a whole selects                                the Pods matching PodSelector in the Namespaces selected                                by NamespaceSelector. Otherwise it selects the Pods matching                                PodSelector in the policy&#39;s own Namespace.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: key is the label key that the selector                                          applies to.                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                          type: object                        type: array                    type: object                  type: array                ingress:                  description: &quot;List of ingress rules to be applied to the selected pods.                    Traffic is allowed to a pod if there are no NetworkPolicies selecting                    the pod (and cluster policy otherwise allows the traffic), OR if the                    traffic source is the pod&#39;s local node, OR if the traffic matches                    at least one ingress rule across all of the NetworkPolicy objects                    whose podSelector matches the pod. If this field is empty then this                    NetworkPolicy does not allow any traffic (and serves solely to ensure                    that the pods it selects are isolated by default)&quot;                  items:                    description: &quot;NetworkPolicyIngressRule describes a particular set of                      traffic that is allowed to the pods matched by a NetworkPolicySpec&#39;s                      podSelector. The traffic must match both ports and from.&quot;                    properties:                      from:                        description: &quot;List of sources which should be able to access the                          pods selected for this rule. Items in this list are combined                          using a logical OR operation. If this field is empty or missing,                          this rule matches all sources (traffic not restricted by source).                          If this field is present and contains at least one item, this                          rule allows traffic only if the traffic matches at least one                          item in the from list.&quot;                        items:                          description: NetworkPolicyPeer describes a peer to allow traffic                            from. Only certain combinations of fields are allowed                          properties:                            ipBlock:                              description: &quot;IPBlock defines policy on a particular IPBlock.                                If this field is set then neither of the other fields                                can be.&quot;                              properties:                                cidr:                                  description: &quot;CIDR is a string representing the IP Block                                    Valid examples are &#39;192.168.1.1/24&#39;&quot;                                  type: string                                except:                                  description: &quot;Except is a slice of CIDRs that should                                    not be included within an IP Block Valid examples                                    are &#39;192.168.1.1/24&#39; Except values will be rejected                                    if they are outside the CIDR range&quot;                                  items:                                    type: string                                  type: array                              required:                              - cidr                              type: object                            namespaceSelector:                              description: &quot;Selects Namespaces using cluster-scoped labels.                                This field follows standard label selector semantics;                                if present but empty, it selects all namespaces. \n If                                PodSelector is also set, then the NetworkPolicyPeer as                                a whole selects the Pods matching PodSelector in the Namespaces                                selected by NamespaceSelector. Otherwise it selects all                                Pods in the Namespaces selected by NamespaceSelector.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                            podSelector:                              description: &quot;This is a label selector which selects Pods.                                This field follows standard label selector semantics;                                if present but empty, it selects all pods. \n If NamespaceSelector                                is also set, then the NetworkPolicyPeer as a whole selects                                the Pods matching PodSelector in the Namespaces selected                                by NamespaceSelector. Otherwise it selects the Pods matching                                PodSelector in the policy&#39;s own Namespace.&quot;                              properties:                                matchExpressions:                                  description: &quot;matchExpressions is a list of label selector                                    requirements. The requirements are ANDed.&quot;                                  items:                                    description: &quot;A label selector requirement is a selector                                      that contains values, a key, and an operator that                                      relates the key and values.&quot;                                    properties:                                      key:                                        description: &quot;key is the label key that the selector                                          applies to.&quot;                                        type: string                                      operator:                                        description: &quot;operator represents a key&#39;s relationship                                          to a set of values. Valid operators are In,                                          NotIn, Exists and DoesNotExist.&quot;                                        type: string                                      values:                                        description: &quot;values is an array of string values.                                          If the operator is In or NotIn, the values array                                          must be non-empty. If the operator is Exists                                          or DoesNotExist, the values array must be empty.                                          This array is replaced during a strategic merge                                          patch.&quot;                                        items:                                          type: string                                        type: array                                    required:                                    - key                                    - operator                                    type: object                                  type: array                                matchLabels:                                  additionalProperties:                                    type: string                                  description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                                    A single &#123;key,value&#125; in the matchLabels map is equivalent                                    to an element of matchExpressions, whose key field                                    is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                                    contains only &#39;value&#39;. The requirements are ANDed.&quot;                                  type: object                              type: object                          type: object                        type: array                      ports:                        description: &quot;List of ports which should be made accessible on                          the pods selected for this rule. Each item in this list is combined                          using a logical OR. If this field is empty or missing, this                          rule matches all ports (traffic not restricted by port). If                          this field is present and contains at least one item, then this                          rule allows traffic only if the traffic matches at least one                          port in the list.&quot;                        items:                          description: NetworkPolicyPort describes a port to allow traffic                            on                          properties:                            port:                              anyOf:                                - type: integer                                - type: string                              description: &quot;The port on the given protocol. This can either                                be a numerical or named port on a pod. If this field is                                not provided, this matches all port names and numbers.&quot;                              x-kubernetes-int-or-string: true                            endPort:                              type: integer                              description: &quot;If set, indicates that the range of ports from                                port to endPort, inclusive, should be allowed by the policy.                                This field cannot be defined if the port field is not                                defined or if the port field is defined as a named (string)                                port. The endPort must be equal or greater than port.&quot;                            protocol:                              description: &quot;The protocol (TCP, UDP, or SCTP) which traffic                                must match. If not specified, this field defaults to TCP.&quot;                              type: string                          type: object                        type: array                    type: object                  type: array                podSelector:                  description: &quot;This is a label selector which selects Pods.                    This field follows standard label selector semantics;                    if present but empty, it selects all pods. \n If NamespaceSelector                    is also set, then the NetworkPolicyPeer as a whole selects                    the Pods matching PodSelector in the Namespaces selected                    by NamespaceSelector. Otherwise it selects the Pods matching                    PodSelector in the policy&#39;s own Namespace.&quot;                  properties:                    matchExpressions:                      description: &quot;matchExpressions is a list of label selector                        requirements. The requirements are ANDed.&quot;                      items:                        description: &quot;A label selector requirement is a selector                          that contains values, a key, and an operator that                          relates the key and values.&quot;                        properties:                          key:                            description: &quot;key is the label key that the selector applies to.&quot;                            type: string                          operator:                            description: &quot;operator represents a key&#39;s relationship                              to a set of values. Valid operators are In,                              NotIn, Exists and DoesNotExist.&quot;                            type: string                          values:                            description: &quot;values is an array of string values.                              If the operator is In or NotIn, the values array                              must be non-empty. If the operator is Exists                              or DoesNotExist, the values array must be empty.                              This array is replaced during a strategic merge                              patch.&quot;                            items:                              type: string                            type: array                        required:                        - key                        - operator                        type: object                      type: array                    matchLabels:                      additionalProperties:                        type: string                        description: &quot;matchLabels is a map of &#123;key,value&#125; pairs.                          A single &#123;key,value&#125; in the matchLabels map is equivalent                          to an element of matchExpressions, whose key field                          is &#39;key&#39;, the operator is &#39;In&#39;, and the values array                          contains only &#39;value&#39;. The requirements are ANDed.&quot;                      type: object                  type: object                policyTypes:                  description: &quot;List of rule types that the NetworkPolicy relates to. Valid                    options are &#39;Ingress&#39;, &#39;Egress&#39;, or &#39;Ingress,Egress&#39;. If this field                    is not specified, it will default based on the existence of Ingress                    or Egress rules; policies that contain an Egress section are assumed                    to affect Egress, and all policies (whether or not they contain an                    Ingress section) are assumed to affect Ingress. If you want to write                    an egress-only policy, you must explicitly specify policyTypes [ &#39;Egress&#39;                    ]. Likewise, if you want to write a policy that specifies that no                    egress is allowed, you must specify a policyTypes value that include                    &#39;Egress&#39; (since such a policy would not include an Egress section                    and would otherwise default to just [ &#39;Ingress&#39; ]). This field is                    beta-level in 1.8&quot;                  items:                    description: &quot;Policy Type string describes the NetworkPolicy type This                      type is beta-level in 1.8&quot;                    type: string                  type: array              required:              - podSelector              type: object          type: object---kind: ClusterRoleapiVersion: rbac.authorization.k8s.io/v1metadata:  name: multi-networkpolicyrules:  - apiGroups: [&quot;k8s.cni.cncf.io&quot;]    resources:      - &#39;*&#39;    verbs:      - &#39;*&#39;  - apiGroups:      - &quot;&quot;    resources:      - pods      - namespaces    verbs:      - list      - watch      - get  # Watch for changes to Kubernetes NetworkPolicies.  - apiGroups: [&quot;networking.k8s.io&quot;]    resources:      - networkpolicies    verbs:      - watch      - list  - apiGroups:      - &quot;&quot;      - events.k8s.io    resources:      - events    verbs:      - create      - patch      - update---kind: ClusterRoleBindingapiVersion: rbac.authorization.k8s.io/v1metadata:  name: multi-networkpolicyroleRef:  apiGroup: rbac.authorization.k8s.io  kind: ClusterRole  name: multi-networkpolicysubjects:- kind: ServiceAccount  name: multi-networkpolicy  namespace: kube-system---apiVersion: v1kind: ServiceAccountmetadata:  name: multi-networkpolicy  namespace: kube-system---kind: ConfigMapapiVersion: v1metadata:  name: multi-networkpolicy-custom-v4-rules  namespace: kube-system  labels:    tier: node    app: multi-networkpolicydata:  custom-v4-rules.txt: |    # accept redirect    -p icmp --icmp-type redirect -j ACCEPT    # accept fragmentation-needed (for MTU discovery)    -p icmp --icmp-type fragmentation-needed -j ACCEPT---kind: ConfigMapapiVersion: v1metadata:  name: multi-networkpolicy-custom-v6-rules  namespace: kube-system  labels:    tier: node    app: multi-networkpolicydata:  custom-v6-rules.txt: |    # accept NDP    -p icmpv6 --icmpv6-type neighbor-solicitation -j ACCEPT    -p icmpv6 --icmpv6-type neighbor-advertisement -j ACCEPT    # accept RA/RS    -p icmpv6 --icmpv6-type router-solicitation -j ACCEPT    -p icmpv6 --icmpv6-type router-advertisement -j ACCEPT    # accept redirect    -p icmpv6 --icmpv6-type redirect -j ACCEPT    # accept packet-too-big (for MTU discovery)    -p icmpv6 --icmpv6-type packet-too-big -j ACCEPT---apiVersion: apps/v1kind: DaemonSetmetadata:  name: multi-networkpolicy-ds-amd64  namespace: kube-system  labels:    tier: node    app: multi-networkpolicy    name: multi-networkpolicyspec:  selector:    matchLabels:      name: multi-networkpolicy  updateStrategy:    type: RollingUpdate  template:    metadata:      labels:        tier: node        app: multi-networkpolicy        name: multi-networkpolicy    spec:      hostNetwork: true      nodeSelector:        kubernetes.io/arch: amd64      tolerations:      - operator: Exists        effect: NoSchedule      serviceAccountName: multi-networkpolicy      containers:      - name: multi-networkpolicy        image: harbor.yusur.tech/yusur_ovn/multi-networkpolicy-iptables:latest        imagePullPolicy: Always        command: [&quot;/usr/bin/multi-networkpolicy-iptables&quot;]        args:        - &quot;--host-prefix=/host&quot;        # change this if runtime is different that crio default        - &quot;--container-runtime-endpoint=/run/containerd/containerd.sock&quot;        # uncomment this if you want to store iptables rules        - &quot;--pod-iptables=/var/lib/multi-networkpolicy/iptables&quot;        # uncomment this if you need to accept link-local address traffic        #- &quot;--allow-ipv6-src-prefix=fe80::/10&quot;        #- &quot;--allow-ipv6-dst-prefix=fe80::/10&quot;        # uncomment this if you need to add custom iptables rules defined above configmap        #- &quot;--custom-v4-ingress-rule-file=/etc/multi-networkpolicy/rules/custom-v4-rules.txt&quot;        #- &quot;--custom-v4-egress-rule-file=/etc/multi-networkpolicy/rules/custom-v4-rules.txt&quot;        #- &quot;--custom-v6-ingress-rule-file=/etc/multi-networkpolicy/rules/custom-v6-rules.txt&quot;        #- &quot;--custom-v6-egress-rule-file=/etc/multi-networkpolicy/rules/custom-v6-rules.txt&quot;        # uncomment if you want to accept ICMP/ICMPv6 traffic        #- &quot;--accept-icmp&quot;        #- &quot;--accept-icmpv6&quot;        resources:          requests:            cpu: &quot;100m&quot;            memory: &quot;80Mi&quot;          limits:            cpu: &quot;100m&quot;            memory: &quot;150Mi&quot;        securityContext:          privileged: true          capabilities:            add: [&quot;SYS_ADMIN&quot;, &quot;NET_ADMIN&quot;]        volumeMounts:        - name: host          mountPath: /host        - name: var-lib-multinetworkpolicy          mountPath: /var/lib/multi-networkpolicy        - name: multi-networkpolicy-custom-rules          mountPath: /etc/multi-networkpolicy/rules          readOnly: true      volumes:        - name: host          hostPath:            path: /        - name: var-lib-multinetworkpolicy          hostPath:            path: /var/lib/multi-networkpolicy        - name: multi-networkpolicy-custom-rules          projected:            sources:              - configMap:                  name: multi-networkpolicy-custom-v4-rules              - configMap:                  name: multi-networkpolicy-custom-v6-rules</code></pre><h1 id="配置辅助网络"><a href="#配置辅助网络" class="headerlink" title="配置辅助网络"></a>配置辅助网络</h1><p>ovn-k8s 默认网络架构图</p><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/1.png" alt="image"></p><h3 id="Routed-layer-3-topology"><a href="#Routed-layer-3-topology" class="headerlink" title="Routed - layer 3 - topology"></a>Routed - layer 3 - topology</h3><h4 id="逻辑网络拓扑"><a href="#逻辑网络拓扑" class="headerlink" title="逻辑网络拓扑"></a>逻辑网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/2.png" alt="image"></p><p>++<em><strong>注意：默认网络与第二网络并不相通</strong></em>++</p><ul><li><p>此拓扑是集群默认网络拓扑的简化 - 但没有出口。</p></li><li><p>每个节点都有一个逻辑交换机（每个节点都有不同的子网）以及一个互连所有逻辑交换机的路由器。</p></li><li><p>网络仅允许东&#x2F;西流量。</p></li></ul><h4 id="创建网络"><a href="#创建网络" class="headerlink" title="创建网络"></a>创建网络</h4><pre><code>apiVersion: k8s.cni.cncf.io/v1kind: NetworkAttachmentDefinitionmetadata:  name: l3-network  namespace: kube-systemspec:  config: |2    &#123;            &quot;cniVersion&quot;: &quot;0.3.1&quot;,            &quot;name&quot;: &quot;l3-network&quot;,            &quot;type&quot;: &quot;ovn-k8s-cni-overlay&quot;,            &quot;topology&quot;: &quot;layer3&quot;,            &quot;subnets&quot;: &quot;10.33.0.0/16/24&quot;, #subnets 属性指示跨集群和每个节点的子网。上面的示例意味着您的网络有一个 /16 子网，但每个节点都有一个 /24 子网            &quot;mtu&quot;: 1400,            &quot;netAttachDefName&quot;: &quot;kube-system/l3-network&quot;    &#125;</code></pre><p>网络配置参考:</p><p>name (string, required): 网络的名称。</p><p>type (string, required): “ovn-k8s-cni-overlay”。 必须是这个值</p><p>topology (string, required): “layer3”。</p><p>subnets (string, optional):  以逗号分隔的子网列表。当提供多个子网时，用户将从每个子网获得一个IP。</p><p>mtu (integer, optional): 显式将 MTU 设置为指定值。默认为内核选择的值。</p><p>netAttachDefName (string, required): 必须与对象的 <namespace>&#x2F;<net-attach-def name> 匹配。</net-attach-def name></namespace></p><h4 id="OVN-信息"><a href="#OVN-信息" class="headerlink" title="OVN 信息"></a>OVN 信息</h4><pre><code># ovn中会创建一个逻辑路由器和多个逻辑交换机# 查看逻辑路由器[root@master001 ~]# ovn-nbctl lr-list caed4518-4b52-40d8-b79f-2a39628856cd (GR_master001)ed509ce6-e784-4082-b6e9-355ffb7d7f76 (GR_work001)cac0d9f6-7e5a-4521-a2a4-b4aac6e87067 (GR_work002)601cfe5f-975c-43c8-9257-7235125ca147 (l3.network_ovn_cluster_router) # 第二网络创建逻辑路由器f624c445-8b54-4722-91af-ae4008bf66ec (ovn_cluster_router)[root@master001 ~]# ovn-nbctl find Logical_Router name=l3.network_ovn_cluster_router_uuid               : 601cfe5f-975c-43c8-9257-7235125ca147copp                : 7b79199c-5e38-442d-b552-1865844cf460enabled             : []external_ids        : &#123;k8s-cluster-router=yes, k8s-ovn-topo-version=&quot;5&quot;, &quot;k8s.ovn.org/network&quot;=l3-network, &quot;k8s.ovn.org/topology&quot;=layer3&#125;load_balancer       : []load_balancer_group : []name                : l3.network_ovn_cluster_routernat                 : []options             : &#123;always_learn_from_arp_request=&quot;false&quot;&#125;policies            : []ports               : [4391bd42-60f4-41a6-93b0-8cfa0b3fe964, f235ac3d-b99f-4cee-9854-758c8b51ac5f, f956c1d6-1f09-498a-a5eb-cb5a4115e905]static_routes       : []# 查看逻辑交换机，每个节点对应一个[root@master001 ~]# ovn-nbctl ls-list81b94dd9-a395-474c-9c0b-150e95bdbe38 (ext_master001)aa556a3e-1aa3-4aff-b242-b48c58b229b2 (ext_work001)4d54339b-c5ff-4479-a4f0-8e12646d9fa8 (ext_work002)d8ee50bc-ee80-4576-ac2e-79a065f800bd (join)e447923e-6d33-4acd-950f-17b57aa3d687 (l3.network_master001) #第二网络创建逻辑交换机0a8b2d9b-431b-4625-b715-044ab3bab41d (l3.network_work001)#第二网络创建逻辑交换机47270897-5c07-4115-bca9-90cb61e57d43 (l3.network_work002)#第二网络创建逻辑交换机be036c87-2c44-4168-9dea-da52eeb8b695 (master001)b8ec646d-d9c7-4e5a-bdbe-ba0815eb6dfd (work001)ebec33e6-4cd8-41fb-8e27-73cb6dd0e337 (work002)[root@master001 ~]# ovn-nbctl find Logical_Switch  name=l3.network_master001_uuid               : e447923e-6d33-4acd-950f-17b57aa3d687acls                : []copp                : []dns_records         : []external_ids        : &#123;&quot;k8s.ovn.org/network&quot;=l3-network, &quot;k8s.ovn.org/topology&quot;=layer3&#125;forwarding_groups   : []load_balancer       : []load_balancer_group : []name                : l3.network_master001other_config        : &#123;exclude_ips=&quot;10.33.0.2&quot;, subnet=&quot;10.33.0.0/24&quot;&#125;ports               : [30574080-f288-4488-a35b-488258fbd1eb]qos_rules           : []</code></pre><h4 id="使用网络"><a href="#使用网络" class="headerlink" title="使用网络"></a>使用网络</h4><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx1-l3  namespace: defaultspec:  selector:    app: nginx1-l3  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  labels:    app: nginx1-l3  annotations:    k8s.v1.cni.cncf.io/networks: kube-system/l3-network@eth1 #标识使用多网络  name: nginx1-l3  namespace: defaultspec:  containers:  - image: harbor.yusur.tech/leid/ubuntu:22.04    imagePullPolicy: IfNotPresent    name: nginx1-l3    ports:    - containerPort: 80      name: server    securityContext:      runAsUser: 0      privileged: true  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: work001# 查看ovn 信息# 查看work001 节点对应交换机信息[root@master001 ~]# ovn-nbctl find Logical_Switch  name=l3.network_work001_uuid               : 0a8b2d9b-431b-4625-b715-044ab3bab41dacls                : []copp                : []dns_records         : []external_ids        : &#123;&quot;k8s.ovn.org/network&quot;=l3-network, &quot;k8s.ovn.org/topology&quot;=layer3&#125;forwarding_groups   : []load_balancer       : []load_balancer_group : []name                : l3.network_work001other_config        : &#123;exclude_ips=&quot;10.33.2.2&quot;, subnet=&quot;10.33.2.0/24&quot;&#125;ports               : [ab1ecf25-8a92-47e0-b913-c79e33fd5e23, b675abc1-be1a-4248-9f73-b8dff7454957]qos_rules           : []# 查看pod 对应的 port 信息[root@master001 ~]# ovn-nbctl find Logical_Switch_Port |grep -A 16 b675abc1-be1a-4248-9f73-b8dff7454957_uuid               : b675abc1-be1a-4248-9f73-b8dff7454957addresses           : [&quot;0a:58:0a:21:02:03 10.33.2.3&quot;]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&quot;k8s.ovn.org/nad&quot;=&quot;kube-system/l3-network&quot;, &quot;k8s.ovn.org/network&quot;=l3-network, &quot;k8s.ovn.org/topology&quot;=layer3, namespace=default, pod=&quot;true&quot;&#125;ha_chassis_group    : []mirror_rules        : []name                : kube.system.l3.network_default_nginx1-l3options             : &#123;iface-id-ver=&quot;a7fad855-9a37-4918-8aaa-b10627cdfe91&quot;, requested-chassis=work001&#125;parent_name         : []port_security       : [&quot;0a:58:0a:21:02:03 10.33.2.3&quot;]tag                 : []tag_request         : []type                : &quot;&quot;up                  : true</code></pre><h4 id="测试网络"><a href="#测试网络" class="headerlink" title="测试网络"></a>测试网络</h4><pre><code>#查看pod1 ip信息，默认网络ip：10.124.1.7，第二网络ip：10.33.2.3root@work001:~# kubectl  get pod nginx1-l3 -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.1.7&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:01:07&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/l3-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;10.33.2.3&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:21:02:03&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]#查看pod2 ip信息，默认网络ip：10.124.2.6，第二网络ip：10.33.1.3root@work001:~# kubectl  get pod nginx2-l3 -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.2.6&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:02:06&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/l3-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;10.33.1.3&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:21:01:03&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]</code></pre><h6 id="pod-与-pod"><a href="#pod-与-pod" class="headerlink" title="pod 与 pod"></a>pod 与 pod</h6><pre><code># pod1 ping pod2，pod2 tcpdump 抓包# 查看pod1 的网络信息root@work001:~# kubectl  exec -it  nginx1-l3      -- route -n Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         10.124.1.1      0.0.0.0         UG    0      0        0 eth010.33.0.0       10.33.2.1       255.255.0.0     UG    0      0        0 eth110.33.2.0       0.0.0.0         255.255.255.0   U     0      0        0 eth110.86.0.0       10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0100.64.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth0# pod1 ping pod2:10.33.1.3root@work001:~# kubectl  exec -it nginx1-l3 -- ping -c 1 10.33.1.3PING 10.33.1.3 (10.33.1.3) 56(84) bytes of data.64 bytes from 10.33.1.3: icmp_seq=1 ttl=63 time=1.41 ms--- 10.33.1.3 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 1.405/1.405/1.405/0.000 ms# pod2 抓包root@work002:~# kubectl  exec -it nginx2-l3 -- tcpdump -enn -i eth1 icmptcpdump: verbose output suppressed, use -v[v]... for full protocol decodelistening on eth1, link-type EN10MB (Ethernet), snapshot length 262144 bytes09:03:49.189769 0a:58:0a:21:01:01 &gt; 0a:58:0a:21:01:03, ethertype IPv4 (0x0800), length 98: 10.33.2.3 &gt; 10.33.1.3: ICMP echo request, id 29942, seq 1, length 6409:03:49.189800 0a:58:0a:21:01:03 &gt; 0a:58:0a:21:01:01, ethertype IPv4 (0x0800), length 98: 10.33.1.3 &gt; 10.33.2.3: ICMP echo reply, id 29942, seq 1, length 64</code></pre><h4 id="物理网络拓扑"><a href="#物理网络拓扑" class="headerlink" title="物理网络拓扑"></a>物理网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/3.png" alt="image"></p><h3 id="Switched-layer-2-topology"><a href="#Switched-layer-2-topology" class="headerlink" title="Switched - layer 2 - topology"></a>Switched - layer 2 - topology</h3><h4 id="逻辑网络拓扑-1"><a href="#逻辑网络拓扑-1" class="headerlink" title="逻辑网络拓扑"></a>逻辑网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/4.png" alt="image"></p><p>++<em><strong>注意：默认网络与第二网络并不相通</strong></em>++</p><h4 id="创建网络-1"><a href="#创建网络-1" class="headerlink" title="创建网络"></a>创建网络</h4><pre><code>apiVersion: k8s.cni.cncf.io/v1kind: NetworkAttachmentDefinitionmetadata:  name: l2-network  namespace: kube-systemspec:  config: |2    &#123;            &quot;cniVersion&quot;: &quot;0.3.1&quot;,            &quot;name&quot;: &quot;l2-network&quot;,            &quot;type&quot;: &quot;ovn-k8s-cni-overlay&quot;,            &quot;topology&quot;:&quot;layer2&quot;,            &quot;subnets&quot;: &quot;10.22.0.0/16&quot;,            &quot;mtu&quot;: 1400,            &quot;netAttachDefName&quot;: &quot;kube-system/l2-network&quot;,            &quot;excludeSubnets&quot;: &quot;10.22.200.0/24&quot;    &#125;</code></pre><p>网络配置参考:</p><p>name (string, required): 网络的名称。</p><p>type (string, required): “ovn-k8s-cni-overlay”。 必须是这个值</p><p>topology (string, required): “layer2”。</p><p>subnets (string, optional):  以逗号分隔的子网列表。当提供多个子网时，用户将从每个子网获得一个IP。</p><p>mtu (integer, optional): 显式将 MTU 设置为指定值。默认为内核选择的值。</p><p>netAttachDefName (string, required): 必须与对象的 <namespace>&#x2F;<net-attach-def name> 匹配。</net-attach-def name></namespace></p><p>excludeSubnets (string, optional): 以逗号分隔的 CIDR&#x2F;IP 列表。这些 IP 将从可分配的 IP 池中删除，并且永远不会移交给 Pod。</p><p><strong>注意：</strong></p><ul><li><p>当省略subnets属性时，实现网络的逻辑交换机将仅提供第2层通信，用户必须为Pod配置IP。端口安全只能防止 MAC 欺骗。</p></li><li><p>switched - layer2 - 辅助网络仅允许东&#x2F;西流量。</p></li><li><p>当对多个区域启用互连功能时，不支持此拓扑。</p></li></ul><h4 id="OVN-信息-1"><a href="#OVN-信息-1" class="headerlink" title="OVN 信息"></a>OVN 信息</h4><pre><code># 新建一个逻辑交换机[root@master001 ~]# ovn-nbctl  ls-list 81b94dd9-a395-474c-9c0b-150e95bdbe38 (ext_master001)aa556a3e-1aa3-4aff-b242-b48c58b229b2 (ext_work001)4d54339b-c5ff-4479-a4f0-8e12646d9fa8 (ext_work002)d8ee50bc-ee80-4576-ac2e-79a065f800bd (join)43f53a4a-2952-4ad1-bd84-ece4ef70dc38 (l2.network_ovn_layer2_switch) # 第二网络新建逻辑交换机be036c87-2c44-4168-9dea-da52eeb8b695 (master001)b8ec646d-d9c7-4e5a-bdbe-ba0815eb6dfd (work001)ebec33e6-4cd8-41fb-8e27-73cb6dd0e337 (work002)# 查看交换机信息[root@master001 ~]# ovn-nbctl  find Logical_Switch name=l2.network_ovn_layer2_switch_uuid               : 43f53a4a-2952-4ad1-bd84-ece4ef70dc38acls                : []copp                : []dns_records         : []external_ids        : &#123;k8s-ovn-topo-version=&quot;5&quot;, &quot;k8s.ovn.org/network&quot;=l2-network, &quot;k8s.ovn.org/topology&quot;=layer2&#125;forwarding_groups   : []load_balancer       : []load_balancer_group : []name                : l2.network_ovn_layer2_switchother_config        : &#123;subnet=&quot;10.22.0.0/16&quot;&#125;ports               : [43484d88-1b3e-4634-8cf6-b267d58642f0, d288ffdc-bc30-485b-a8fd-bb062d5e76f3]qos_rules           : []</code></pre><h4 id="使用网络-1"><a href="#使用网络-1" class="headerlink" title="使用网络"></a>使用网络</h4><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx1-l2  namespace: defaultspec:  selector:    app: nginx1-l2  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  labels:    app: nginx1-l2  annotations:    k8s.v1.cni.cncf.io/networks: kube-system/l2-network@eth1 #指定第二网络  name: nginx1-l2  namespace: defaultspec:  containers:  - image: harbor.yusur.tech/leid/ubuntu:22.04    imagePullPolicy: IfNotPresent    name: nginx1-l2    ports:    - containerPort: 80      name: server    securityContext:      runAsUser: 0      privileged: true  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: work001# 查看逻辑交换机 port信息# pod1 的port 信息[root@master001 ~]# ovn-nbctl find Logical_Switch_Port | grep -A 16 43484d88-1b3e-4634-8cf6-b267d58642f0 # pod1 port信息_uuid               : 43484d88-1b3e-4634-8cf6-b267d58642f0addresses           : [&quot;0a:58:0a:16:00:01 10.22.0.1&quot;]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&quot;k8s.ovn.org/nad&quot;=&quot;kube-system/l2-network&quot;, &quot;k8s.ovn.org/network&quot;=l2-network, &quot;k8s.ovn.org/topology&quot;=layer2, namespace=default, pod=&quot;true&quot;&#125;ha_chassis_group    : []mirror_rules        : []name                : kube.system.l2.network_default_nginx1-l2options             : &#123;iface-id-ver=&quot;f4bb6a91-019b-4612-b6aa-88fc663dd515&quot;, requested-chassis=work001&#125;parent_name         : []port_security       : [&quot;0a:58:0a:16:00:01 10.22.0.1&quot;]tag                 : []tag_request         : []type                : &quot;&quot;up                  : true# pod2 的port 信息[root@master001 ~]# ovn-nbctl find Logical_Switch_Port | grep -A 16 d288ffdc-bc30-485b-a8fd-bb062d5e76f3_uuid               : d288ffdc-bc30-485b-a8fd-bb062d5e76f3addresses           : [&quot;0a:58:0a:16:00:02 10.22.0.2&quot;]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&quot;k8s.ovn.org/nad&quot;=&quot;kube-system/l2-network&quot;, &quot;k8s.ovn.org/network&quot;=l2-network, &quot;k8s.ovn.org/topology&quot;=layer2, namespace=default, pod=&quot;true&quot;&#125;ha_chassis_group    : []mirror_rules        : []name                : kube.system.l2.network_default_nginx2-l2options             : &#123;iface-id-ver=&quot;56ffc5ab-b5eb-456e-b5cc-b77252c29ae3&quot;, requested-chassis=work002&#125;parent_name         : []port_security       : [&quot;0a:58:0a:16:00:02 10.22.0.2&quot;]tag                 : []tag_request         : []type                : &quot;&quot;up                  : true</code></pre><h4 id="测试网络-1"><a href="#测试网络-1" class="headerlink" title="测试网络"></a>测试网络</h4><pre><code>#查看pod1 ip信息，默认网络ip：10.124.1.8，第二网络ip：10.22.0.1root@work001:~# kubectl  get pod nginx1-l2 -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.1.8&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:01:08&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/l2-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;10.22.0.1&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:16:00:01&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]#查看pod2 ip信息，默认网络ip：10.124.2.7，第二网络ip：10.22.0.2root@work001:~# kubectl  get pod nginx2-l2 -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.2.7&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:02:07&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/l2-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;10.22.0.2&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:16:00:02&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]</code></pre><h6 id="pod-与-pod-1"><a href="#pod-与-pod-1" class="headerlink" title="pod 与 pod"></a>pod 与 pod</h6><pre><code># pod1 ping pod2，pod2 tcpdump 抓包# 查看pod1 的网络信息root@work001:~# kubectl  exec -it  nginx1-l2 -- route -n Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         10.124.1.1      0.0.0.0         UG    0      0        0 eth010.22.0.0       0.0.0.0         255.255.0.0     U     0      0        0 eth110.86.0.0       10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0100.64.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth0# pod1 ping pod2:10.22.0.2root@work001:~# kubectl  exec -it  nginx1-l2 -- ping -c1 10.22.0.2PING 10.22.0.2 (10.22.0.2) 56(84) bytes of data.64 bytes from 10.22.0.2: icmp_seq=1 ttl=64 time=1.02 ms--- 10.22.0.2 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 1.024/1.024/1.024/0.000 ms# pod2 抓包root@work002:~# kubectl  exec -it nginx2-l3 -- tcpdump -enn -i eth1 icmptcpdump: verbose output suppressed, use -v[v]... for full protocol decodelistening on eth1, link-type EN10MB (Ethernet), snapshot length 262144 bytes10:02:05.653790 0a:58:0a:16:00:01 &gt; 0a:58:0a:16:00:02, ethertype IPv4 (0x0800), length 98: 10.22.0.1 &gt; 10.22.0.2: ICMP echo request, id 7475, seq 1, length 6410:02:05.653967 0a:58:0a:16:00:02 &gt; 0a:58:0a:16:00:01, ethertype IPv4 (0x0800), length 98: 10.22.0.2 &gt; 10.22.0.1: ICMP echo reply, id 7475, seq 1, length 64</code></pre><h4 id="物理网络拓扑-1"><a href="#物理网络拓扑-1" class="headerlink" title="物理网络拓扑"></a>物理网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/5.png" alt="image"></p><h3 id="Switched-localnet-topology"><a href="#Switched-localnet-topology" class="headerlink" title="Switched - localnet - topology"></a>Switched - localnet - topology</h3><h4 id="逻辑网络拓扑-2"><a href="#逻辑网络拓扑-2" class="headerlink" title="逻辑网络拓扑"></a>逻辑网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/6.png" alt="image"></p><p><strong>注意：默认网络与第二网络并不相通</strong></p><h4 id="创建网络-2"><a href="#创建网络-2" class="headerlink" title="创建网络"></a>创建网络</h4><pre><code>apiVersion: k8s.cni.cncf.io/v1kind: NetworkAttachmentDefinitionmetadata:  name: localnet-network  namespace: kube-systemspec:  config: |2    &#123;            &quot;cniVersion&quot;: &quot;0.3.1&quot;,            &quot;name&quot;: &quot;localnet-network&quot;,            &quot;type&quot;: &quot;ovn-k8s-cni-overlay&quot;,            &quot;topology&quot;:&quot;localnet&quot;,            &quot;subnets&quot;: &quot;192.168.100.0/24&quot;, #设置与物理网络同网段            &quot;mtu&quot;: 1500,            &quot;netAttachDefName&quot;: &quot;kube-system/localnet-network&quot;,            &quot;excludeSubnets&quot;: &quot;192.168.100.1/32,192.168.100.10/32,192.168.100.101/32,192.168.100.102/32&quot; #排除物理网段上已经使用的ip    &#125;</code></pre><p><strong>注意：</strong><em>为了连接到物理网络，需要在 node 针对该本地网络正确配置 ovn-bridge-mappings。</em></p><p>网络配置参考:</p><p>name (string, required): 网络的名称。</p><p>type (string, required): “ovn-k8s-cni-overlay”。 必须是这个值</p><p>topology (string, required): “localnet”。</p><p>subnets (string, optional):  以逗号分隔的子网列表。当提供多个子网时，用户将从每个子网获得一个IP。</p><p>mtu (integer, optional): 显式将 MTU 设置为指定值。默认为内核选择的值。</p><p>netAttachDefName (string, required): 必须与对象的 <namespace>&#x2F;<net-attach-def name> 匹配。</net-attach-def name></namespace></p><p>excludeSubnets (string, optional): 以逗号分隔的 CIDR&#x2F;IP 列表。这些 IP 将从可分配的 IP 池中删除，并且永远不会移交给 Pod。</p><p>vlanID (integer, optional):分配 VLAN 标记。默认为无。</p><p><strong>注意：</strong></p><ul><li><p>当省略subnets属性时，实现网络的逻辑交换机将仅提供第2层通信，用户必须为Pod配置IP。端口安全只能防止 MAC 欺骗。</p></li><li><p>当对多个区域启用互连功能时，不支持此拓扑。</p></li></ul><h4 id="OVN-信息-2"><a href="#OVN-信息-2" class="headerlink" title="OVN 信息"></a>OVN 信息</h4><p>逻辑交换机localnet.network_ovn_localnet_switch</p><pre><code>[root@master001 ~]# ovn-nbctl ls-list 81b94dd9-a395-474c-9c0b-150e95bdbe38 (ext_master001)aa556a3e-1aa3-4aff-b242-b48c58b229b2 (ext_work001)4d54339b-c5ff-4479-a4f0-8e12646d9fa8 (ext_work002)d8ee50bc-ee80-4576-ac2e-79a065f800bd (join)54c4887d-8c53-480f-a2bd-917357211726 (localnet.network_ovn_localnet_switch) #新增逻辑交换机be036c87-2c44-4168-9dea-da52eeb8b695 (master001)b8ec646d-d9c7-4e5a-bdbe-ba0815eb6dfd (work001)ebec33e6-4cd8-41fb-8e27-73cb6dd0e337 (work002)# 查看ls信息[root@master001 ~]# ovn-nbctl find Logical_Switch name=localnet.network_ovn_localnet_switch_uuid               : 54c4887d-8c53-480f-a2bd-917357211726acls                : []copp                : []dns_records         : []external_ids        : &#123;k8s-ovn-topo-version=&quot;5&quot;, &quot;k8s.ovn.org/network&quot;=localnet-network, &quot;k8s.ovn.org/topology&quot;=localnet&#125;forwarding_groups   : []load_balancer       : []load_balancer_group : []name                : localnet.network_ovn_localnet_switchother_config        : &#123;subnet=&quot;192.168.100.0/24&quot;&#125;ports               : [c1b80942-bae4-433d-a228-7b0638fe6150]qos_rules           : []#查看lsp信息[root@master001 ~]# ovn-nbctl find Logical_Switch_Port | grep -A 16 c1b80942-bae4-433d-a228-7b0638fe6150_uuid               : c1b80942-bae4-433d-a228-7b0638fe6150addresses           : [unknown]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&#125;ha_chassis_group    : []mirror_rules        : []name                : localnet.network_ovn_localnet_portoptions             : &#123;network_name=localnet.network_br-localnet&#125;parent_name         : []port_security       : []tag                 : []tag_request         : []type                : localnetup                  : false</code></pre><h4 id="配置外网"><a href="#配置外网" class="headerlink" title="配置外网"></a>配置外网</h4><p>设置与物理网络连接需要在每个 node 节点上设置ovn-bridge-mappings 逻辑和物理交换机映射关系</p><p>介绍：ovn-bridge-mappings参数是Open Virtual Network（OVN）中的一个配置选项，它用于定义逻辑交换机与物理交换机之间的映射关系。</p><p>在OVN中，逻辑交换机（Logical Switch）是虚拟网络中的一个组件，它负责虚拟机之间的通信。而物理交换机（Physical Switch）是实际的网络设备，负责物理网络的连接。</p><p>ovn-bridge-mappings参数的作用是将逻辑交换机与物理交换机之间的端口进行映射。它定义了逻辑交换机和物理交换机之间的对应关系，使得虚拟机可以通过逻辑交换机与物理交换机进行通信。</p><p>在每个节点上执行如下操作：</p><pre><code>ovs-vsctl set open_vswitch .  external_ids:ovn-bridge-mappings=&quot;physnet:brens3f2,localnet.network_br-localnet:br-out&quot;# 添加brovs-vsctl add-br br-out # 添加port，选用ens3f1物理网络通信ovs-vsctl add-port br-out ens3f1# 配置br-out ip信息ifconfig ens3f1 0.0.0.0ifconfig br-out 192.168.100.101/24 up# 查看配置结果root@work001:~# ovs-vsctl  show 6345984f-07df-4b81-924c-7c4d55e1f5ef    Bridge brens3f2 #默认网络的配置        fail_mode: standalone        Port brens3f2            Interface brens3f2                type: internal        Port patch-brens3f2_work001-to-br-int            Interface patch-brens3f2_work001-to-br-int                type: patch                options: &#123;peer=patch-br-int-to-brens3f2_work001&#125;        Port ens3f2            Interface ens3f2    Bridge br-out #第二网络配置        Port ens3f1            Interface ens3f1        Port br-out            Interface br-out                type: internal        Port patch-localnet.network_ovn_localnet_port-to-br-int            Interface patch-localnet.network_ovn_localnet_port-to-br-int                type: patch                options: &#123;peer=patch-br-int-to-localnet.network_ovn_localnet_port&#125;    Bridge br-int        fail_mode: secure        datapath_type: system        Port br-int            Interface br-int                type: internal        Port ovn-5bd00c-0            Interface ovn-5bd00c-0                type: geneve                options: &#123;csum=&quot;true&quot;, key=flow, remote_ip=&quot;192.168.122.102&quot;&#125;        Port patch-br-int-to-brens3f2_work001            Interface patch-br-int-to-brens3f2_work001                type: patch                options: &#123;peer=patch-brens3f2_work001-to-br-int&#125;        Port ovn-k8s-mp0            Interface ovn-k8s-mp0                type: internal        Port patch-br-int-to-localnet.network_ovn_localnet_port            Interface patch-br-int-to-localnet.network_ovn_localnet_port                type: patch                options: &#123;peer=patch-localnet.network_ovn_localnet_port-to-br-int&#125;        Port ovn-6bad89-0            Interface ovn-6bad89-0                type: geneve                options: &#123;csum=&quot;true&quot;, key=flow, remote_ip=&quot;192.168.122.10&quot;&#125;    ovs_version: &quot;2.17.5&quot;</code></pre><h4 id="使用网络-2"><a href="#使用网络-2" class="headerlink" title="使用网络"></a>使用网络</h4><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx1-lo  namespace: defaultspec:  selector:    app: nginx1-lo  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  labels:    app: nginx1-lo  annotations:    k8s.v1.cni.cncf.io/networks: kube-system/localnet-network@eth1 #标注使用localnet网络  name: nginx1-lo  namespace: defaultspec:  containers:  - image: harbor.yusur.tech/leid/ubuntu:22.04    imagePullPolicy: IfNotPresent    name: nginx1-lo    ports:    - containerPort: 80      name: server    securityContext:      runAsUser: 0      privileged: true  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: work001# 查看ovn 逻辑交换机端口lsp信息[root@master001 ~]# ovn-nbctl find Logical_Switch_Port | grep -A 16 3dacea72-9ad8-4c5a-8912-ffe30d369f43_uuid               : 3dacea72-9ad8-4c5a-8912-ffe30d369f43addresses           : [&quot;0a:58:c0:a8:64:04 192.168.100.4&quot;]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&quot;k8s.ovn.org/nad&quot;=&quot;kube-system/localnet-network&quot;, &quot;k8s.ovn.org/network&quot;=localnet-network, &quot;k8s.ovn.org/topology&quot;=localnet, namespace=default, pod=&quot;true&quot;&#125;ha_chassis_group    : []mirror_rules        : []name                : kube.system.localnet.network_default_nginx1-looptions             : &#123;iface-id-ver=&quot;1c22a591-3c56-4663-b9b2-983effab96b1&quot;, requested-chassis=work001&#125;parent_name         : []port_security       : [&quot;0a:58:c0:a8:64:04 192.168.100.4&quot;]tag                 : []tag_request         : []type                : &quot;&quot;up                  : true[root@master001 ~]# ovn-nbctl find Logical_Switch_Port | grep -A 16 f47cf104-a178-4a2c-a6af-a8d2845ef336_uuid               : f47cf104-a178-4a2c-a6af-a8d2845ef336addresses           : [&quot;0a:58:c0:a8:64:05 192.168.100.5&quot;]dhcpv4_options      : []dhcpv6_options      : []dynamic_addresses   : []enabled             : []external_ids        : &#123;&quot;k8s.ovn.org/nad&quot;=&quot;kube-system/localnet-network&quot;, &quot;k8s.ovn.org/network&quot;=localnet-network, &quot;k8s.ovn.org/topology&quot;=localnet, namespace=default, pod=&quot;true&quot;&#125;ha_chassis_group    : []mirror_rules        : []name                : kube.system.localnet.network_default_nginx2-looptions             : &#123;iface-id-ver=&quot;daecc092-6d3e-4b22-a5aa-59eb6b430029&quot;, requested-chassis=work002&#125;parent_name         : []port_security       : [&quot;0a:58:c0:a8:64:05 192.168.100.5&quot;]tag                 : []tag_request         : []type                : &quot;&quot;up                  : true</code></pre><h4 id="测试网络-2"><a href="#测试网络-2" class="headerlink" title="测试网络"></a>测试网络</h4><pre><code>#查看pod1 ip信息，默认网络ip：10.124.1.6，第二网络ip：192.168.100.4root@master001:~/multi-homing# kubectl  get pod nginx1-lo -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.1.6&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:01:06&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/localnet-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;192.168.100.4&quot;    ],    &quot;mac&quot;: &quot;0a:58:c0:a8:64:04&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]#查看pod2 ip信息，默认网络ip：10.124.2.5，第二网络ip：192.168.100.5root@master001:~/multi-homing# kubectl  get pod nginx2-lo -o=jsonpath=&#39;&#123;.metadata.annotations.k8s\.v1\.cni\.cncf\.io/network-status&#125;&#39;[&#123;    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;interface&quot;: &quot;eth0&quot;,    &quot;ips&quot;: [        &quot;10.124.2.5&quot;    ],    &quot;mac&quot;: &quot;0a:58:0a:7c:02:05&quot;,    &quot;default&quot;: true,    &quot;dns&quot;: &#123;&#125;&#125;,&#123;    &quot;name&quot;: &quot;kube-system/localnet-network&quot;,    &quot;interface&quot;: &quot;eth1&quot;,    &quot;ips&quot;: [        &quot;192.168.100.5&quot;    ],    &quot;mac&quot;: &quot;0a:58:c0:a8:64:05&quot;,    &quot;dns&quot;: &#123;&#125;&#125;]</code></pre><h6 id="pod-与-pod-2"><a href="#pod-与-pod-2" class="headerlink" title="pod 与 pod"></a>pod 与 pod</h6><pre><code># pod1 ping pod2，pod2 tcpdump 抓包# pod1 网络信息root@work001:~# kubectl  exec -it nginx1-lo -- route -n Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         10.124.1.1      0.0.0.0         UG    0      0        0 eth010.86.0.0       10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0100.64.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth0192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth1root@work001:~# kubectl  exec -it nginx1-lo -- ifconfigeth0: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1400        inet 10.124.1.6  netmask 255.255.255.0  broadcast 10.124.1.255        inet6 fe80::858:aff:fe7c:106  prefixlen 64  scopeid 0x20&lt;link&gt;        ether 0a:58:0a:7c:01:06  txqueuelen 0  (Ethernet)        RX packets 6  bytes 516 (516.0 B)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 14  bytes 1076 (1.0 KB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0eth1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500        inet 192.168.100.4  netmask 255.255.255.0  broadcast 192.168.100.255        inet6 fe80::858:c0ff:fea8:6404  prefixlen 64  scopeid 0x20&lt;link&gt;        ether 0a:58:c0:a8:64:04  txqueuelen 0  (Ethernet)        RX packets 12  bytes 796 (796.0 B)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 14  bytes 1076 (1.0 KB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536        inet 127.0.0.1  netmask 255.0.0.0        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;        loop  txqueuelen 1000  (Local Loopback)        RX packets 0  bytes 0 (0.0 B)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 0  bytes 0 (0.0 B)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0# pod1 ping pod2:192.168.100.5root@work001:~# kubectl  exec -it nginx1-lo -- ping -c1 192.168.100.5PING 192.168.100.5 (192.168.100.5) 56(84) bytes of data.64 bytes from 192.168.100.5: icmp_seq=1 ttl=64 time=0.883 ms--- 192.168.100.5 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 0.883/0.883/0.883/0.000 ms# pod2 抓包root@work002:~# kubectl  exec -it nginx2-lo -- tcpdump -enn -i eth1 icmp02:29:36.582503 0a:58:c0:a8:64:04 &gt; 0a:58:c0:a8:64:05, ethertype IPv4 (0x0800), length 98: 192.168.100.4 &gt; 192.168.100.5: ICMP echo request, id 25198, seq 1, length 6402:29:36.582541 0a:58:c0:a8:64:05 &gt; 0a:58:c0:a8:64:04, ethertype IPv4 (0x0800), length 98: 192.168.100.5 &gt; 192.168.100.4: ICMP echo reply, id 25198, seq 1, length 64</code></pre><h6 id="pod-与-node"><a href="#pod-与-node" class="headerlink" title="pod 与 node"></a>pod 与 node</h6><pre><code># ping node2： work002 节点# 查看work002 节点ip信息root@work002:~# ip addr  | grep &#39;ens3\|br-out&#39;2: ens3f0: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel state UP group default qlen 1000    inet 192.168.122.102/24 brd 192.168.122.255 scope global ens3f03: ens3f1: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel master ovs-system state UP group default qlen 10004: ens3f2: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel master ovs-system state UP group default qlen 1000    inet 192.168.200.102/24 brd 192.168.200.255 scope global ens3f29: brens3f2: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000    inet 192.168.200.102/24 brd 192.168.200.255 scope global brens3f2    inet 169.254.169.2/29 brd 169.254.169.7 scope global brens3f237: br-out: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000    inet 192.168.100.102/24 brd 192.168.100.255 scope global br-out# ping 192.168.100.102root@work001:~# kubectl  exec -it nginx1-lo -- ping -c1 192.168.100.102PING 192.168.100.102 (192.168.100.102) 56(84) bytes of data.64 bytes from 192.168.100.102: icmp_seq=1 ttl=64 time=1.11 ms--- 192.168.100.102 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 1.106/1.106/1.106/0.000 ms# ping 192.168.200.102root@work001:~# kubectl  exec -it nginx1-lo -- ping -c1 192.168.200.102PING 192.168.200.102 (192.168.200.102) 56(84) bytes of data.64 bytes from 192.168.200.102: icmp_seq=1 ttl=63 time=1.66 ms--- 192.168.200.102 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 1.660/1.660/1.660/0.000 ms# ping 192.168.122.102root@work001:~# kubectl  exec -it nginx1-lo -- ping -c1 192.168.122.102PING 192.168.122.102 (192.168.122.102) 56(84) bytes of data.64 bytes from 192.168.122.102: icmp_seq=1 ttl=63 time=0.601 ms--- 192.168.122.102 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 0.601/0.601/0.601/0.000 ms</code></pre><h6 id="pod-与-web"><a href="#pod-与-web" class="headerlink" title="pod 与 web"></a>pod 与 web</h6><pre><code># pod1 添加路由信息 114.114.114.114root@work001:~# kubectl  exec -it nginx1-lo -- route add -host 114.114.114.114/32 gw 192.168.100.1 dev eth1 root@work001:~# kubectl  exec -it nginx1-lo -- route -n Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         10.124.1.1      0.0.0.0         UG    0      0        0 eth010.86.0.0       10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0100.64.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth0114.114.114.114 192.168.100.1   255.255.255.255 UGH   0      0        0 eth1192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth1# ping 114.114.114.114 , 第一次ping，存在丢包现象。以后正常root@work001:~# kubectl  exec -it nginx1-lo -- ping -c1 114.114.114.114 PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data.64 bytes from 114.114.114.114: icmp_seq=1 ttl=94 time=15.1 ms--- 114.114.114.114 ping statistics ---1 packets transmitted, 1 received, 0% packet loss, time 0msrtt min/avg/max/mdev = 15.081/15.081/15.081/0.000 ms</code></pre><h4 id="物理网络拓扑-2"><a href="#物理网络拓扑-2" class="headerlink" title="物理网络拓扑"></a>物理网络拓扑</h4><p><img src="/2023/07/13/ovn-k8s%E7%9A%84multi-homing%E5%8A%9F%E8%83%BD%E4%BB%8B%E7%BB%8D/7.png" alt="image"></p><h1 id="参考文献"><a href="#参考文献" class="headerlink" title="参考文献"></a>参考文献</h1><p>ovn localnet 介绍：<a href="https://l8liliang.github.io/2021/06/11/ovn-ls.html#bridged-logical-switch-vs-overlay-logical-switch">https://l8liliang.github.io/2021/06/11/ovn-ls.html#bridged-logical-switch-vs-overlay-logical-switch</a></p><p>ovn localnet 配置：<a href="https://www.jianshu.com/p/204db500cdaa">https://www.jianshu.com/p/204db500cdaa</a></p>]]></content>
    
    
    <summary type="html">&lt;h1 id=&quot;ovn-k8s的multi-homing功能介绍&quot;&gt;&lt;a href=&quot;#ovn-k8s的multi-homing功能介绍&quot; class=&quot;headerlink&quot; title=&quot;ovn-k8s的multi-homing功能介绍&quot;&gt;&lt;/a&gt;ovn-k8s的multi-homing功能介绍&lt;/h1&gt;&lt;h1 id=&quot;multi-homing功能简介&quot;&gt;&lt;a href=&quot;#multi-homing功能简介&quot; class=&quot;headerlink&quot; title=&quot;multi-homing功能简介&quot;&gt;&lt;/a&gt;multi-homing功能简介&lt;/h1&gt;&lt;p&gt;具有多个网络接口的 K8s Pod被称为 multi-homed。  &lt;a href=&quot;https://github.com/k8snetworkplumbingwg/multi-net-spec&quot;&gt;Network Plumbing Working Group&lt;/a&gt; 提出了一个标准，描述如何指定附加网络接口的配置。&lt;/p&gt;
&lt;p&gt;有几个插件（Multus、Genie）实现了此标准。&lt;/p&gt;
&lt;p&gt;在特定 Kubernetes 节点上调度 pod 后，kubelet 将调用委托插件来准备 pod 的联网。然后，此元插件将调用负责设置 pod 的默认集群网络的 CNI，然后迭代 pod 上的其他附件列表，调用相应的委托 CNI 实现将 pod 附加到该特定网络的逻辑。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>MetalLB服务和BGP路由器测试</title>
    <link href="https://www.flftuu.com/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/"/>
    <id>https://www.flftuu.com/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/</id>
    <published>2023-06-08T06:08:35.000Z</published>
    <updated>2023-11-07T09:47:33.486Z</updated>
    
    <content type="html"><![CDATA[<h1 id="LB服务和BGP路由器测试"><a href="#LB服务和BGP路由器测试" class="headerlink" title="LB服务和BGP路由器测试"></a>LB服务和BGP路由器测试</h1><h1 id="安装-k8s-lb-控制器"><a href="#安装-k8s-lb-控制器" class="headerlink" title="安装 k8s lb 控制器"></a>安装 k8s lb 控制器</h1><p><a href="https://flftuu.com/2023/06/08/k8s-lb%E6%9C%8D%E5%8A%A1metallb-bgp%E6%A8%A1%E5%BC%8F-%E4%BB%8B%E7%BB%8D/#more">《k8s lb服务metallb(bgp模式)介绍》</a></p><h1 id="配置-Linux-软路由器"><a href="#配置-Linux-软路由器" class="headerlink" title="配置 Linux 软路由器"></a>配置 Linux 软路由器</h1><span id="more"></span><p>网络架构图：</p><p><img src="/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/1.png" alt="image"></p><h3 id="配置路由-bgp-功能"><a href="#配置路由-bgp-功能" class="headerlink" title="配置路由 bgp 功能"></a>配置路由 bgp 功能</h3><p>BGP 是一种外部网关协议 （EGP），用于在不同自治系统 （AS） 中的路由器之间交换路由信息。BGP 路由信息包括到每个目标的完整路由。BGP 使用路由信息来维护网络可访问性信息数据库，该数据库与其他 BGP 系统交换。BGP 使用网络可访问性信息来构建 AS 连接图，使 BGP 能够在 AS 级别移除路由环路并实施策略决策。</p><p>bgp as 网络架构图 例子：</p><p><img src="/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/2.png" alt="image"></p><h5 id="方法-1：gobgpd"><a href="#方法-1：gobgpd" class="headerlink" title="方法 1：gobgpd"></a>方法 1：gobgpd</h5><p>利用 gobgpd 搭建，GoBGP 是一种开源边界网关协议 (BGP) 实现，从头开始为现代环境设计，并以现代编程语言 Go 编程语言实现。</p><p>一些开源软件工具包，例如 frr&#x2F;zerba 也能实现，简单介绍下另一个开源路由软件：gobgp，基于go开发的一款工具，性能自然是杠杠的了。此外，该工具仅支持BGP，并不像zerba那样，支持ospf，rip，bgp等其他路由协议。</p><p>参考文档：<a href="https://github.com/osrg/gobgp/blob/master/docs/sources/zebra.md">https://github.com/osrg/gobgp/blob/master/docs/sources/zebra.md</a></p><p><strong>1， 配置 bgp server</strong></p><pre><code>mkdir gobgpcat &lt;&lt;EOF &gt;gobgp/gobgp.conf[global.config]  as = 65001  port = 179  router-id = &quot;192.168.122.1&quot;[[peer-groups]]  [peer-groups.config]    peer-group-name = &quot;example&quot;    peer-as = 64512  [[peer-groups.afi-safis]]    [peer-groups.afi-safis.config]      afi-safi-name = &quot;ipv4-unicast&quot;  [[peer-groups.afi-safis]]    [peer-groups.afi-safis.config]      afi-safi-name = &quot;ipv4-flowspec&quot;  [peer-groups.transport]    [peer-groups.transport.config]      remote-port = 7946[[dynamic-neighbors]]  [dynamic-neighbors.config]    prefix = &quot;192.168.122.0/24&quot;    peer-group = &quot;example&quot;[zebra.config]  enabled = true  url = &quot;unix:/var/run/frr/zserv.api&quot;  redistribute-route-type-list = [&quot;connect&quot;]  version = 6EOF</code></pre><p><strong>2，启动 bgp server</strong></p><pre><code>docker run --privileged -it -d --network=host --rm --name gobgp -v $PWD/gobgp:/etc/gobgp:rw flftuu/frr:v8.1.0# 启动gobgpd 服务docker exec -it gobgp gobgpd -f /etc/gobgp/gobgp.conf  -l debug --sdnotify</code></pre><p><strong>3，查看 bgp 信息</strong></p><pre><code># 查看配置信息[root@yusur-55 ~]# docker exec -it gobgp gobgp  globalAS:        65001Router-ID: 192.168.122.1Listening Port: 179, Addresses: 0.0.0.0, ::# 查看所有neighbor信息[root@yusur-55 ~]# docker exec -it gobgp gobgp  neighbor Peer               AS  Up/Down State       |#Received  Accepted192.168.122.102 64512 00:01:47 Establ      |        2         2# 查看neighbor 是否宣告了路由信息[root@yusur-55 ~]# docker exec -it gobgp gobgp  neighbor  192.168.122.102 adj-in   ID  Network              Next Hop             AS_PATH              Age        Attrs   0   172.19.0.0/32        192.168.122.102      64512                00:02:45   [&#123;Origin: i&#125;]   0   172.19.0.100/32      192.168.122.102      64512                00:02:45   [&#123;Origin: i&#125;]# 查看是否有bgp路由信息[root@yusur-55 ~]# docker exec -it gobgp gobgp global rib   Network              Next Hop             AS_PATH              Age        Attrs*&gt; 10.2.20.0/23         0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 10.244.0.0/24        0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 10.244.0.0/32        0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 172.19.0.0/32        192.168.122.102      64512                00:04:30   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 172.19.0.100/32      192.168.122.102      64512                00:04:30   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 192.168.100.0/24     0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 192.168.122.0/24     0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]*&gt; 192.168.200.0/24     0.0.0.0                                   00:04:37   [&#123;Origin: i&#125; &#123;Med: 0&#125;]# 查看bgp 路由是否已经同步到linux 内核路由中[root@yusur-55 ~]# ip route list proto bgp172.19.0.0 via 192.168.122.102 dev virbr0 metric 20 172.19.0.100 via 192.168.122.102 dev virbr0 metric 20 </code></pre><p><strong>3，附件</strong></p><p>详细开发文档</p><p><a href="https://flftuu.com/2023/06/08/gobgp-%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95/#more">《gobgp 本地调试介绍》</a></p><h5 id="方法-2：frr"><a href="#方法-2：frr" class="headerlink" title="方法 2：frr"></a>方法 2：frr</h5><p>使用 frr 工具包搭建，FRRouting (FRR) 是适用于 Linux 和 Unix 平台的免费开源 Internet 路由协议套件。它实现了 BGP、OSPF、RIP、IS-IS、PIM、LDP、BFD、Babel、PBR、OpenFabric 和 VRRP，并支持 EIGRP 和 NHRP。</p><p>FRR 与本地 Linux&#x2F;Unix IP 网络堆栈的无缝集成使其成为适用于各种用例的通用路由堆栈，包括将主机&#x2F;VM&#x2F;容器连接到网络、广告网络服务、LAN 交换和路由、Internet 访问路由器、和互联网对等。</p><p>参考文档：<a href="https://frrouting.org/">https://frrouting.org/</a></p><p><strong>系统架构:</strong></p><p><strong>传统的路由软件是作为一个进程程序，提供所有的路由协议功能</strong>。FRR采取了不同的方法。<strong>FRR是一组守护程序</strong>，它们共同构建路由表。<strong>每个主要协议都在自己的守护进程中实现</strong>，这些守护进程与<strong>中间守护进程（zebra）</strong>通信，后者<strong>负责协调路由决策并与数据平面通信</strong>。体系结构图：</p><pre><code>+----+  +----+  +-----+  +----+  +----+  +----+  +-----+|bgpd|  |ripd|  |ospfd|  |ldpd|  |pbrd|  |pimd|  |.....|+----+  +----+  +-----+  +----+  +----+  +----+  +-----+     |       |        |       |       |       |        |+----v-------v--------v-------v-------v-------v--------v|                                                      ||                         Zebra                        ||                                                      |+------------------------------------------------------+       |                    |                   |       |                    |                   |+------v------+   +---------v--------+   +------v------+|             |   |                  |   |             || *NIX Kernel |   | Remote dataplane |   | ........... ||             |   |                  |   |             |+-------------+   +------------------+   +-------------+</code></pre><p><strong>1，配置 frr 服务</strong></p><pre><code>mkdir frrtouch frr/vtysh.confcat &lt;&lt;EOF &gt;frr/daemonsbgpd=yesEOF</code></pre><p><strong>2，启动 frr 服务</strong></p><pre><code>docker run  --privileged  -it -d --network=host --rm --name frr8  -v  $PWD/frr:/etc/frr:rw flftuu/frr:v8.1.0</code></pre><p><strong>3，vtysh 方式配置 bgp</strong></p><pre><code># 进入vtysh 中vtysh# 查看当前配置show running-config# 进行配置模式config t# bgp配置router bgp 65001bgp router-id 192.168.122.1neighbor 192.168.122.101 remote-as 64512neighbor 192.168.122.102 remote-as 64512no bgp ebgp-requires-policyaddress-family ipv4 unicastexit-address-familydebug bgp keepalivesdebug bgp neighbor-eventsdebug bgp nhtdebug bgp updates indebug bgp updates outdebug bgp zebradebug zebra nhtdebug zebra rib# 退出config-router 模式exit# 退出config模式exit</code></pre><p>或者写如配置文件中，重启frr8 容器</p><pre><code>cat &lt;&lt;EOF &gt;frr/bgpd.confrouter bgp 65001bgp router-id 192.168.122.1neighbor 192.168.122.101 remote-as 64512neighbor 192.168.122.102 remote-as 64512no bgp ebgp-requires-policyaddress-family ipv4 unicastexit-address-familydebug bgp keepalivesdebug bgp neighbor-eventsdebug bgp nhtdebug bgp updates indebug bgp updates outdebug bgp zebradebug zebra nhtdebug zebra ribEOF# 重启frr8容器docker rm -f frr8docker run  --privileged  -it -d --network=host --rm --name frr8  -v  $PWD/frr:/etc/frr:rw flftuu/frr:v8.1.0</code></pre><p><strong>4，查看 bgp 信息</strong></p><pre><code># 进入vtyshdocker exec -it frr8 vtysh yusur-55# show ip bgpBGP table version is 2, local router ID is 192.168.122.1, vrf id 0Default local pref 100, local AS 65001Status codes:  s suppressed, d damped, h history, * valid, &gt; best, = multipath,               i internal, r RIB-failure, S Stale, R RemovedNexthop codes: @NNN nexthops vrf id, &lt; announce-nh-selfOrigin codes:  i - IGP, e - EGP, ? - incompleteRPKI validation codes: V valid, I invalid, N Not found   Network          Next Hop            Metric LocPrf Weight Path*&gt; 172.19.0.0/32    192.168.122.102                        0 64512 i*&gt; 172.19.0.100/32  192.168.122.102                        0 64512 i# 查看 summary 信息yusur-55# show ip bgp summaryIPv4 Unicast Summary (VRF default):BGP router identifier 192.168.122.1, local AS number 65001 vrf-id 0BGP table version 2RIB entries 3, using 552 bytes of memoryPeers 1, using 716 KiB of memoryNeighbor        V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt Desc192.168.122.102 4      64512         9         8        0    0    0 00:02:42            2        2 N/ATotal number of neighbors 1# 查看bgp route 信息yusur-55# show ip routeCodes: K - kernel route, C - connected, S - static, R - RIP,       O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,       f - OpenFabric,       &gt; - selected route, * - FIB route, q - queued, r - rejected, b - backup       t - trapped, o - offload failureK&gt;* 0.0.0.0/0 [0/100] via 10.2.20.1, enp3s0, 00:05:23C&gt;* 10.2.20.0/23 is directly connected, enp3s0, 00:05:23C&gt;* 10.244.0.0/24 is directly connected, cni0, 00:05:23C&gt;* 10.244.0.0/32 is directly connected, flannel.1, 00:05:23B&gt;* 172.19.0.0/32 [20/0] via 192.168.122.102, virbr0, weight 1, 00:03:49B&gt;* 172.19.0.100/32 [20/0] via 192.168.122.102, virbr0, weight 1, 00:03:49C&gt;* 192.168.100.0/24 is directly connected, virbr1, 00:05:23C&gt;* 192.168.122.0/24 is directly connected, virbr0, 00:05:23C&gt;* 192.168.200.0/24 is directly connected, virbr2, 00:05:23# 查看bgp 路由是否已经同步到linux 内核路由中[root@yusur-55 ~]# ip route list proto bgp172.19.0.0 via 192.168.122.102 dev virbr0 metric 20 172.19.0.100 via 192.168.122.102 dev virbr0 metric 20 </code></pre><p><strong>5，附件</strong></p><pre><code>show ip bgp [x.x.x.x](longer)show ip bgp summaryshow ip route [x.x.x.x](longer)show ip bgp neighbor [x.x.x.x]show ip bgp neighbor 192.168.122.1 advertised-routesshow ip bgp neighbor x.x.x.x received-routes debug bgp alldebug bgp flowspecclear bgp * (soft in/soft out)</code></pre><h3 id="配置路由转发功能"><a href="#配置路由转发功能" class="headerlink" title="配置路由转发功能"></a>配置路由转发功能</h3><p>要将CentOS配置为路由器，您需要执行以下步骤：</p><p><strong>配置网络接口：</strong></p><p>首先，确保您有至少两个网络接口，一个用于连接到互联网（外部接口），另一个用于连接到本地网络（内部接口）。</p><p>您可以使用`ifconfig`或`ip addr`命令来查看可用的网络接口。假设您的外部接口是enp3s0，内部接口是virbr0。</p><h5 id="2-启用IP转发"><a href="#2-启用IP转发" class="headerlink" title="2. 启用IP转发"></a>2. 启用IP转发</h5><p>打开`&#x2F;etc&#x2F;sysctl.conf`文件并查找以下行：</p><pre><code>#net.ipv4.ip_forward=1#将其取消注释，或者如果没有该行，则添加以下行：net.ipv4.ip_forward=1#保存文件并运行以下命令使更改生效：sysctl -p</code></pre><h5 id="3-配置网络地址转换（NAT）"><a href="#3-配置网络地址转换（NAT）" class="headerlink" title="3. 配置网络地址转换（NAT）"></a>3. 配置网络地址转换（NAT）</h5><p>使用以下命令配置iptables规则，以实现网络地址转换（NAT）：</p><pre><code># 前提清空现有iptables 规则iptables -t nat -I POSTROUTING 1 -o enp3s0 -j MASQUERADEiptables -I FORWARD 1 -i enp3s0 -o virbr0 -m state --state RELATED,ESTABLISHED -j ACCEPTiptables -I FORWARD 1 -i virbr0 -o enp3s0 -j ACCEPT</code></pre><p>这些规则将允许转发从内部接口（virbr0）到外部接口（enp3s0）的流量，并自动处理源地址转换。</p><h5 id="4-查看路由规则"><a href="#4-查看路由规则" class="headerlink" title="4. 查看路由规则"></a>4. 查看路由规则</h5><pre><code># 该规则由 frr 利用bgp协议 自动学习k8s中配置svc 的lb ip地址#route add -host 172.19.0.100/32 gw 192.168.122.101# 查看bgp路由是否写入linux 内核路由中[root@yusur-55 ~]# ip route list proto bgp172.19.0.0 via 192.168.122.102 dev virbr0 metric 20 172.19.0.100 via 192.168.122.102 dev virbr0 metric 20</code></pre><h3 id="流量测试"><a href="#流量测试" class="headerlink" title="流量测试"></a>流量测试</h3><h5 id="手动-配置-gw-为10-2-20-4"><a href="#手动-配置-gw-为10-2-20-4" class="headerlink" title="手动 配置 gw 为10.2.20.4"></a>手动 配置 gw 为10.2.20.4</h5><pre><code># 添加172.19.0.0/24 的默认网关地址(为centos的enp3s0地址)route add -net 172.19.0.0/24 gw 10.2.20.4# 或者在本机开启frr bgp 功能从10.2.20.4 路由器学习bgp路由</code></pre><h5 id="在客户端访问-curl-172-19-0-100-地址"><a href="#在客户端访问-curl-172-19-0-100-地址" class="headerlink" title="在客户端访问 curl 172.19.0.100 地址"></a>在客户端访问 curl 172.19.0.100 地址</h5><pre><code>[root@yusur-25 ~]# curl 172.19.0.100&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;Welcome to nginx!&lt;/title&gt;&lt;style&gt;    body &#123;        width: 35em;        margin: 0 auto;        font-family: Tahoma, Verdana, Arial, sans-serif;    &#125;&lt;/style&gt;&lt;/head&gt;&lt;body&gt;&lt;h1&gt;Welcome to nginx!&lt;/h1&gt;&lt;p&gt;If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.&lt;/p&gt;&lt;p&gt;For online documentation and support please refer to&lt;a href=&quot;http://nginx.org/&quot;&gt;nginx.org&lt;/a&gt;.&lt;br/&gt;Commercial support is available at&lt;a href=&quot;http://nginx.com/&quot;&gt;nginx.com&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Thank you for using nginx.&lt;/em&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;[root@yusur-25 ~]# curl 172.19.0.0&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;Welcome to nginx!&lt;/title&gt;&lt;style&gt;    body &#123;        width: 35em;        margin: 0 auto;        font-family: Tahoma, Verdana, Arial, sans-serif;    &#125;&lt;/style&gt;&lt;/head&gt;&lt;body&gt;&lt;h1&gt;Welcome to nginx!&lt;/h1&gt;&lt;p&gt;If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.&lt;/p&gt;&lt;p&gt;For online documentation and support please refer to&lt;a href=&quot;http://nginx.org/&quot;&gt;nginx.org&lt;/a&gt;.&lt;br/&gt;Commercial support is available at&lt;a href=&quot;http://nginx.com/&quot;&gt;nginx.com&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Thank you for using nginx.&lt;/em&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</code></pre><h5 id="查看-curl-转发流程"><a href="#查看-curl-转发流程" class="headerlink" title="查看 curl 转发流程"></a>查看 curl 转发流程</h5><p><img src="/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/3.png" alt="image"></p><h6 id="iptables-dnat-信息"><a href="#iptables-dnat-信息" class="headerlink" title="iptables dnat 信息"></a>iptables dnat 信息</h6><p><img src="/2023/06/08/MetalLB%E6%9C%8D%E5%8A%A1%E5%92%8CBGP%E8%B7%AF%E7%94%B1%E5%99%A8%E6%B5%8B%E8%AF%95/4.png" alt="image"></p><pre><code>root@work002:~# iptables -vn -t nat -L  OVN-KUBE-EXTERNALIPChain OVN-KUBE-EXTERNALIP (2 references) pkts bytes target     prot opt in     out     source               destination             8   480 DNAT       tcp  --  *      *       0.0.0.0/0            172.19.0.0           tcp dpt:80 to:10.86.210.196:80# pkts 包的数量发生变化</code></pre><h6 id="本机路由匹配"><a href="#本机路由匹配" class="headerlink" title="本机路由匹配"></a>本机路由匹配</h6><pre><code>root@work002:~# ip route  | grep 10.86.0.0/1610.86.0.0/16 via 169.254.169.4 dev brens3f0 mtu 1400 # 根据dst 转发到 ovs网桥</code></pre><h6 id="ovs-转发流表"><a href="#ovs-转发流表" class="headerlink" title="ovs 转发流表"></a>ovs 转发流表</h6><pre><code>root@work002:~# ovs-appctl dpctl/dump-flows -m | grep 10.86.210.196ufid:0bd14815-d0f3-44b4-8c31-7624e3d19ff1, recirc_id(0x13d),dp_hash(0/0),skb_priority(0/0),in_port(brens3f0),skb_mark(0/0),ct_state(0x21/0x25),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),eth(src=00:00:00:00:00:00/00:00:00:00:00:00,dst=00:00:00:00:00:00/00:00:00:00:00:00),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=10.86.210.196,proto=6,tos=0/0,ttl=0/0,frag=no),tcp(src=0/0,dst=80),tcp_flags(0/0), packets:0, bytes:0, used:never, dp:ovs, actions:hash(l4(0)),recirc(0x13e)ufid:f745e2c4-b92f-4072-ad11-980114e3b9b3, recirc_id(0x13c),dp_hash(0/0),skb_priority(0/0),in_port(brens3f0),skb_mark(0/0),ct_state(0x21/0x23),ct_zone(0/0),ct_mark(0/0x2),ct_label(0/0),eth(src=52:54:00:e0:72:df,dst=0a:58:a9:fe:a9:04),eth_type(0x0800),ipv4(src=128.0.0.0/192.0.0.0,dst=10.86.210.196,proto=0/0,tos=0/0,ttl=62,frag=no), packets:0, bytes:0, used:never, dp:ovs, actions:set(eth(dst=52:54:00:e0:72:df)),ct(zone=8,nat),recirc(0x13d)ufid:aefc60dd-20ac-4f29-94b7-548a5ad8ffb9, recirc_id(0x13c),dp_hash(0/0),skb_priority(0/0),in_port(brens3f0),skb_mark(0/0),ct_state(0x22/0x23),ct_zone(0/0),ct_mark(0/0x2),ct_label(0/0),eth(src=52:54:00:e0:72:df,dst=0a:58:a9:fe:a9:04),eth_type(0x0800),ipv4(src=128.0.0.0/192.0.0.0,dst=10.86.210.196,proto=0/0,tos=0/0,ttl=62,frag=no), packets:3, bytes:198, used:2.332s, flags:F., dp:ovs, actions:set(eth(dst=52:54:00:e0:72:df)),ct(zone=8,nat),recirc(0x13d)</code></pre><h6 id="pod-里抓包"><a href="#pod-里抓包" class="headerlink" title="pod 里抓包"></a>pod 里抓包</h6><pre><code># pod里面抓包root@work002:~# kubectl exec -it nginx1-ovn -- tcpdump port 80 -nnvvtcpdump: listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes09:20:21.653960 IP (tos 0x0, ttl 60, id 22325, offset 0, flags [DF], proto TCP (6), length 60)    100.64.0.4.60608 &gt; 10.124.0.3.80: Flags [S], cksum 0x90f3 (correct), seq 2453724959, win 29200, options [mss 1460,sackOK,TS val 292120159 ecr 0,nop,wscale 7], length 0</code></pre>]]></content>
    
    
    <summary type="html">&lt;h1 id=&quot;LB服务和BGP路由器测试&quot;&gt;&lt;a href=&quot;#LB服务和BGP路由器测试&quot; class=&quot;headerlink&quot; title=&quot;LB服务和BGP路由器测试&quot;&gt;&lt;/a&gt;LB服务和BGP路由器测试&lt;/h1&gt;&lt;h1 id=&quot;安装-k8s-lb-控制器&quot;&gt;&lt;a href=&quot;#安装-k8s-lb-控制器&quot; class=&quot;headerlink&quot; title=&quot;安装 k8s lb 控制器&quot;&gt;&lt;/a&gt;安装 k8s lb 控制器&lt;/h1&gt;&lt;p&gt;&lt;a href=&quot;https://flftuu.com/2023/06/08/k8s-lb%E6%9C%8D%E5%8A%A1metallb-bgp%E6%A8%A1%E5%BC%8F-%E4%BB%8B%E7%BB%8D/#more&quot;&gt;《k8s lb服务metallb(bgp模式)介绍》&lt;/a&gt;&lt;/p&gt;
&lt;h1 id=&quot;配置-Linux-软路由器&quot;&gt;&lt;a href=&quot;#配置-Linux-软路由器&quot; class=&quot;headerlink&quot; title=&quot;配置 Linux 软路由器&quot;&gt;&lt;/a&gt;配置 Linux 软路由器&lt;/h1&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>k8s lb服务metallb(bgp模式)介绍</title>
    <link href="https://www.flftuu.com/2023/06/08/k8s-lb%E6%9C%8D%E5%8A%A1metallb-bgp%E6%A8%A1%E5%BC%8F-%E4%BB%8B%E7%BB%8D/"/>
    <id>https://www.flftuu.com/2023/06/08/k8s-lb%E6%9C%8D%E5%8A%A1metallb-bgp%E6%A8%A1%E5%BC%8F-%E4%BB%8B%E7%BB%8D/</id>
    <published>2023-06-08T06:05:00.000Z</published>
    <updated>2023-11-07T09:47:33.528Z</updated>
    
    <content type="html"><![CDATA[<h2 id="metallb-介绍"><a href="#metallb-介绍" class="headerlink" title="metallb 介绍"></a>metallb 介绍</h2><p>MetalLB是一个为基础 Kubernetes集群提供负载均衡实现的工具，使用标准路由协议。</p><p>Kubernetes在基础集群中不提供网络负载均衡器（类型为LoadBalancer的服务）的实现。Kubernetes提供的网络负载平衡器实现都是调用各种IaaS平台（如GCP、AWS、Azure等）的接口代码。如果您没有运行在受支持的IaaS平台上（如GCP、AWS、Azure等），则创建时LoadBalancers将无限期处于“挂起”状态。</p><p>在基础集群中，操作员只有两个接口来将用户流量引入他们的集群，“NodePort”和“externalIPs”服务。</p><p>这两个选项在生产使用中都有显著的缺点，这使得基础集群成为 Kubernetes 生态系统中的二等公民。</p><p>MetalLB旨在通过提供与标准网络设备集成的网络负载均衡器实现来解决这种不平衡，以便基础群集上的external services尽可能“正常工作”。</p><span id="more"></span><h2 id="前置要求"><a href="#前置要求" class="headerlink" title="前置要求"></a>前置要求</h2><ul><li><p>需要运行Kubernetes 1.13.0或更高版本的Kubernetes集群，该集群尚未具备网络负载平衡功能。</p></li><li><p>可以与MetalLB共存的集群网络（如 calico）。</p></li><li><p>一些IPv4地址供MetalLB分配。</p></li><li><p>当使用BGP操作模式时，您将需要一个或多个能够使用BGP协议进行通信的路由器。</p></li><li><p>当使用L2操作模式时，节点之间必须允许端口7946上（TCP和UDP，其他端口可配置）的流量通过，这是memberlist所需的。</p></li></ul><h2 id="安装-metallb-服务"><a href="#安装-metallb-服务" class="headerlink" title="安装 metallb 服务"></a>安装 metallb 服务</h2><p>如果您正在使用IPVS模式下的kube-proxy，则自Kubernetes v1.14.2起，您必须启用严格的ARP模式。</p><p>请注意，如果您使用kube-router作为服务代理，则不需要此操作，因为它默认启用了 strict ARP。</p><p>您可以通过编辑当前集群中的kube-proxy配置来实现此操作：</p><pre><code>kubectl edit configmap -n kube-system kube-proxy# setapiVersion: kubeproxy.config.k8s.io/v1alpha1kind: KubeProxyConfigurationmode: &quot;ipvs&quot;ipvs:  strictARP: true# see what changes would be made, returns nonzero returncode if differentkubectl get configmap kube-proxy -n kube-system -o yaml | \sed -e &quot;s/strictARP: false/strictARP: true/&quot; | \kubectl diff -f - -n kube-system# actually apply the changes, returns nonzero returncode on errors onlykubectl get configmap kube-proxy -n kube-system -o yaml | \sed -e &quot;s/strictARP: false/strictARP: true/&quot; | \kubectl apply -f - -n kube-system# delete pods kubectl  delete pods -l k8s-app=kube-proxy -n kube-system</code></pre><h4 id="创建-metallb"><a href="#创建-metallb" class="headerlink" title="创建 metallb"></a>创建 metallb</h4><pre><code>kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/main/config/manifests/metallb-native.yaml# 查看对应的metalb  controller控制器pod 是否启动root@master001:~/lb# kubectl  -n metallb-system  get pods -l app=metallbNAME                                                   READY   STATUS    RESTARTS   AGEcontroller-848965b68-8slv7                             1/1     Running   0          8m8sspeaker-5hx2t                                          1/1     Running   0          8m8sspeaker-8vbmh                                          1/1     Running   0          8m8sspeaker-r46dt                                          1/1     Running   0          8m8s# pod 介绍这将在 metallb-system 命名空间下部署 MetalLB。清单中包含以下组件：- metallb-system/controller 部署。它是处理 IP 地址分配的集群控制器。- metallb-system/speaker 守护进程集。它是使用您选择的协议来使服务可达的组件。- controller和 speaker 的服务帐户，以及组件需要运行所需的 RBAC 权限。</code></pre><h4 id="创建-IP-pool-池"><a href="#创建-IP-pool-池" class="headerlink" title="创建 IP pool 池"></a>创建 IP pool 池</h4><p>IPAddressPool 是定义要分配给负载均衡器服务的IP地址</p><p>使用所需的IP创建IPAddressPool。将autoAssign设置为false是有意义的，这样它就不会被其他服务错误地占用 - 我们的服务将显式请求该池。</p><pre><code>cat &lt;&lt;EOF &gt;ip.yamlapiVersion: metallb.io/v1beta1kind: IPAddressPoolmetadata:  name: example-pool  namespace: metallb-systemspec:  addresses:  - 172.19.0.0/24  autoAssign: falseEOF</code></pre><p>IPAddressPools可以同时存在多个实例，地址可以通过CIDR，范围定义，并且可以分配IPv4和IPv6地址。</p><h4 id="创建-bgp-adv"><a href="#创建-bgp-adv" class="headerlink" title="创建 bgp adv"></a>创建 bgp adv</h4><pre><code>cat &lt;&lt;EOF &gt;adv.yamlapiVersion: metallb.io/v1beta1kind: BGPAdvertisementmetadata:  name: example-bgp-adv  namespace: metallb-systemspec:  ipAddressPools:  - example-pool    #  nodeSelectors:    #  - matchLabels:    #      egress-service.k8s.ovn.org/some-namespace-example-service: &quot;&quot;EOF</code></pre><h4 id="创建-bgp-peer"><a href="#创建-bgp-peer" class="headerlink" title="创建 bgp peer"></a>创建 bgp peer</h4><pre><code>cat &lt;&lt;EOF &gt; peer.yamlapiVersion: metallb.io/v1beta2kind: BGPPeermetadata:  name: example  namespace: metallb-systemspec:  myASN: 64512  peerASN: 65001  peerAddress: 192.168.122.1  peerPort: 179EOF</code></pre><p>配置路由器 bgp 功能</p><p><a href>《LB服务和BGP路由器测试》</a></p><h4 id="创建-LB-SVC"><a href="#创建-LB-SVC" class="headerlink" title="创建 LB SVC"></a>创建 LB SVC</h4><pre><code>cat &lt;&lt;EOF &gt; svc.yamlapiVersion: v1kind: Servicemetadata:  name: example-service  annotations:    # 指定lb的地址池    metallb.universe.tf/address-pool: example-poolspec:  selector:    app: nginx1-ovn  ports:    - name: http      protocol: TCP      port: 80      targetPort: 80  type: LoadBalancerEOFkubectl apply -f svc.yaml</code></pre><h4 id="查看-LB-SVC"><a href="#查看-LB-SVC" class="headerlink" title="查看 LB SVC"></a>查看 LB SVC</h4><pre><code>kubectl  describe svc example-serviceName:                     example-serviceNamespace:                defaultLabels:                   &lt;none&gt;Annotations:              metallb.universe.tf/address-pool: example-pool                          metallb.universe.tf/ip-allocated-from-pool: example-poolSelector:                 app=nginx1-ovnType:                     LoadBalancerIP Family Policy:         SingleStackIP Families:              IPv4IP:                       10.86.73.55IPs:                      10.86.73.55LoadBalancer Ingress:     172.19.0.100 # 分配的lb地址Port:                     http  80/TCPTargetPort:               80/TCPNodePort:                 http  32541/TCPEndpoints:                10.124.0.3:80Session Affinity:         NoneExternal Traffic Policy:  Cluster</code></pre><h4 id="高级用法"><a href="#高级用法" class="headerlink" title="高级用法"></a>高级用法</h4><p>参考：<a href="https://metallb.universe.tf/configuration/_advanced_bgp_configuration/">https://metallb.universe.tf/configuration/_advanced_bgp_configuration&#x2F;</a></p>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;metallb-介绍&quot;&gt;&lt;a href=&quot;#metallb-介绍&quot; class=&quot;headerlink&quot; title=&quot;metallb 介绍&quot;&gt;&lt;/a&gt;metallb 介绍&lt;/h2&gt;&lt;p&gt;MetalLB是一个为基础 Kubernetes集群提供负载均衡实现的工具，使用标准路由协议。&lt;/p&gt;
&lt;p&gt;Kubernetes在基础集群中不提供网络负载均衡器（类型为LoadBalancer的服务）的实现。Kubernetes提供的网络负载平衡器实现都是调用各种IaaS平台（如GCP、AWS、Azure等）的接口代码。如果您没有运行在受支持的IaaS平台上（如GCP、AWS、Azure等），则创建时LoadBalancers将无限期处于“挂起”状态。&lt;/p&gt;
&lt;p&gt;在基础集群中，操作员只有两个接口来将用户流量引入他们的集群，“NodePort”和“externalIPs”服务。&lt;/p&gt;
&lt;p&gt;这两个选项在生产使用中都有显著的缺点，这使得基础集群成为 Kubernetes 生态系统中的二等公民。&lt;/p&gt;
&lt;p&gt;MetalLB旨在通过提供与标准网络设备集成的网络负载均衡器实现来解决这种不平衡，以便基础群集上的external services尽可能“正常工作”。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>gobgp 本地调试</title>
    <link href="https://www.flftuu.com/2023/06/08/gobgp-%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95/"/>
    <id>https://www.flftuu.com/2023/06/08/gobgp-%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95/</id>
    <published>2023-06-08T03:29:37.000Z</published>
    <updated>2023-11-07T09:47:33.517Z</updated>
    
    <content type="html"><![CDATA[<h2 id="概要目的"><a href="#概要目的" class="headerlink" title="概要目的"></a>概要目的</h2><p>本文主要提供本地开发调试 BGP 程序的一个技巧，同时学习 BGP 协议，以及 go 包 gobgp <a href="https://github.com/osrg/gobgp">https://github.com/osrg/gobgp</a></p><p>学习 BGP 协议必要性：K8s 容器网络目前我们使用 Cilium&#x2F;Calico，都是使用 BGP 来宣告路由，使得 pod&#x2F;service cidr 在 K8s 之外可达。所以，想要了解容器网络，有必要了解 BGP。</p><span id="more"></span><h2 id="BGP-基本概念"><a href="#BGP-基本概念" class="headerlink" title="BGP 基本概念"></a>BGP 基本概念</h2><p>BGP &lt;<a href="https://datatracker.ietf.org/doc/html/rfc4271">https://datatracker.ietf.org/doc/html/rfc4271</a> 是一个建立在 TCP 上的边界网关协议，可以用来动态学习路由。&gt;</p><p>在 K8s Cilium&#x2F;Calico 网络插件生态里，主要使用 BGP 协议宣告 pod&#x2F;service 路由给交换机，使得 pod&#x2F;service ip 可以在 K8s 之外访问。</p><p>比如，下图是把目的地址为 service ip 的路由宣告给交换机，可以见青云的 Porter 项目 <a href="https://github.com/kubesphere/openelb/blob/master/doc/bgp-mode.md">https://github.com/kubesphere/openelb/blob/master/doc/bgp-mode.md</a></p><p>该项目比较简单，通过 k8s 这一层获取 service ip，和定制选择几个 Node IP 作为下一跳Next Hop，构造成一个路由，宣告给交换机。当然，也可以直接把 service cidr 宣告给交换机而不是一个个 service ip:</p><p><img src="/2023/06/08/gobgp-%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95/1.png" alt="image"></p><p>porter 项目和 metallb<a href="https://github.com/metallb/metallb%E9%A1%B9%E7%9B%AE%E5%9F%BA%E6%9C%AC%E4%B8%80%E8%87%B4%EF%BC%8C%E4%B8%BB%E8%A6%81%E5%8C%BA%E5%88%AB%E5%9C%A8porter">https://github.com/metallb/metallb项目基本一致，主要区别在porter</a> 使用强大的 gobgp 库来实现 bgp<a href="https://github.com/osrg/gobgp%EF%BC%8C%E4%B8%94%E9%80%9A%E8%BF%87">https://github.com/osrg/gobgp，且通过</a> K8s CRD 来配置，而 metallb 自己实现的一个简陋版本的 BGP 实现。两者都自己实现了 IPAM。对比可以参考：<a href="https://github.com/kubesphere/openelb/blob/master/doc/zh/compared/_with/_metallb.md%EF%BC%8C">https://github.com/kubesphere/openelb/blob/master/doc/zh/compared\_with\_metallb.md，</a></p><p>感觉porter 更友好点，不过做的事情几乎一样。</p><p>pod cidr 也是通过 BGP 协议宣告给交换机，目前我们 K8s 集群的 Cilium&#x2F;Calico 使用 bird 程序(C语言写的) 来宣告每一个 pod cidr subnet 给交换机，本机 Node IP 作为下一跳。比如 pod cidr 为 10.20.30.40&#x2F;19，集群有两个node 100.100.100.100、200.200.200.200 ，并且切分成两个 pod cidr</p><p>subnet10.20.30.40&#x2F;20、10.20.30.41&#x2F;20，则两个 node 上的 bird 分别会把类似如下路由宣告给交换机：</p><pre><code>10.20.30.40/20 via 100.100.100.10010.20.30.41/20 via 200.200.200.200</code></pre><p>流量到了交换机那一侧，如果 pod ip 在10.20.30.40&#x2F;20 子网内，则下一跳去100.100.100.100 node；如果 pod ip 在10.20.30.41&#x2F;20 子网内，则下一跳去200.200.200.200 node。</p><h2 id="调试-BGP-程序"><a href="#调试-BGP-程序" class="headerlink" title="调试 BGP 程序"></a>调试 BGP 程序</h2><p>需要本地开发一个 BGP 程序，比如类似 porter&#x2F;metallb 那样的项目，但是没有真实的交换机&#x2F;路由器，那就不太方便本地开发调试了，可以使用 gobgp &lt;<a href="https://github.com/osrg/gobgp%E5%8C%85%E6%9D%A5%E5%9C%A8%E6%9C%AC%E5%9C%B0%E8%BF%90%E8%A1%8C%E4%BD%9C%E4%B8%BA">https://github.com/osrg/gobgp包来在本地运行作为</a> route server(类似交换机那一侧)。而且，建议使用强大的gobgp BGP 包，go 语言写的。&gt;</p><p>或者也可以使用 bird，C 语言写的。不过程序需要集成 gobgp 包，也建议 gobgp。</p><p>先安装下 gobgpd 和 gobgp 两个 bin 文件，gobgp 是客户端：</p><pre><code>wget -c https://github.com/osrg/gobgp/releases/download/v3.15.0/gobgp_3.15.0_linux_amd64.tar.gztar -xf -C /usr/local/bin gobgp_3.15.0_linux_amd64.tar.gz</code></pre><p>然后本地运行 route-server，可以参考&lt;<a href="https://github.com/osrg/gobgp/blob/master/docs/sources/route-server.md%EF%BC%8C%E9%85%8D%E7%BD%AE%E6%96%87%E6%A1%A3">https://github.com/osrg/gobgp/blob/master/docs/sources/route-server.md，配置文档</a> route-server-conf&gt;.</p><p>conf 如下：</p><pre><code>[global.config] as = 64512 router-id = &quot;1.1.1.1&quot; port = 1790 local-address-list = [&quot;127.0.0.1&quot;][[neighbors]] [neighbors.config] neighbor-address = &quot;127.0.0.1&quot; peer-as = 65001 [neighbors.transport.config] remote-port = 1791 passive-mode = true [neighbors.route-server.config] route-server-client = true</code></pre><p>本地运行服务</p><pre><code>gobgpd -f ./route-server-conf.conf -l debug --api-hosts &quot;:50052&quot; --pprof-disable</code></pre><p>这时，以上 route server 就相当于交换机那一侧，等待 node 这一侧宣告路由过去。然后就是编写一个 bgp 程序，并使用 gobgp 包。一个简单的代码如</p><p>下所示，当然在可以加上k8s那一侧控制平面获取 pod&#x2F;service cidr 等逻辑，类似 porter&#x2F;metallb 项目。</p><p>测试代码里，本地这一侧会宣告一个路由: 目标地址 10.20.30.0&#x2F;24 下一跳 30.30.30.30</p><pre><code>package bgpimport ( &quot;context&quot; &quot;github.com/golang/protobuf/ptypes&quot; api &quot;github.com/osrg/gobgp/api&quot; gobgp &quot;github.com/osrg/gobgp/pkg/server&quot; &quot;google.golang.org/protobuf/types/known/anypb&quot; &quot;testing&quot;)// gobgpd -f ./route-server-conf.conf -l debug --api-hosts &quot;:50052&quot; --pprof-disable// gobgpd -f ./route-client-conf.conf -l debug --api-hosts &quot;:50053&quot; --pprof-disable// nodegobgp -p 50053 -d global rib add -a ipv4 100.0.0.0/24 nexthop 20.20.20.20// gobgp -p 50052 -d neighbor 127.0.0.1 adj-in// gobgp -p 50052 -d global rib add -a ipv4 200.0.0.0/24 nexthop 20.20.20.20// nodegobgp -p 50053 -d neighbor 127.0.0.1 adj-infunc TestRouteServer(test *testing.T) &#123; log.SetLevel(log.DebugLevel) ch := make(chan struct&#123;&#125;) // bgp1 s := gobgp.NewBgpServer(gobgp.GrpcListenAddress(&quot;:50053&quot;)) go s.Serve() _ = s.StartBgp(context.Background(), &amp;api.StartBgpRequest&#123;  Global: &amp;api.Global&#123;   As:         65001,     // AS Number, NetOPS API AS Number   RouterId:   &quot;2.2.2.2&quot;, // IP   ListenPort: 1791,  &#125;, &#125;) defer s.StopBgp(context.Background(), &amp;api.StopBgpRequest&#123;&#125;) // route-server() bgp-server p1 := &amp;api.Peer&#123;  Conf: &amp;api.PeerConf&#123;   NeighborAddress: &quot;127.0.0.1&quot;,   PeerAs:          64512,  &#125;,  Transport: &amp;api.Transport&#123;   RemotePort: 1790,  &#125;, &#125; _ = s.AddPeer(context.Background(), &amp;api.AddPeerRequest&#123;Peer: p1&#125;) nlri, _ := ptypes.MarshalAny(&amp;api.IPAddressPrefix&#123;  Prefix:    &quot;10.20.30.0&quot;,  PrefixLen: 24, &#125;) a1, _ := ptypes.MarshalAny(&amp;api.OriginAttribute&#123;  Origin: 0, &#125;) a2, _ := ptypes.MarshalAny(&amp;api.NextHopAttribute&#123;  NextHop: &quot;30.30.30.30&quot;, &#125;) attrs := []*anypb.Any&#123;a1, a2&#125; s.AddPath(context.TODO(), &amp;api.AddPathRequest&#123;  Path: &amp;api.Path&#123;   Family: &amp;api.Family&#123;Afi: api.Family_AFI_IP, Safi: api.Family_SAFI_UNICAST&#125;,   Nlri:   nlri,   Pattrs: attrs,  &#125;, &#125;) &lt;-ch&#125;</code></pre><h2 id="k8s-技能树"><a href="#k8s-技能树" class="headerlink" title="k8s 技能树"></a>k8s 技能树</h2><p><img src="/2023/06/08/gobgp-%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95/2.png" alt="image"></p>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;概要目的&quot;&gt;&lt;a href=&quot;#概要目的&quot; class=&quot;headerlink&quot; title=&quot;概要目的&quot;&gt;&lt;/a&gt;概要目的&lt;/h2&gt;&lt;p&gt;本文主要提供本地开发调试 BGP 程序的一个技巧，同时学习 BGP 协议，以及 go 包 gobgp &lt;a href=&quot;https://github.com/osrg/gobgp&quot;&gt;https://github.com/osrg/gobgp&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;学习 BGP 协议必要性：K8s 容器网络目前我们使用 Cilium&amp;#x2F;Calico，都是使用 BGP 来宣告路由，使得 pod&amp;#x2F;service cidr 在 K8s 之外可达。所以，想要了解容器网络，有必要了解 BGP。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>kubeadm安装HA模式k8s集群</title>
    <link href="https://www.flftuu.com/2023/05/06/kubeadm%E5%AE%89%E8%A3%85HA%E6%A8%A1%E5%BC%8Fk8s%E9%9B%86%E7%BE%A4/"/>
    <id>https://www.flftuu.com/2023/05/06/kubeadm%E5%AE%89%E8%A3%85HA%E6%A8%A1%E5%BC%8Fk8s%E9%9B%86%E7%BE%A4/</id>
    <published>2023-05-06T07:31:52.000Z</published>
    <updated>2023-11-07T09:47:33.534Z</updated>
    
    <content type="html"><![CDATA[<h3 id="网络架构图"><a href="#网络架构图" class="headerlink" title="网络架构图"></a>网络架构图</h3><p>master01: 172.16.10.11</p><p>master01: 172.16.10.12</p><p>master01: 172.16.10.13</p><p>外部LB：172.16.10.62</p><span id="more"></span><p><img src="/2023/05/06/kubeadm%E5%AE%89%E8%A3%85HA%E6%A8%A1%E5%BC%8Fk8s%E9%9B%86%E7%BE%A4/1.png" alt="image"></p><h3 id="创建三个vm虚拟机"><a href="#创建三个vm虚拟机" class="headerlink" title="创建三个vm虚拟机"></a>创建三个vm虚拟机</h3><p>根据现有网络环境，vm 必须包好两张网卡，eth0(使用nat 网络模式，用于访问公网) eth1(使用桥接模式，和宿主机处于同一网络平面上，用户访问dpu节点)</p><h5 id="创建网络"><a href="#创建网络" class="headerlink" title="创建网络"></a>创建网络</h5><p>创建桥接模式网络</p><pre><code># 创建网桥brctl addbr br0# 加入宿主机网卡到网桥brctl addif br0 enp1s0</code></pre><p>创建nat 模式网络</p><pre><code># 使用virsh 创建网络cat &lt;EOF &gt;default.xml&lt;network connections=&#39;3&#39;&gt;  &lt;name&gt;default&lt;/name&gt;  &lt;uuid&gt;414f2c31-93ba-46a3-9588-84a3b36bc409&lt;/uuid&gt;  &lt;forward mode=&#39;nat&#39;&gt;    &lt;nat&gt;      &lt;port start=&#39;1024&#39; end=&#39;65535&#39;/&gt;    &lt;/nat&gt;  &lt;/forward&gt;  &lt;bridge name=&#39;virbr0&#39; stp=&#39;on&#39; delay=&#39;0&#39;/&gt;  &lt;mac address=&#39;52:54:00:6e:b8:48&#39;/&gt;  &lt;ip address=&#39;192.168.122.1&#39; netmask=&#39;255.255.255.0&#39;&gt;    &lt;dhcp&gt;      &lt;range start=&#39;192.168.122.2&#39; end=&#39;192.168.122.254&#39;/&gt;    &lt;/dhcp&gt;  &lt;/ip&gt;&lt;/network&gt;EOFvirsh net-define default.xmlvirsh net-start default# 查看网桥信息brctl show virbr0</code></pre><h5 id="使用网络"><a href="#使用网络" class="headerlink" title="使用网络"></a>使用网络</h5><p>vm xml信息</p><pre><code>  # 添加nat模式网络，用于外网访问   &lt;interface type=&#39;network&#39;&gt;      &lt;mac address=&#39;fa:92:01:33:e4:fd&#39;/&gt;      &lt;source network=&#39;default&#39;/&gt;      &lt;model type=&#39;virtio&#39;/&gt;      &lt;address type=&#39;pci&#39; domain=&#39;0x0000&#39; bus=&#39;0x00&#39; slot=&#39;0x03&#39; function=&#39;0x0&#39;/&gt;    &lt;/interface&gt;    # 添加桥接模式网络，用于k8s管理网段，访问dpu节点    &lt;interface type=&#39;bridge&#39;&gt;      &lt;mac address=&#39;fa:92:01:33:e4:fc&#39;/&gt;      &lt;source bridge=&#39;br0&#39;/&gt;      &lt;model type=&#39;virtio&#39;/&gt;      &lt;address type=&#39;pci&#39; domain=&#39;0x0000&#39; bus=&#39;0x00&#39; slot=&#39;0x03&#39; function=&#39;0x1&#39;/&gt;    &lt;/interface&gt;</code></pre><h3 id="安装containerd"><a href="#安装containerd" class="headerlink" title="安装containerd"></a>安装containerd</h3><p>卸载旧版本</p><pre><code>sudo apt-get remove docker docker-engine docker.io docker-ce docker-ce-cli containerd runc kubelet kubectl kubeadm  cri-tools sudo rm -rf /var/lib/dockersudo rm -rf /var/lib/containerdsudo rm -fr /etc/cni/net.dsudo rm -fr /opt/cni/bin</code></pre><p>准备包环境，更新apt，允许使用https</p><pre><code>sudo apt-get updatesudo apt-get install \    ca-certificates \    curl \    gnupg \    lsb-release</code></pre><p>添加docker官方GPG key</p><pre><code>sudo mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg</code></pre><p>设置软件仓库源</p><pre><code>echo \  &quot;deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \  $(lsb_release -cs) stable&quot; | sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null# 添加公钥sudo gpg --keyserver keyserver.ubuntu.com --recv B53DC80D13EDEF05sudo gpg --export --armor B53DC80D13EDEF05 | sudo apt-key add -</code></pre><p>安装containerd</p><pre><code># 安装containerdsudo apt-get updatesudo apt-get install -y containerd.io# 如果是安装docker则执行：#sudo apt-get install docker-ce docker-ce-cli containerd.io# 查看运行状态systemctl enable containerdsystemctl status containerd</code></pre><h3 id="配置containerd"><a href="#配置containerd" class="headerlink" title="配置containerd"></a>配置containerd</h3><p>在 Linux 上，containerd 的默认 CRI 套接字是 &#x2F;run&#x2F;containerd&#x2F;containerd.sock</p><p>生成默认配置</p><pre><code>containerd config default &gt; /etc/containerd/config.toml</code></pre><p>修改CgroupDriver为systemdk8s官方推荐使用systemd类型的CgroupDriver</p><pre><code># 修改默认配置 /etc/containerd/config.tomlsandbox_image = &quot;registry.aliyuncs.com/google_containers/pause:3.7&quot; #修改pause地址  [plugins.&quot;io.containerd.grpc.v1.cri&quot;.containerd.runtimes.runc.options]    SystemdCgroup = true #修改</code></pre><p>重启containerd</p><pre><code>systemctl enable containerdsystemctl restart containerd</code></pre><h3 id="安装外部LB服务"><a href="#安装外部LB服务" class="headerlink" title="安装外部LB服务"></a>安装外部LB服务</h3><pre><code>cat &gt;EOF &gt;nginx.confuser nginx;worker_processes auto;error_log /var/log/nginx/error.log;pid /run/nginx.pid;include /usr/share/nginx/modules/*.conf;events &#123;    worker_connections 1024;&#125;# 四层负载均衡，为两台Master apiserver组件提供负载均衡stream &#123;    log_format  main  &#39;$remote_addr $upstream_addr - [$time_local] $status $upstream_bytes_sent&#39;;    access_log  /var/log/nginx/k8s-access.log  main;    upstream k8s-apiserver &#123;       server 172.16.10.11:6443 max_fails=1 fail_timeout=10s;   # master01 APISERVER IP:PORT       server 172.16.10.12:6443 max_fails=1 fail_timeout=10s;   # master02 APISERVER IP:PORT       server 172.16.10.13:6443 max_fails=1 fail_timeout=10s;   # master03 APISERVER IP:PORT    &#125;        server &#123;       listen 16443;       proxy_pass k8s-apiserver;    &#125;&#125;http &#123;&#125;EOF# 启动lb服务docker run -d --name k8s-apiserver-lb -p 16443:16443 -v $PWD/nginx.conf:/etc/nginx/nginx.conf nginx:latest</code></pre><h3 id="安装kubernetes"><a href="#安装kubernetes" class="headerlink" title="安装kubernetes"></a>安装kubernetes</h3><p>所有节点执行</p><pre><code>cat &gt;EOF &gt;/etc/apt/sources.list.d/kubernetes.list #deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial maindeb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial mainEOF# 添加公钥sudo gpg --keyserver keyserver.ubuntu.com --recv B53DC80D13EDEF05sudo gpg --export --armor B53DC80D13EDEF05 | sudo apt-key add -# 安装k8ssudo apt-get updatesudo apt-get install -y kubelet=1.24.10-00 kubeadm=1.24.10-00 kubectl=1.24.10-00 --allow-downgrades# 锁定版本不升级sudo apt-mark hold kubelet kubeadm kubectl</code></pre><p>所有节点执行</p><pre><code># 设置参数cat &lt;&lt;EOF &gt; /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.ipv4.ip_forward = 1vm.swappiness = 0EOF# 加载模块cat &lt;&lt; EOF &gt; /etc/modules-load.d/containerd.confoverlaybr_netfilterEOFmodprobe overlaymodprobe br_netfiltersysctl -p  /etc/sysctl.d/k8s.conf# 在所有节点(含Master)都安装ovssudo apt-get install openvswitch-switch</code></pre><h5 id="master01-节点安装"><a href="#master01-节点安装" class="headerlink" title="master01 节点安装"></a>master01 节点安装</h5><pre><code>sudo kubeadm init --control-plane-endpoint 172.16.10.62:16443  --upload-certs --kubernetes-version=v1.24.10 --apiserver-advertise-address=172.16.10.11 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.123.0.0/16 --service-cidr=10.86.0.0/16# 输出如下：Your Kubernetes control-plane has initialized successfully!To start using your cluster, you need to run the following as a regular user:  mkdir -p $HOME/.kube  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config  sudo chown $(id -u):$(id -g) $HOME/.kube/configAlternatively, if you are the root user, you can run:  export KUBECONFIG=/etc/kubernetes/admin.confYou should now deploy a pod network to the cluster.Run &quot;kubectl apply -f [podnetwork].yaml&quot; with one of the options listed at:  https://kubernetes.io/docs/concepts/cluster-administration/addons/You can now join any number of the control-plane node running the following command on each as root:  kubeadm join 172.16.10.62:16443 --token m7iv0r.uob1re8vw5xtht52 \ --discovery-token-ca-cert-hash sha256:07cfc6d8d1092f8ac9baf71bbe9e606d61138dad19a1988947baa14280aad8aa \ --control-plane --certificate-key 98adc3aac8c6caf80c2cd8da6e516bf43be98c2cf8acdff1a02892c8be88fc74Please note that the certificate-key gives access to cluster sensitive data, keep it secret!As a safeguard, uploaded-certs will be deleted in two hours; If necessary, you can use&quot;kubeadm init phase upload-certs --upload-certs&quot; to reload certs afterward.Then you can join any number of worker nodes by running the following on each as root:kubeadm join 172.16.10.62:16443 --token m7iv0r.uob1re8vw5xtht52 \ --discovery-token-ca-cert-hash sha256:07cfc6d8d1092f8ac9baf71bbe9e606d61138dad19a1988947baa14280aad8aa </code></pre><h5 id="master02-节点安装"><a href="#master02-节点安装" class="headerlink" title="master02 节点安装"></a>master02 节点安装</h5><p>添加–apiserver-advertise-address&#x3D;172.16.10.12 参数</p><pre><code>kubeadm join 172.16.10.62:16443 --apiserver-advertise-address=172.16.10.12 --token m7iv0r.uob1re8vw5xtht52 \ --discovery-token-ca-cert-hash sha256:07cfc6d8d1092f8ac9baf71bbe9e606d61138dad19a1988947baa14280aad8aa \ --control-plane --certificate-key 98adc3aac8c6caf80c2cd8da6e516bf43be98c2cf8acdff1a02892c8be88fc74</code></pre><h5 id="master03-节点安装"><a href="#master03-节点安装" class="headerlink" title="master03 节点安装"></a>master03 节点安装</h5><p>添加–apiserver-advertise-address&#x3D;172.16.10.13 参数</p><pre><code>kubeadm join 172.16.10.62:16443 --apiserver-advertise-address=172.16.10.13 --token m7iv0r.uob1re8vw5xtht52 \ --discovery-token-ca-cert-hash sha256:07cfc6d8d1092f8ac9baf71bbe9e606d61138dad19a1988947baa14280aad8aa \ --control-plane --certificate-key 98adc3aac8c6caf80c2cd8da6e516bf43be98c2cf8acdff1a02892c8be88fc74</code></pre><h5 id="work-节点安装"><a href="#work-节点安装" class="headerlink" title="work 节点安装"></a>work 节点安装</h5><p>修改node ip参数：–node-ip&#x3D;172.16.10.205</p><pre><code># 指定node ip地址cat &gt;EOF &gt;/etc/default/kubelet KUBELET_EXTRA_ARGS=&quot;--node-ip=172.16.10.205&quot;EOFkubeadm join 172.16.10.62:16443 --token m7iv0r.uob1re8vw5xtht52 \ --discovery-token-ca-cert-hash sha256:07cfc6d8d1092f8ac9baf71bbe9e606d61138dad19a1988947baa14280aad8aa</code></pre>]]></content>
    
    
    <summary type="html">&lt;h3 id=&quot;网络架构图&quot;&gt;&lt;a href=&quot;#网络架构图&quot; class=&quot;headerlink&quot; title=&quot;网络架构图&quot;&gt;&lt;/a&gt;网络架构图&lt;/h3&gt;&lt;p&gt;master01: 172.16.10.11&lt;/p&gt;
&lt;p&gt;master01: 172.16.10.12&lt;/p&gt;
&lt;p&gt;master01: 172.16.10.13&lt;/p&gt;
&lt;p&gt;外部LB：172.16.10.62&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>k8s增加新ip生成证书</title>
    <link href="https://www.flftuu.com/2023/04/26/k8s%E5%A2%9E%E5%8A%A0%E6%96%B0ip%E7%94%9F%E6%88%90%E8%AF%81%E4%B9%A6/"/>
    <id>https://www.flftuu.com/2023/04/26/k8s%E5%A2%9E%E5%8A%A0%E6%96%B0ip%E7%94%9F%E6%88%90%E8%AF%81%E4%B9%A6/</id>
    <published>2023-04-26T03:50:43.000Z</published>
    <updated>2023-11-07T09:47:33.528Z</updated>
    
    <content type="html"><![CDATA[<h2 id="背景原因"><a href="#背景原因" class="headerlink" title="背景原因"></a>背景原因</h2><p>环境为双网卡环境，默认部署使用单一网卡的ip 证书信任， 另外一网卡ip没做证书信任，现在需要重新生成证书来添加ip信任，让apiserver 支持多ip地址访问</p><h2 id="备份-kubernetes-目录"><a href="#备份-kubernetes-目录" class="headerlink" title="备份 kubernetes 目录"></a>备份 kubernetes 目录</h2><pre><code>cp -r /etc/kubernetes&#123;,-bak&#125;</code></pre><span id="more"></span><h4 id="查看证书内的-ip"><a href="#查看证书内的-ip" class="headerlink" title="查看证书内的 ip"></a>查看证书内的 ip</h4><pre><code>for i in $(find /etc/kubernetes/pki -type f -name &quot;*.crt&quot;);do echo $&#123;i&#125; &amp;&amp; openssl x509 -in $&#123;i&#125; -text | grep &#39;DNS:&#39;;done</code></pre><p>可以看到，只有 apiserver 和 etcd 的证书里面是包含了 ip 的</p><pre><code>root@yusur-62:~# for i in $(find /etc/kubernetes/pki -type f -name &quot;*.crt&quot;);do echo $&#123;i&#125; &amp;&amp; openssl x509 -in $&#123;i&#125; -text | grep &#39;DNS:&#39;;done/etc/kubernetes/pki/etcd/server.crt                DNS:localhost, DNS:yusur-62, IP Address:192.168.28.62, IP Address:127.0.0.1, IP Address:0:0:0:0:0:0:0:1/etc/kubernetes/pki/etcd/peer.crt                DNS:localhost, DNS:yusur-62, IP Address:192.168.28.62, IP Address:127.0.0.1, IP Address:0:0:0:0:0:0:0:1/etc/kubernetes/pki/etcd/healthcheck-client.crt/etc/kubernetes/pki/etcd/ca.crt                DNS:etcd-ca/etc/kubernetes/pki/apiserver.crt                DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, DNS:yusur-62, IP Address:10.86.0.1, IP Address:192.168.28.62/etc/kubernetes/pki/front-proxy-client.crt/etc/kubernetes/pki/apiserver-kubelet-client.crt/etc/kubernetes/pki/front-proxy-ca.crt                DNS:front-proxy-ca/etc/kubernetes/pki/apiserver-etcd-client.crt/etc/kubernetes/pki/ca.crt                DNS:kubernetes</code></pre><h4 id="生成集群配置"><a href="#生成集群配置" class="headerlink" title="生成集群配置"></a>生成集群配置</h4><p>查看集群kubeadm 配置信息</p><pre><code># 查看集群kubeadm 配置信息kubectl -n kube-system get cm kubeadm-config -o jsonpath=&#123;.data.ClusterConfiguration&#125; | tee /root/kubeadm.yamlapiServer:  extraArgs:    authorization-mode: Node,RBAC  timeoutForControlPlane: 4m0sapiVersion: kubeadm.k8s.io/v1beta3certificatesDir: /etc/kubernetes/pkiclusterName: kubernetescontrollerManager: &#123;&#125;dns: &#123;&#125;etcd:  local:    dataDir: /var/lib/etcdimageRepository: registry.aliyuncs.com/google_containerskind: ClusterConfigurationkubernetesVersion: v1.24.10networking:  dnsDomain: cluster.local  podSubnet: 10.123.0.0/16  serviceSubnet: 10.86.0.0/16</code></pre><p>增加新ip</p><pre><code># 编辑配资文件vim /root/kubeadm.yamlapiServer:  # 增加下面的配置，添加master节点多个网卡ip地址  certSANs:  - 192.168.28.62  - 172.16.10.62  # 增加上面的配置  extraArgs:    authorization-mode: Node,RBAC  timeoutForControlPlane: 4m0sapiVersion: kubeadm.k8s.io/v1beta3certificatesDir: /etc/kubernetes/pkiclusterName: kubernetescontrollerManager: &#123;&#125;dns: &#123;&#125;etcd:  local:    dataDir: /var/lib/etcd    # 增加下面的配置，添加master节点多个网卡ip地址    serverCertSANs:    - 192.168.28.62    - 172.16.10.62    # 增加上面的配置imageRepository: registry.aliyuncs.com/google_containerskind: ClusterConfigurationkubernetesVersion: v1.24.10networking:  dnsDomain: cluster.local  podSubnet: 10.123.0.0/16  serviceSubnet: 10.86.0.0/16</code></pre><h2 id="删除原有的证书"><a href="#删除原有的证书" class="headerlink" title="删除原有的证书"></a>删除原有的证书</h2><p>需要保留 ca ，sa，front-proxy 这三个证书</p><pre><code>rm -rf /etc/kubernetes/pki/&#123;apiserver*,front-proxy-client*&#125;rm -rf /etc/kubernetes/pki/etcd/&#123;healthcheck*,peer*,server*&#125;</code></pre><h2 id="重新生成证书"><a href="#重新生成证书" class="headerlink" title="重新生成证书"></a>重新生成证书</h2><h4 id="更新证书"><a href="#更新证书" class="headerlink" title="更新证书"></a>更新证书</h4><pre><code>kubeadm init phase certs all --config /root/kubeadm.yaml</code></pre><h4 id="再次查看证书内的-ip"><a href="#再次查看证书内的-ip" class="headerlink" title="再次查看证书内的 ip"></a>再次查看证书内的 ip</h4><pre><code>for i in $(find /etc/kubernetes/pki -type f -name &quot;*.crt&quot;);do echo $&#123;i&#125; &amp;&amp; openssl x509 -in $&#123;i&#125; -text | grep &#39;DNS:&#39;;done</code></pre><p>这里可以得到验证，不会覆盖之前证书内已经有的 ip，会将新的 ip 追加到后面</p><pre><code>/etc/kubernetes/pki/etcd/server.crt                DNS:localhost, DNS:yusur-62, IP Address:192.168.28.62, IP Address:127.0.0.1, IP Address:0:0:0:0:0:0:0:1, IP Address:172.16.10.62/etc/kubernetes/pki/etcd/peer.crt                DNS:localhost, DNS:yusur-62, IP Address:192.168.28.62, IP Address:127.0.0.1, IP Address:0:0:0:0:0:0:0:1/etc/kubernetes/pki/etcd/healthcheck-client.crt/etc/kubernetes/pki/etcd/ca.crt                DNS:etcd-ca/etc/kubernetes/pki/apiserver.crt                DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, DNS:yusur-62, IP Address:10.86.0.1, IP Address:192.168.28.62, IP Address:172.16.10.62/etc/kubernetes/pki/front-proxy-client.crt/etc/kubernetes/pki/apiserver-kubelet-client.crt/etc/kubernetes/pki/front-proxy-ca.crt                DNS:front-proxy-ca/etc/kubernetes/pki/apiserver-etcd-client.crt/etc/kubernetes/pki/ca.crt                DNS:kubernetes</code></pre><h2 id="将配置更新到CM中"><a href="#将配置更新到CM中" class="headerlink" title="将配置更新到CM中"></a>将配置更新到CM中</h2><p>这样，以后有升级，或者增加其他 ip 时，也会将配置的 CertSANs 的 ip 保留下来，方便以后删减</p><pre><code>kubeadm init phase upload-config kubeadm --config /root/kubeadm.yaml</code></pre>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;背景原因&quot;&gt;&lt;a href=&quot;#背景原因&quot; class=&quot;headerlink&quot; title=&quot;背景原因&quot;&gt;&lt;/a&gt;背景原因&lt;/h2&gt;&lt;p&gt;环境为双网卡环境，默认部署使用单一网卡的ip 证书信任， 另外一网卡ip没做证书信任，现在需要重新生成证书来添加ip信任，让apiserver 支持多ip地址访问&lt;/p&gt;
&lt;h2 id=&quot;备份-kubernetes-目录&quot;&gt;&lt;a href=&quot;#备份-kubernetes-目录&quot; class=&quot;headerlink&quot; title=&quot;备份 kubernetes 目录&quot;&gt;&lt;/a&gt;备份 kubernetes 目录&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;cp -r /etc/kubernetes&amp;#123;,-bak&amp;#125;
&lt;/code&gt;&lt;/pre&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>制作helm chats 包</title>
    <link href="https://www.flftuu.com/2023/04/20/%E5%88%B6%E4%BD%9Chelm-chats-%E5%8C%85/"/>
    <id>https://www.flftuu.com/2023/04/20/%E5%88%B6%E4%BD%9Chelm-chats-%E5%8C%85/</id>
    <published>2023-04-20T09:51:40.000Z</published>
    <updated>2023-11-07T09:47:33.575Z</updated>
    
    <content type="html"><![CDATA[<h2 id="helm3安装方法"><a href="#helm3安装方法" class="headerlink" title="helm3安装方法"></a>helm3安装方法</h2><h4 id="使用脚本安装"><a href="#使用脚本安装" class="headerlink" title="使用脚本安装"></a>使用脚本安装</h4><p>Helm现在有个安装脚本可以自动拉取最新的Helm版本并在 <a href="https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3">本地安装</a>。</p><p>您可以获取这个脚本并在本地执行。它良好的文档会让您在执行之前知道脚本都做了什么。</p><pre><code>curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3chmod 700 get_helm.sh./get_helm.sh</code></pre><p>如果想直接执行安装，运行curl <a href="https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3">https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3</a> | bash。</p><span id="more"></span><h4 id="通过包管理器安装"><a href="#通过包管理器安装" class="headerlink" title="通过包管理器安装"></a>通过包管理器安装</h4><p>Helm社区成员贡献了针对Apt的一个 helm包通常是最新的。</p><pre><code>curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg &gt; /dev/nullsudo apt-get install apt-transport-https --yesecho &quot;deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main&quot; | sudo tee /etc/apt/sources.list.d/helm-stable-debian.listsudo apt-get updatesudo apt-get install helm</code></pre><p>参考文档：<a href="https://helm.sh/zh/docs/">https://helm.sh/zh/docs/</a></p><h4 id="helm操作命令"><a href="#helm操作命令" class="headerlink" title="helm操作命令"></a>helm操作命令</h4><p>添加公共仓库</p><pre><code># 也可以换成微软的源，速度快，内容和官方同步的 helm repo add stable http://mirror.azure.cn/kubernetes/charts              helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts</code></pre><p>查看仓库</p><pre><code>helm repo lsNAME      URL                                                   my-repo   https://charts.bitnami.com/bitnami                    yusur-repohttp://10.2.20.7:8081                                 harbor    https://harbor.yusur.tech/chartrepo/leid              stable    http://mirror.azure.cn/kubernetes/charts              aliyun    https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts</code></pre><h4 id="helm安装插件"><a href="#helm安装插件" class="headerlink" title="helm安装插件"></a>helm安装插件</h4><p>安装push插件</p><pre><code>helm plugin install https://github.com/chartmuseum/helm-pushDownloading and installing helm-push v0.10.3 ...https://github.com/chartmuseum/helm-push/releases/download/v0.10.3/helm-push_0.10.3_darwin_arm64.tar.gzInstalled plugin: cm-push</code></pre><h2 id="制作helm包"><a href="#制作helm包" class="headerlink" title="制作helm包"></a>制作helm包</h2><h4 id="创建chart包"><a href="#创建chart包" class="headerlink" title="创建chart包"></a>创建chart包</h4><pre><code># 创建新chart包helm create mychartCreating mychart</code></pre><h2 id="搭建私有helm仓库"><a href="#搭建私有helm仓库" class="headerlink" title="搭建私有helm仓库"></a>搭建私有helm仓库</h2><p>Chartmuseum 除了给我们提供一个类似于web服务器的功能之外，还提供了其他有用的功能，便于日常我们私有仓库的管理。</p><ul><li><p>根据chart文件自动生成index.yaml(无须使用helm repo index手动生成)</p></li><li><p>helm push的插件，可以在helm命令之上实现将chart文件推送到chartmuseum上</p></li><li><p>相应的tls配置，Basic认证，JWT认证（Bearer token认证）</p></li><li><p>提供了Restful的api（可以使用curl命令操作）和可以使用的cli命令行工具</p></li><li><p>提供了各种后端存储的支持（Amazon s3, Google Cloud Storage, 阿里、百度、腾讯，开源对象存储等）</p></li><li><p>提供了Prometheus的集成，对外提供自己的监控信息。</p></li><li><p>没有用户的概念，但是基于目录实现了一定程度上的多租户的需求。</p></li></ul><h4 id="Chartmuseum-搭建"><a href="#Chartmuseum-搭建" class="headerlink" title="Chartmuseum 搭建"></a>Chartmuseum 搭建</h4><p>直接使用最简单的 docker run 方式，使用local 本地存储方式，通过 -v 映射到宿主机 &#x2F;opt&#x2F;charts</p><p>更多支持安装方式见官网</p><pre><code>mkdir /opt/chartsdocker run -d \  --name chartmuseum \  -u 0:0 \  -p 8081:8080 \  -e DEBUG=1 \  -e STORAGE=local \  -e STORAGE_LOCAL_ROOTDIR=/charts \  -v /opt/charts:/charts \  chartmuseum/chartmuseum:latest# 使用 curl 测试下接口，没有报错就行，当前仓库内容还是空的# curl localhost:8081/api/charts&#123;&#125;</code></pre><h4 id="添加私有仓库Chartmuseum"><a href="#添加私有仓库Chartmuseum" class="headerlink" title="添加私有仓库Chartmuseum"></a>添加私有仓库Chartmuseum</h4><pre><code>helm repo add yusur-repo http://10.2.20.7:8081</code></pre><h4 id="cm-push-chats包到Chartmuseum"><a href="#cm-push-chats包到Chartmuseum" class="headerlink" title="cm-push chats包到Chartmuseum"></a>cm-push chats包到Chartmuseum</h4><pre><code># 添加cm-push 插件helm plugin install https://github.com/chartmuseum/helm-push# 使用cm-push上传chat 包helm cm-push mariadb-11.5.7.tgz yusur-repo# 使用cm-push上传chat 目录helm cm-push ./mychart yusur-repo</code></pre><h2 id="复用harbor仓库"><a href="#复用harbor仓库" class="headerlink" title="复用harbor仓库"></a>复用harbor仓库</h2><p>harbor自带helm私有仓库的功能，不需要再部署一个helm私有仓库，在这里给大家介绍一下helm如何上传chart包到harbor</p><h4 id="cm-push-chats包到harbor"><a href="#cm-push-chats包到harbor" class="headerlink" title="cm-push chats包到harbor"></a>cm-push chats包到harbor</h4><p>添加私有仓库harbor</p><pre><code># 添加repohelm repo add harbor https://harbor.yusur.tech/chartrepo/library --username xxx --password xxx# 使用cm-push 命令 上传chat包helm cm-push mariadb-11.5.7.tgz harbor# 上传cm-push chat目录helm cm-push ./mychart harbor</code></pre><h4 id="push-chats包到harbor"><a href="#push-chats包到harbor" class="headerlink" title="push chats包到harbor"></a>push chats包到harbor</h4><p>使用oci协议</p><pre><code># 登录到注册中心helm registry login -u leid harbor.yusur.tech -p xxxxxx# 使用push 命令上传chat包helm push mychart-0.1.0.tgz oci://harbor.yusur.tech/leid# 使用pull 下载包helm pull oci://harbor.yusur.tech/leid/mychart --version 0.1.0# 查看chat 信息helm show all oci://harbor.yusur.tech/leid/mychart --version 0.1.0</code></pre>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;helm3安装方法&quot;&gt;&lt;a href=&quot;#helm3安装方法&quot; class=&quot;headerlink&quot; title=&quot;helm3安装方法&quot;&gt;&lt;/a&gt;helm3安装方法&lt;/h2&gt;&lt;h4 id=&quot;使用脚本安装&quot;&gt;&lt;a href=&quot;#使用脚本安装&quot; class=&quot;headerlink&quot; title=&quot;使用脚本安装&quot;&gt;&lt;/a&gt;使用脚本安装&lt;/h4&gt;&lt;p&gt;Helm现在有个安装脚本可以自动拉取最新的Helm版本并在 &lt;a href=&quot;https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3&quot;&gt;本地安装&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;您可以获取这个脚本并在本地执行。它良好的文档会让您在执行之前知道脚本都做了什么。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;如果想直接执行安装，运行curl &lt;a href=&quot;https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3&quot;&gt;https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3&lt;/a&gt; | bash。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="helm" scheme="https://www.flftuu.com/tags/helm/"/>
    
  </entry>
  
  <entry>
    <title>构建多种系统架构容器镜像</title>
    <link href="https://www.flftuu.com/2023/04/14/%E6%9E%84%E5%BB%BA%E5%A4%9A%E7%A7%8D%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F/"/>
    <id>https://www.flftuu.com/2023/04/14/%E6%9E%84%E5%BB%BA%E5%A4%9A%E7%A7%8D%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F/</id>
    <published>2023-04-14T08:49:16.000Z</published>
    <updated>2023-11-07T09:47:33.582Z</updated>
    
    <content type="html"><![CDATA[<h2 id="背景目的"><a href="#背景目的" class="headerlink" title="背景目的"></a>背景目的</h2><p>构建同一个镜像支持amd和arm平台</p><span id="more"></span><h2 id="方法一"><a href="#方法一" class="headerlink" title="方法一"></a>方法一</h2><h4 id="前提条件"><a href="#前提条件" class="headerlink" title="前提条件"></a>前提条件</h4><pre><code># 设置docker 参数export DOCKER_CLI_EXPERIMENTAL=enabled</code></pre><h4 id="登入amd机器上编译和制作镜像"><a href="#登入amd机器上编译和制作镜像" class="headerlink" title="登入amd机器上编译和制作镜像"></a>登入amd机器上编译和制作镜像</h4><pre><code>OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-amd64# build 镜像docker build --build-arg BUILDPLATFORM=linux/amd64 --build-arg TARGETPLATFORM=linux/amd64 -t $OVN_IMAGE -f Dockerfile.fedora .# push 镜像docker push $OVN_IMAGE</code></pre><h4 id="登入arm机器上编译和制作镜像"><a href="#登入arm机器上编译和制作镜像" class="headerlink" title="登入arm机器上编译和制作镜像"></a>登入arm机器上编译和制作镜像</h4><pre><code>OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-aarch64# build 镜像docker build --build-arg BUILDPLATFORM=linux/aarch64 --build-arg TARGETPLATFORM=linux/aarch64 -t $OVN_IMAGE -f Dockerfile.fedora .# push 镜像docker push $OVN_IMAGE</code></pre><h4 id="创建镜像manifest"><a href="#创建镜像manifest" class="headerlink" title="创建镜像manifest"></a>创建镜像manifest</h4><pre><code># 创建 manifest 列表OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cniOVN_IMAGE_AMD64=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-amd64OVN_IMAGE_ARM64=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-aarch64# 当要修改一个 manifest 列表时，可以加入 -a 或 --amend 参数docker manifest create $OVN_IMAGE $OVN_IMAGE_AMD64 $OVN_IMAGE_ARM64# 推送 manifest 列表docker manifest push $OVN_IMAGE</code></pre><h4 id="设置-manifest-列表"><a href="#设置-manifest-列表" class="headerlink" title="设置 manifest 列表"></a>设置 manifest 列表</h4><pre><code># 设置 manifest 列表OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cniOVN_IMAGE_AMD64=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-amd64OVN_IMAGE_ARM64=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-aarch64docker manifest annotate $OVN_IMAGE $OVN_IMAGE_AMD64 --os linux --arch x86_64docker manifest annotate $OVN_IMAGE $OVN_IMAGE_ARM64 --os linux --arch arm64 --variant v8</code></pre><h4 id="查看-manifest-列表"><a href="#查看-manifest-列表" class="headerlink" title="查看 manifest 列表"></a>查看 manifest 列表</h4><pre><code># 查看 manifest 列表OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cnidocker manifest inspect $OVN_IMAGE# 输出如下信息&#123;   &quot;schemaVersion&quot;: 2,   &quot;mediaType&quot;: &quot;application/vnd.docker.distribution.manifest.list.v2+json&quot;,   &quot;manifests&quot;: [      &#123;         &quot;mediaType&quot;: &quot;application/vnd.docker.distribution.manifest.v2+json&quot;,         &quot;size&quot;: 4902,         &quot;digest&quot;: &quot;sha256:8ed550698e5dabaee8dbafaf9a4c41f7173fe2aaf17437cd7fc4a8b163983e31&quot;,         &quot;platform&quot;: &#123;            &quot;architecture&quot;: &quot;arm64&quot;,            &quot;os&quot;: &quot;linux&quot;         &#125;      &#125;,      &#123;         &quot;mediaType&quot;: &quot;application/vnd.docker.distribution.manifest.v2+json&quot;,         &quot;size&quot;: 4899,         &quot;digest&quot;: &quot;sha256:4c59e7cb42177d9a7aadc476dbf5bf88448bd3097ad763f8ff70753934ec3b16&quot;,         &quot;platform&quot;: &#123;            &quot;architecture&quot;: &quot;amd64&quot;,            &quot;os&quot;: &quot;linux&quot;         &#125;      &#125;   ]&#125;</code></pre><h2 id="方法二"><a href="#方法二" class="headerlink" title="方法二"></a>方法二</h2><p><em><strong>使用amd架构的docker和arm架构的docker 两种docker 整合成一个docker编译平台</strong></em></p><h4 id="docker远程"><a href="#docker远程" class="headerlink" title="docker远程"></a>docker远程</h4><p>编辑 &#x2F;usr&#x2F;lib&#x2F;systemd&#x2F;system&#x2F;docker.service文件</p><p>在如下位置添加 -H tcp:<em>&#x2F;&#x2F;0.0.0.0:2375</em></p><p><img src="/2023/04/14/%E6%9E%84%E5%BB%BA%E5%A4%9A%E7%A7%8D%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F/1.png" alt="image"></p><p>重启docker</p><pre><code>systemctl daemon-reloadsystemctl restart docker</code></pre><p>测试连接</p><pre><code>curl http://localhost:2375/version</code></pre><p>使用 docker buildx 构建跨平台 容器镜像。</p><p>默认的 docker build 命令无法完成跨平台构建任务，我们需要为 docker 命令行安装 buildx 插件扩展其功能。buildx 能够使用由 <a href="https://github.com/moby/buildkit">Moby BuildKit</a> 提供的构建镜像额外特性，它能够创建多个 builder 实例，在多个节点并行地执行构建任务，以及跨平台构建。</p><h4 id="buildx启用"><a href="#buildx启用" class="headerlink" title="buildx启用"></a>buildx启用</h4><p>macOS 或 Windows 系统的 Docker Desktop，以及 Linux 发行版通过 deb 或者 rpm 包所安装的 docker 内置了 buildx，不需要另行安装。</p><p>如果 docker 没有 buildx 命令，可以下载二进制包进行安装：</p><ol><li><p>首先从 <a href="https://github.com/docker/buildx/releases/latest">Docker buildx</a> 项目的 release 页面找到适合自己平台的二进制文件。</p></li><li><p>下载二进制文件到本地并重命名为 docker-buildx，移动到 docker 的插件目录 ~&#x2F;.docker&#x2F;cli-plugins 或者 &#x2F;usr&#x2F;libexec&#x2F;docker&#x2F;cli-plugins 目录。</p></li><li><p>向二进制文件授予可执行权限。</p></li></ol><p>如果本地的 docker 版本高于 19.03，可以通过以下命令直接在本地构建并安装，这种方式更为方便：</p><pre><code>DOCKER_BUILDKIT=1 docker build --platform=local -o . &quot;https://github.com/docker/buildx.git&quot;mkdir -p ~/.docker/cli-pluginsmv buildx ~/.docker/cli-plugins/docker-buildx</code></pre><p>使用 buildx 进行构建的方法如下：</p><pre><code># docker 20.X 以下版本需要开启环境变量export DOCKER_CLI_EXPERIMENTAL=enabled# 查看docker 是否支持buildxdocker info | grep buildx  buildx: Docker Buildx (Docker Inc., v0.10.4)# buildx 进行构建的方法cdocker buildx build .</code></pre><p>buildx 和 docker build 命令的使用体验基本一致，还支持 build 常用的选项如 -t、-f等。</p><h4 id="buildx实例"><a href="#buildx实例" class="headerlink" title="buildx实例"></a>buildx实例</h4><p>docker buildx 通过 builder 实例对象来管理构建配置和节点，命令行将构建任务发送至 builder 实例，再由 builder 指派给符合条件的节点执行。我们可以基于同一个 docker 服务程序创建多个 builder 实例，提供给不同的项目使用以隔离各个项目的配置，也可以为一组远程 docker 节点创建一个 builder 实例组成构建阵列，并在不同阵列之间快速切换。</p><p>使用 docker buildx create 命令可以创建 builder 实例，这将以当前使用的 docker 服务为节点创建一个新的 builder 实例。要使用一个远程节点，可以在创建示例时通过 DOCKER_HOST 环境变量指定远程端口或提前切换到远程节点的 docker context。</p><p>下面首先以当前节点创建一个新的 builder 实例，并通过命令行选项指定实例名称、驱动以及当前节点的目标平台：</p><pre><code># docker 20.X 以下版本需要开启环境变量export DOCKER_CLI_EXPERIMENTAL=enabled# 创建新builder 实例 multi-builderdocker buildx create --driver docker-container --platform linux/amd64 --name multi-buildermulti-builder# 添加远程arm平台的buidlerexport DOCKER_HOST=tcp://192.168.100.2:2375 #(前提：远程docker开启远程访问)docker buildx create --name multi-builder --append --node remote-builder#启动新buidler实例 multi-builder[root@yusur-53 test]#docker buildx inspect --bootstrap multi-builderName:          multi-builderDriver:        docker-containerLast Activity: 2023-04-14 09:59:15 +0000 UTCNodes:Name:      multi-builder0Endpoint:  unix:///var/run/docker.sockStatus:    runningBuildkit:  v0.9.3Platforms: linux/amd64, linux/386Name:      remote-builderEndpoint:  tcp://192.168.100.2:2375Status:    runningBuildkit:  v0.11.5Platforms: linux/arm64, linux/arm/v7, linux/arm/v6# 查看现有builder所有实例[root@yusur-53 test]#docker buildx lsNAME/NODE        DRIVER/ENDPOINT             STATUS  BUILDKIT PLATFORMSmulti-builder *  docker-container                               multi-builder0 unix:///var/run/docker.sock running v0.9.3   linux/amd64, linux/386  remote-builder tcp://192.168.100.2:2375    running v0.11.5  linux/arm64, linux/arm/v7, linux/arm/v6default          docker                                         default        default                     running 20.10.12 linux/arm64, linux/arm/v7, linux/arm/v6</code></pre><p>启用新builder 实例</p><pre><code># 启用后才能使用 multi-builder 多架构编译镜像docker buildx use multi-builder</code></pre><h4 id="buildx构建"><a href="#buildx构建" class="headerlink" title="buildx构建"></a>buildx构建</h4><p>构建单个arm镜像</p><pre><code># 构建arm的镜像到本地OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-aarch64docker buildx build --build-arg BUILDPLATFORM=linux/aarch64 --build-arg TARGETPLATFORM=linux/aarch64  --platform=linux/arm64 -t $OVN_IMAGE -o type=docker -f Dockerfile.fedora .</code></pre><p>构建单个amd镜像</p><pre><code># 构建amd的镜像到本地OVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cni-amd64docker buildx build --build-arg BUILDPLATFORM=linux/amd64 --build-arg TARGETPLATFORM=linux/amd64  --platform=linux/amd64 -t $OVN_IMAGE -o type=docker -f Dockerfile.fedora .</code></pre><p>构建多种arm, amd镜像</p><pre><code>#编译完成后就直接push到hubOVN_IMAGE=harbor.yusur.tech/yusur_ovn/ovn-daemonset-f:second-cnidocker buildx build --push --platform linux/arm64,linux/amd64 -t $OVN_IMAGE -f Dockerfile.fedora .</code></pre><h4 id="go代码例子"><a href="#go代码例子" class="headerlink" title="go代码例子"></a>go代码例子</h4><pre><code>cat &lt;&lt;EOF &gt; demo.gopackage mainimport (    &quot;fmt&quot;    &quot;log&quot;    &quot;net/http&quot;)func listenServer() &#123;    http.Handle(&quot;/&quot;, http.HandlerFunc(lServe))    http.ListenAndServe(&quot;:8080&quot;, nil)&#125;func lServe(w http.ResponseWriter, r *http.Request) &#123;    log.Println(&quot;response success&quot;)    fmt.Fprintln(w, &quot;hello world&quot;)&#125;func main() &#123;    listenServer()&#125;EOF# 编写Dockerfilecat &lt;&lt;EOF &gt; Dockerfile# Build the manager binaryFROM golang:1.19 as builderMAINTAINER leidWORKDIR /workspaceADD . ./ENV GO111MODULE=onENV GOPROXY=&quot;https://goproxy.io&quot;RUN go build -o demo demo.goFROM alpine:latestWORKDIR /COPY --from=builder /workspace/demo .EXPOSE 8080ENTRYPOINT [&quot;/demo&quot;]EOF</code></pre><p>编译该代码</p><pre><code># 编译镜像docker buildx build --push --platform linux/arm64,linux/amd64 -t harbor.yusur.tech/leid/demo:latest .# 查看镜像digestsdocker buildx imagetools inspect harbor.yusur.tech/leid/demo:latestName:      docker.io/flftuu/demo:latestMediaType: application/vnd.docker.distribution.manifest.list.v2+jsonDigest:    sha256:d2bfa8696da0f3e8e4bfe8d4f1b23c1e10dbb7e1dbea7dcfa59a851ae7a8fb8c           Manifests:   Name:      docker.io/flftuu/demo:latest@sha256:58c51a62aa94b9d138d39fdb79759d41a7b04f8c4d8c4901ebbf7ed16363e6a2  MediaType: application/vnd.docker.distribution.manifest.v2+json  Platform:  linux/arm64               Name:      docker.io/flftuu/demo:latest@sha256:00ec9b7455915a9b70c9ffa316326147c1a2225b5bd014367a4cdf97984f0916  MediaType: application/vnd.docker.distribution.manifest.v2+json  Platform:  linux/amd64</code></pre><h2 id="方法三"><a href="#方法三" class="headerlink" title="方法三"></a>方法三</h2><h4 id="binfmt-misc启用"><a href="#binfmt-misc启用" class="headerlink" title="binfmt_misc启用"></a>binfmt_misc启用</h4><p>如果你使用的是 Docker 桌面版（MacOS 和 Windows），默认已经启用了 binfmt_misc，可以跳过这一步。</p><p>如果你使用的是 Linux，需要手动启用 binfmt_misc。大多数 Linux 发行版都很容易启用，不过还有一个更容易的办法，直接运行一个特权容器，容器里面写好了设置脚本：</p><pre><code>$ docker run --rm --privileged docker/binfmt:a7996909642ee92942dcd6cff44b9b95f08dad64</code></pre><p>验证是 binfmt_misc 否开启：</p><pre><code>[root@centos8~]$ ls -al /proc/sys/fs/binfmt_misc/  total 0drwxr-xr-x 2 root root 0 Jun 16 18:46 .dr-xr-xr-x 1 root root 0 Jun  5 21:42 ..-rw-r--r-- 1 root root 0 Jun 16 19:22 qemu-aarch64-rw-r--r-- 1 root root 0 Jun 16 19:22 qemu-arm-rw-r--r-- 1 root root 0 Jun 16 19:22 qemu-ppc64le-rw-r--r-- 1 root root 0 Jun 16 19:22 qemu-riscv64-rw-r--r-- 1 root root 0 Jun 16 19:22 qemu-s390x--w------- 1 root root 0 Jun 16 18:46 register-rw-r--r-- 1 root root 0 Jun 16 18:46 status</code></pre><p>验证是否启用了相应的处理器：</p><pre><code>[root@centos8 ~]$ cat /proc/sys/fs/binfmt_misc/qemu-aarch64  enabledinterpreter /usr/bin/qemu-aarch64flags: OCFoffset 0magic 7f454c460201010000000000000000000200b7mask ffffffffffffff00fffffffffffffffffeffff</code></pre><p><strong>注意</strong></p><p>请将 Linux 内核版本升级到 4.x 以上，特别是 CentOS7 用户。</p><p>centos7 用户可以用以下命令开启</p><pre><code>$ docker run --rm --privileged multiarch/qemu-user-static:register --reset$ cat /proc/sys/fs/binfmt_misc/qemu-aarch64enabledinterpreter /usr/bin/qemu-aarch64-staticflags: offset 0magic 7f454c460201010000000000000000000200b700mask ffffffffffffff00fffffffffffffffffeffffff$ docker create -it --name dummy multiarch/qemu-user-static:x86_64-aarch64 bash$ docker container ls -aCONTAINER ID        IMAGE                                       COMMAND             CREATED             STATUS              PORTS               NAMES6ab622a76dfa        multiarch/qemu-user-static:x86_64-aarch64   &quot;bash&quot;              3 minutes ago       Created                                 dummy$ docker cp dummy:/usr/bin/qemu-aarch64-static qemu-aarch64-static$ ls qemu-aarch64-staticqemu-aarch64-static*$ docker rm -f dummy$ docker container ls -aCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES$ docker run --rm -t -v $(pwd)/qemu-aarch64-static:/usr/bin/qemu-aarch64-static arm64v8/ubuntu uname -maarch64docker run --rm --privileged multiarch/qemu-user-static:register --reset</code></pre><h4 id="切换多平台构建器"><a href="#切换多平台构建器" class="headerlink" title="切换多平台构建器"></a>切换多平台构建器</h4><p>由于 Docker 默认的 builder 实例不支持同时指定多个 --platform，我们必须首先创建一个新的 builder 实例手动替换</p><pre><code>docker buildx create --use --name multi-builder</code></pre><p>启动构建器：</p><pre><code>root@master01:/tmp# docker buildx inspect multi-builder --bootstrap[+] Building 2.7s (1/1) FINISHED                                                                                                                                       =&gt; [internal] booting buildkit                                                                                                                                  2.7s =&gt; =&gt; pulling image moby/buildkit:buildx-stable-1                                                                                                               2.3s =&gt; =&gt; creating container buildx_buildkit_multi-builder0                                                                                                         0.4sName:          multi-builderDriver:        docker-containerLast Activity: 2023-04-17 03:08:42 +0000 UTCNodes:Name:      multi-builder0Endpoint:  unix:///var/run/docker.sockStatus:    runningBuildkit:  v0.11.5Platforms: linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6</code></pre><p>查看当前使用的构建器及构建器支持的 CPU 架构，可以看到支持很多 CPU 架构：</p><pre><code>root@master01:/tmp# docker buildx lsNAME/NODE        DRIVER/ENDPOINT             STATUS  BUILDKIT PLATFORMSmulti-builder *  docker-container                               multi-builder0 unix:///var/run/docker.sock running v0.11.5  linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6default          docker                                         default        default                     running 23.0.3   linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/arm/v7, linux/arm/v6</code></pre><h4 id="构建多平台镜像"><a href="#构建多平台镜像" class="headerlink" title="构建多平台镜像"></a>构建多平台镜像</h4><p>新建 Dockerfile 文件,将该应用容器化</p><pre><code>FROM --platform=$TARGETPLATFORM alpineRUN uname -a &gt; /os.txtCMD cat /os.txt</code></pre><p>现在就可以使用 buildx 构建一个支持 arm、arm64 和 amd64 多架构的 Docker 镜像了，同时将其推送到 <a href="https://hub.docker.com/">Docker Hub</a>：</p><p>--push 参数表示将构建好的镜像推送到 Docker 仓库。</p><p>提前使用docker login 命令登录认证 Docker Hub</p><pre><code>docker buildx build --platform linux/arm,linux/arm64,linux/amd64 -t flftuu/demo . --push# 查看镜像信息docker buildx imagetools inspect flftuu/demo</code></pre><p>背后的原理也很简单，之前已经提到过了，buildx 会通过</p><p>QEMU 和 binfmt_misc 分别为 3 个不同的 CPU 架构（arm，arm64 和 amd64）构建 3 个不同的镜像。构建完成后，就会创建一个 <a href="https://docs.docker.com/engine/reference/commandline/manifest/">manifest list</a>，其中包含了指向这 3 个镜像的指针。</p><p>如果想将构建好的镜像保存在本地，可以将</p><p>type 指定为 docker，但必须分别为不同的 CPU 架构构建不同的镜像，不能合并成一个镜像，即：</p><pre><code>docker buildx build -t hello-arch:arm --platform=linux/arm -o type=docker .docker buildx build -t hello-arch:arm64 --platform=linux/arm64 -o type=docker .docker buildx build -t hello-arch:amd64 --platform=linux/amd64 -o type=docker .</code></pre><h4 id="测试多平台镜像"><a href="#测试多平台镜像" class="headerlink" title="测试多平台镜像"></a>测试多平台镜像</h4><p>由于之前已经启用了 binfmt_misc，现在我们就可以运行任何 CPU 架构的 Docker 镜像了，因此可以在本地系统上测试之前生成的 3 个镜像是否有问题。</p><pre><code># arm$ docker run -it --rm hello-arch:armLinux buildkitsandbox 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 armv7l Linux# arm64$ docker run -it --rm hello-arch:arm64Linux buildkitsandbox 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 aarch64 Linux# amd64$ docker run -it --rm hello-arch:amd64 Linux buildkitsandbox 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 Linux</code></pre>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;背景目的&quot;&gt;&lt;a href=&quot;#背景目的&quot; class=&quot;headerlink&quot; title=&quot;背景目的&quot;&gt;&lt;/a&gt;背景目的&lt;/h2&gt;&lt;p&gt;构建同一个镜像支持amd和arm平台&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="docker" scheme="https://www.flftuu.com/tags/docker/"/>
    
  </entry>
  
  <entry>
    <title>ovn的acl用法</title>
    <link href="https://www.flftuu.com/2023/04/10/ovn%E7%9A%84acl%E7%94%A8%E6%B3%95/"/>
    <id>https://www.flftuu.com/2023/04/10/ovn%E7%9A%84acl%E7%94%A8%E6%B3%95/</id>
    <published>2023-04-10T09:47:34.000Z</published>
    <updated>2023-11-07T09:47:33.545Z</updated>
    
    <content type="html"><![CDATA[<h1 id="ovn实现ACL"><a href="#ovn实现ACL" class="headerlink" title="ovn实现ACL"></a>ovn实现ACL</h1><p><strong>第一种方法通过k8s标准资源networkpolicy实现ACL（推荐使用）</strong></p><p><strong>什么是网络策略？</strong></p><p>首先NetworkPolicy是k8s的一种resource，可以通过以下三种维度对整个namespace或单一POD进行隔离：pod（允许某些pod访问）、namespace（允许某些namespace访问）、ip段（CIDR，但是pod所运行node节点始终可以访问该pod）当定义基于pod和namespace的NetworkPolicy时，需要根据标签来选择对应的pod或者namespace。</p><p>另外当需要使用NetworkPolicy资源时，k8s集群采用的网络插件必须支持，比如ovn-kubernetes等等</p><span id="more"></span><p><strong>隔离和非隔离pod</strong></p><p>默认情况所有的pod都是非隔离的，当pod被NetworkPolicy选择后，那么pod就是一个隔离的pod，出栈和入栈都要遵循NetworkPolicy的策略，并且如果有多个NetworkPolicy时，他们是叠加的而不是冲突的。</p><p>限制一个pod的NetworkPolicy需要从两个方向去考虑：ingress和egress。ingress表示入方向，egress表示出方向。</p><p><strong>基于namespace的网络策略</strong></p><p>以下yaml文件代表在app下创建一个NetworkPolicy资源，该策略作用在所有被打了app&#x3D;nginx-test标签的pod，策略内容为只接受来自namespace为app的访问。</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: ns-network-policy</p><p>  namespace: app</p><p>spec:　</p><p>  #定义策略的类型：值是一个列表，支持Ingress和Egress两种，默认Egress不做任何限制</p><p>  policyTypes: [“Ingress”]</p><p>  #表示该策略作用的pod，以标签匹配，当该值是一个{}空字典时，代表所有POD</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: nginx-test</p><p>  #以下表示ingress策略</p><p>  ingress:</p><p>    - from:</p><p>       - namespaceSelector:</p><p>          matchLabels:</p><p>            kubernetes.io&#x2F;metadata.name: app</p><p><strong>基于POD的网络策略</strong></p><p>以下yaml文件策略表示：允许带有app&#x3D;nginx-test2的所有pod访问app&#x3D;nginx-test的pod</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: ns-network-policy1</p><p>  namespace: app</p><p>spec:</p><p>  policyTypes: [“Ingress”]</p><p>  podSelector: </p><p>    matchLabels:</p><p>      app: nginx-test</p><p>  ingress:</p><p>    - from:</p><p>       - podSelector: </p><p>          matchLabels:</p><p>            app: nginx-test2</p><p><strong>基于IP段的网络策略</strong></p><p>以下yaml文件表示策略为：允许10.244.0.0&#x2F;16段但是不包括10.244.1.0&#x2F;24来访问带有app&#x3D;nginx-test的pod</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: ns-network-policy</p><p>  namespace: olda</p><p>spec:</p><p>  policyTypes: [“Ingress”]</p><p>  podSelector: </p><p>    matchLabels:</p><p>      app: nginx-test</p><p>  ingress:</p><p>    - from:</p><p>       - ipBlock: </p><p>          cidr: 10.244.0.0&#x2F;16</p><p>          except:</p><p>          - 10.244.1.0&#x2F;24</p><p><strong>关于端口号的限制</strong></p><p><strong>单个端口号，只允许app名称空间下的pod连接80端口，具体策略如下</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: test-network-policy</p><p>  namespace: app</p><p>spec:</p><p>  policyTypes: [“Ingress”]</p><p>  podSelector: </p><p>    matchLabels:</p><p>      app: test</p><p>  ingress:</p><p>    - from:</p><p>       - namespaceSelector: </p><p>          matchLabels:</p><p>            kubernetes.io&#x2F;metadata.name: app</p><p>      ports:</p><p>      - protocol: TCP</p><p>        port: 80</p><p><strong>多个端口号，在网络策略里增加3306端口</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: test-network-policy</p><p>  namespace: app</p><p>spec:</p><p>  policyTypes: [“Ingress”]</p><p>  podSelector: </p><p>    matchLabels:</p><p>      app: test</p><p>  ingress:</p><p>    - from:</p><p>       - namespaceSelector: </p><p>          matchLabels:</p><p>            kubernetes.io&#x2F;metadata.name: app</p><p>      ports:</p><p>      - protocol: TCP</p><p>        port: 80</p><p>      - protocol: TCP</p><p>        port: 3306</p><p><strong>常用的网络策略具体yaml文件示例</strong></p><p><strong>拒绝所有入站流量，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: default-deny-ingress</p><p>spec:</p><p>  podSelector: {}</p><p>  policyTypes:</p><p>  - Ingress</p><p>这确保即使没有被任何其他 NetworkPolicy 选择的 Pod 仍将被隔离以进行入口。 此策略不影响任何 Pod 的出口隔离。</p><p><strong>允许所有入站流量，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: allow-all-ingress</p><p>spec:</p><p>  podSelector: {}</p><p>  ingress:</p><p>  - {}</p><p>  policyTypes:</p><p>  - Ingress</p><p>有了这个策略，任何额外的策略都不会导致到这些 Pod 的任何入站连接被拒绝。 此策略对任何 Pod 的出口隔离没有影响。</p><p><strong>拒绝所有出站流量，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: default-deny-egress</p><p>spec:</p><p>  podSelector: {}</p><p>  policyTypes:</p><p>  - Egress</p><p>此策略可以确保即使没有被其他任何 NetworkPolicy 选择的 Pod 也不会被允许流出流量。 此策略不会更改任何 Pod 的入站流量隔离行为。</p><p><strong>允许所有出战流量，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: allow-all-egress</p><p>spec:</p><p>  podSelector: {}</p><p>  egress:</p><p>  - {}</p><p>  policyTypes:</p><p>  - Egress</p><p><strong>拒绝所有入站和出站流量，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: default-deny-all</p><p>spec:</p><p>  podSelector: {}</p><p>  policyTypes:</p><p>  - Ingress</p><p>  - Egress</p><p><strong>限制特定的pod访问，具体yaml文件示例：</strong></p><p>kind: NetworkPolicy</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>metadata:</p><p>  name: app-test</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: bookstore</p><p>      role: api</p><p>  ingress:</p><p>  - from:</p><p>      - podSelector:</p><p>          matchLabels:</p><p>            app: bookstore</p><p><strong>允许所有的namespace访问pod，具体yaml文件示例：</strong></p><p>kind: NetworkPolicy</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>metadata:</p><p>  namespace: default</p><p>  name: web-allow-all-namespaces</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: web</p><p>  ingress:</p><p>  - from:</p><p>    - namespaceSelector: {}</p><p><strong>允许特定的namespace访问pod，具体yaml文件示例：</strong></p><p>kind: NetworkPolicy</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>metadata:</p><p>  name: web-allow-prod</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: web</p><p>  ingress:</p><p>  - from:</p><p>    - namespaceSelector:</p><p>        matchLabels:</p><p>          purpose: production</p><p><strong>根据namespace和pod相结合的策略允许pod访问，具体yaml文件示例：</strong></p><p>kind: NetworkPolicy</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>metadata:</p><p>  name: web-allow-all-ns-monitoring</p><p>  namespace: default</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: web</p><p>  ingress:</p><p>    - from:</p><p>      - namespaceSelector:     # chooses all pods in namespaces labelled with team&#x3D;operations</p><p>          matchLabels:</p><p>            team: operations  </p><p>        podSelector:           # chooses pods with type&#x3D;monitoring</p><p>          matchLabels:</p><p>            type: monitoring</p><p><strong>根据特定的pod和port结合策略允许访问pod，具体yaml文件示例：</strong></p><p>kind: NetworkPolicy</p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>metadata:</p><p>  name: api-allow-5000</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: apiserver</p><p>  ingress:</p><p>  - ports:</p><p>    - port: 5000</p><p>    from:</p><p>    - podSelector:</p><p>        matchLabels:</p><p>          role: monitoring</p><p><strong>限制访问外部的流量，但可以访问DNS，具体yaml文件示例：</strong></p><p>apiVersion: networking.k8s.io&#x2F;v1</p><p>kind: NetworkPolicy</p><p>metadata:</p><p>  name: foo-deny-egress</p><p>spec:</p><p>  podSelector:</p><p>    matchLabels:</p><p>      app: foo</p><p>  policyTypes:</p><p>  - Egress</p><p>  egress:</p><p>  # allow DNS resolution</p><p>  - to:</p><p>    - namespaceSelector:</p><p>        matchLabels:</p><p>          kubernetes.io&#x2F;metadata.name: kube-system</p><p>      podSelector:</p><p>        matchLabels:</p><p>          k8s-app: kube-dns</p><p>    ports:</p><p>      - port: 53</p><p>        protocol: UDP</p><p>      - port: 53</p><p>        protocol: TCP</p><p><strong>设置了网络策略，如何在ovn里查看是否生成相应的ACL</strong></p><p>登录ovn-kubernetes的环境，使用如下命令登录如图的pod：</p><p>kubectl exec -it -n ovn-kubernetes ovnkube-master-788b596d78-l7gkt -c ovnkube-master – bash -il</p><p>登录之后，使用如下命令，查看ACL的数据：</p><p>Ovn-nbctl find acl</p><p>此时没有设置网络策略，就没有多余的ACL，设置一个网络策略之后就会发现多一些ACL的数据：</p><p>注意：如果针对同一个规则同时设置了deny和allow的ACL，allow的优先级会比deny优先级高，所以会允许allow。</p><p><strong>Networkpolicy使用限制：</strong></p><p>通过网络策略（至少目前还）无法完成的工作，到 Kubernetes 1.26 为止，NetworkPolicy API 还不支持以下功能， 不过你可能可以使用操作系统组件（如 SELinux、OpenVSwitch、IPTables 等等） 或者第七层技术（Ingress 控制器、服务网格实现）或准入控制器来实现一些替代方案。 如果你对 Kubernetes 中的网络安全性还不太了解，了解使用 NetworkPolicy API 还无法实现下面的用户场景是很值得的。</p><ul><li><p>强制集群内部流量经过某公用网关（这种场景最好通过服务网格或其他代理来实现）；</p></li><li><p>与 TLS 相关的场景（考虑使用服务网格或者 Ingress 控制器）；</p></li><li><p>特定于节点的策略（你可以使用 CIDR 来表达这一需求不过你无法使用节点在 Kubernetes 中的其他标识信息来辩识目标节点）；</p></li><li><p>基于名字来选择服务（不过，你可以使用 <a href="https://kubernetes.io/zh-cn/docs/concepts/overview/working-with-objects/labels/">标签</a> 来选择目标 Pod 或名字空间，这也通常是一种可靠的替代方案）；</p></li><li><p>创建或管理由第三方来实际完成的“策略请求”；</p></li><li><p>实现适用于所有名字空间或 Pods 的默认策略（某些第三方 Kubernetes 发行版本或项目可以做到这点）；</p></li><li><p>高级的策略查询或者可达性相关工具；</p></li><li><p>生成网络安全事件日志的能力（例如，被阻塞或接收的连接请求）；</p></li><li><p>显式地拒绝策略的能力（目前，NetworkPolicy 的模型默认采用拒绝操作， 其唯一的能力是添加允许策略）；</p></li><li><p>禁止本地回路或指向宿主的网络流量（Pod 目前无法阻塞 localhost 访问， 它们也无法禁止来自所在节点的访问请求）。</p></li></ul><p><strong>参考资料</strong></p><p><a href="https://kubernetes.io/docs/concepts/services-networking/network-policies/">++https://kubernetes.io/docs/concepts/services-networking/network-policies/++</a></p><p><strong>第二种方法通过ovn-kubernetes自定义的crd并根据资源来控制实现ACL（因限制太多不推荐使用）</strong></p><p><strong>找到生成的crd的yaml文件k8s.ovn.org_egressfirewalls.yaml</strong></p><p>在部署ovn的文件夹ovn&#x2F;ovn-kubernetes&#x2F;dist&#x2F;yaml里，有一个k8s.ovn.org_egressfirewalls.yaml文件，是根据命令生成yaml文件时生产的：</p><p>.&#x2F;daemonset.sh –image&#x3D;yusur&#x2F;ovn-daemonset-f:fullmode –net-cidr&#x3D;10.123.0.0&#x2F;16 –svc-cidr&#x3D;10.86.0.0&#x2F;16 –gateway-mode&#x3D;”local” –k8s-apiserver&#x3D;<a href="https://192.168.122.189:6443/">https://192.168.122.189:6443</a></p><p><strong>创建EgressFirewall资源</strong></p><p>找到上述的yaml文件k8s.ovn.org_egressfirewalls.yaml，使用命令：</p><p>kubectl apply -f k8s.ovn.org_egressfirewalls.yaml</p><p><strong>修改ovnkube-master.yaml里面的参数使EgressFirewall资源生效</strong></p><p>如果在已经部署的环境中，请修改部署ovn的文件夹ovn&#x2F;ovn-kubernetes&#x2F;dist&#x2F;yaml里的ovnkube-master.yaml，修改里面的- name: OVN_EGRESSFIREWALL_ENABLE为true</p><p>需要重新按修改后的yaml文件重新拉起这个pod</p><p>如果是即将部署的环境，请使用如下参数添加即可：</p><p>.&#x2F;daemonset.sh   –egress-firewall-enable&#x3D;true</p><p><strong>设置EgressFirewall规则</strong></p><p>EgressFirewall特性允许集群管理员限制项目中的pod可以访问的外部主机。 </p><p>EgressFirewall对象规则适用于所有共享的pod带有egressfirewall对象的名称空间。仅一个名称空间，支持有一个EgressFirewallObject。</p><p>如下示例：</p><p>kind: EgressFirewall</p><p>apiVersion: k8s.ovn.org&#x2F;v1</p><p>metadata:</p><p>  name: default  #该name必须设置为default，否则会创建失败</p><p>  namespace: default</p><p>spec:</p><p>  egress:</p><p>  - type: Allow</p><p>    to:</p><p>      dnsName: <a href="http://www.openvswitch.org/">www.openvswitch.org</a></p><p>  - type: Allow</p><p>    to:</p><p>      cidrSelector: 1.2.3.0&#x2F;24</p><p>  - type: Allow</p><p>    to:</p><p>      cidrSelector: 4.5.6.0&#x2F;24</p><p>    ports:</p><p>      - protocol: UDP</p><p>        port: 55</p><p>  - type: Deny</p><p>    to:</p><p>      cidrSelector: 0.0.0.0&#x2F;0</p><p>这个例子允许连接到默认名称空间中的Pods，<a href="http://www.openvswitch.org转换为的主机，任何外部主机在1.2.3.0到1.2.3.255范围内的主机，并且允许添加只有端口上的UDP协议才会将流量设置为4.5.6.0到4.5.6.255第55号，并拒绝所有其他外部主机的流量。端口是可选的，允许用户指定特定的端口To和协议允许或拒绝流量。规则的优先级由其在出口中的位置决定数组中。较早的规则在较晚的规则之前被处理。在前面的例子，如果规则颠倒过来，所有流量都被拒绝，包括到1.2.3.0/24">www.openvswitch.org转换为的主机，任何外部主机在1.2.3.0到1.2.3.255范围内的主机，并且允许添加只有端口上的UDP协议才会将流量设置为4.5.6.0到4.5.6.255第55号，并拒绝所有其他外部主机的流量。端口是可选的，允许用户指定特定的端口To和协议允许或拒绝流量。规则的优先级由其在出口中的位置决定数组中。较早的规则在较晚的规则之前被处理。在前面的例子，如果规则颠倒过来，所有流量都被拒绝，包括到1.2.3.0/24</a> CIDR块中的主机的任何流量。使用DNS特性假设已定位节点和主节点 在与添加到ovn的DNS条目类似的位置数据库是由主机生成的。 注意:在deny规则中使用DNS名称时，请谨慎使用。DNS拦截器将永远不会完美地工作，并可能允许访问一个被拒绝的主机，如果节点上的DNS解析与主节点上的DNS解析不同。</p><p>使用kubectl apply -f xxx.yaml文件之后，同样会在ovn-master的pod里面看见新增加的ACL</p>]]></content>
    
    
    <summary type="html">&lt;h1 id=&quot;ovn实现ACL&quot;&gt;&lt;a href=&quot;#ovn实现ACL&quot; class=&quot;headerlink&quot; title=&quot;ovn实现ACL&quot;&gt;&lt;/a&gt;ovn实现ACL&lt;/h1&gt;&lt;p&gt;&lt;strong&gt;第一种方法通过k8s标准资源networkpolicy实现ACL（推荐使用）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;什么是网络策略？&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;首先NetworkPolicy是k8s的一种resource，可以通过以下三种维度对整个namespace或单一POD进行隔离：pod（允许某些pod访问）、namespace（允许某些namespace访问）、ip段（CIDR，但是pod所运行node节点始终可以访问该pod）当定义基于pod和namespace的NetworkPolicy时，需要根据标签来选择对应的pod或者namespace。&lt;/p&gt;
&lt;p&gt;另外当需要使用NetworkPolicy资源时，k8s集群采用的网络插件必须支持，比如ovn-kubernetes等等&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
  </entry>
  
  <entry>
    <title>k8s的双cni使用方法</title>
    <link href="https://www.flftuu.com/2023/04/07/k8s%E7%9A%84%E5%8F%8Ccni%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95/"/>
    <id>https://www.flftuu.com/2023/04/07/k8s%E7%9A%84%E5%8F%8Ccni%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95/</id>
    <published>2023-04-07T10:07:50.000Z</published>
    <updated>2023-11-07T09:47:33.530Z</updated>
    
    <content type="html"><![CDATA[<h2 id="Multus-CNI-简介"><a href="#Multus-CNI-简介" class="headerlink" title="Multus CNI 简介"></a>Multus CNI 简介</h2><blockquote><p><strong>Multus CNI enables attaching multiple network interfaces to pods in Kubernetes.</strong></p></blockquote><p>以上是 Multus CNI 项目官方对其存在意义的精简描述，它的存在就是帮助 K8s 的 Pod（可简单理解为一组容器的集合，是 K8s 可管理的最小“容器”单位）建立多网络接口。</p><p>Multus CNI 本身不提供网络配置功能，它是通过用其他满足 CNI 规范的插件进行容器的网络配置。</p><span id="more"></span><h2 id="创建CNI网络"><a href="#创建CNI网络" class="headerlink" title="创建CNI网络"></a>创建CNI网络</h2><h5 id="calico网络的NetworkAttachmentDefinition"><a href="#calico网络的NetworkAttachmentDefinition" class="headerlink" title="calico网络的NetworkAttachmentDefinition"></a>calico网络的NetworkAttachmentDefinition</h5><pre><code>apiVersion: &quot;k8s.cni.cncf.io/v1&quot;kind: NetworkAttachmentDefinitionmetadata:  name: calico-net #网络名称  namespace: kube-systemspec:  config: &#39;&#123;  &quot;name&quot;: &quot;calico-net&quot;,  &quot;cniVersion&quot;: &quot;0.3.1&quot;,  &quot;plugins&quot;: [    &#123;      &quot;type&quot;: &quot;calico&quot;,      &quot;log_level&quot;: &quot;info&quot;,      &quot;log_file_path&quot;: &quot;/var/log/calico/cni/cni.log&quot;,      &quot;datastore_type&quot;: &quot;kubernetes&quot;,      &quot;mtu&quot;: 0,      &quot;ipam&quot;: &#123;          &quot;type&quot;: &quot;calico-ipam&quot;      &#125;,      &quot;policy&quot;: &#123;          &quot;type&quot;: &quot;k8s&quot;      &#125;,      &quot;kubernetes&quot;: &#123;          &quot;kubeconfig&quot;: &quot;/etc/cni/net.d/calico-kubeconfig&quot;      &#125;    &#125;,    &#123;      &quot;type&quot;: &quot;portmap&quot;,      &quot;snat&quot;: true,      &quot;capabilities&quot;: &#123;&quot;portMappings&quot;: true&#125;    &#125;,    &#123;      &quot;type&quot;: &quot;bandwidth&quot;,      &quot;capabilities&quot;: &#123;&quot;bandwidth&quot;: true&#125;    &#125;  ]&#125;&#39;</code></pre><h5 id="ovn网络的NetworkAttachmentDefinition"><a href="#ovn网络的NetworkAttachmentDefinition" class="headerlink" title="ovn网络的NetworkAttachmentDefinition"></a>ovn网络的NetworkAttachmentDefinition</h5><pre><code>apiVersion: &quot;k8s.cni.cncf.io/v1&quot;kind: NetworkAttachmentDefinitionmetadata:  name: ovn-net #网络名称  namespace: kube-system  annotations:    k8s.v1.cni.cncf.io/resourceName: yusur.tech/sriov_dpuspec:  config: &#39;&#123;    &quot;cniVersion&quot;: &quot;0.4.0&quot;,    &quot;name&quot;: &quot;ovn-kubernetes&quot;,    &quot;type&quot;: &quot;ovn-k8s-cni-overlay&quot;,    &quot;ipam&quot;: &#123;&#125;,    &quot;dns&quot;: &#123;&#125;,    &quot;logFile&quot;: &quot;/var/log/ovn-kubernetes/ovn-k8s-cni-overlay.log&quot;,    &quot;logLevel&quot;: &quot;5&quot;,    &quot;logfile-maxsize&quot;: 100,    &quot;logfile-maxbackups&quot;: 5,    &quot;logfile-maxage&quot;: 5    &#125;&#39;</code></pre><h2 id="介绍CNI网络"><a href="#介绍CNI网络" class="headerlink" title="介绍CNI网络"></a>介绍CNI网络</h2><h5 id="关键字段说明"><a href="#关键字段说明" class="headerlink" title="关键字段说明"></a>关键字段说明</h5><p>:::<br>v1.multus-cni.io&#x2F;default-network: calico-net </p><p>#该字段信息表示pod使用calico 网络， calico-net 必须是上面创建的NetworkAttachmentDefinition 对象名称</p><p>k8s.v1.cni.cncf.io&#x2F;networks: ‘[{</p><p>      “name”: “ovn-net”,</p><p>      “namespace”: “kube-system”</p><p>      “interface”: “eth1”,</p><p>      “default-route”: [“10.124.0.1”]</p><p>    }]‘ #该字段表示使用多个辅助cni，ovn-net 和kube-system 必须是上面创建NetworkAttachmentDefinition对象名称<br>:::</p><h2 id="使用CNI网络"><a href="#使用CNI网络" class="headerlink" title="使用CNI网络"></a>使用CNI网络</h2><h4 id="单CNI"><a href="#单CNI" class="headerlink" title="单CNI"></a>单CNI</h4><h5 id="Calico网络"><a href="#Calico网络" class="headerlink" title="Calico网络"></a>Calico网络</h5><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx2-calico  namespace: defaultspec:  selector:    app: nginx2-calico  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  name: nginx2-calico  namespace: default  annotations:    #单独使用calico网络    v1.multus-cni.io/default-network: calico-net  labels:    app: nginx2-calicospec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx2-calico    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80      name: server  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: host-205</code></pre><h5 id="OVN网络"><a href="#OVN网络" class="headerlink" title="OVN网络"></a>OVN网络</h5><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx2-ovn  namespace: defaultspec:  selector:    app: nginx2-ovn  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  name: nginx2-ovn  namespace: default  annotations:    #单独使用ovn网络    v1.multus-cni.io/default-network: ovn-net  labels:    app: nginx2-ovnspec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx2-ovn    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80      name: server    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: host-205    k8s.ovn.org/dpu-host: &quot;&quot;</code></pre><h4 id="双CNI"><a href="#双CNI" class="headerlink" title="双CNI"></a>双CNI</h4><h5 id="Calico为主，OVN为辅"><a href="#Calico为主，OVN为辅" class="headerlink" title="Calico为主，OVN为辅"></a>Calico为主，OVN为辅</h5><h6 id="默认路由为Calico"><a href="#默认路由为Calico" class="headerlink" title="默认路由为Calico"></a>默认路由为Calico</h6><p>++暂时不支持，需研发（该期需求）++</p><h6 id="默认路由为OVN"><a href="#默认路由为OVN" class="headerlink" title="默认路由为OVN"></a>默认路由为OVN</h6><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx2-calico-ovn  namespace: defaultspec:  selector:    app: nginx2-calico-ovn  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  name: nginx2-calico-ovn  namespace: default  annotations:    #使用calico网络为主，ovn为辅    v1.multus-cni.io/default-network: calico-net    k8s.v1.cni.cncf.io/networks: &#39;[&#123;      &quot;name&quot;: &quot;ovn-net&quot;,      &quot;namespace&quot;: &quot;kube-system&quot;,      &quot;interface&quot;: &quot;eth1&quot;,      &quot;default-route&quot;: [&quot;10.124.2.1&quot;]    &#125;]&#39;  labels:    app: nginx2-calico-ovnspec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx2-calico-ovn    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80      name: server    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: host-205    k8s.ovn.org/dpu-host: &quot;&quot;</code></pre><h5 id="OVN为主，Calico为辅"><a href="#OVN为主，Calico为辅" class="headerlink" title="OVN为主，Calico为辅"></a>OVN为主，Calico为辅</h5><h6 id="默认路由为Calico-1"><a href="#默认路由为Calico-1" class="headerlink" title="默认路由为Calico"></a>默认路由为Calico</h6><pre><code>apiVersion: v1kind: Servicemetadata:  name: nginx2-ovn-calico  namespace: defaultspec:  selector:    app: nginx2-ovn-calico  ports:  - protocol: TCP    port: 80    targetPort: server---apiVersion: v1kind: Podmetadata:  name: nginx2-ovn-calico  namespace: default  annotations:    #使用ovn网络为主，calico为辅    v1.multus-cni.io/default-network: ovn-net    k8s.v1.cni.cncf.io/networks: &#39;[&#123;      &quot;name&quot;: &quot;calico-net&quot;,      &quot;namespace&quot;: &quot;kube-system&quot;,      &quot;interface&quot;: &quot;eth1&quot;,      &quot;default-route&quot;: [&quot;169.254.1.1&quot;]    &#125;]&#39;  labels:    app: nginx2-ovn-calicospec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx2-ovn-calico    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80      name: server    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  restartPolicy: Always  nodeSelector:    kubernetes.io/hostname: host-205    k8s.ovn.org/dpu-host: &quot;&quot;</code></pre><h6 id="默认路由为OVN-1"><a href="#默认路由为OVN-1" class="headerlink" title="默认路由为OVN"></a>默认路由为OVN</h6><p>++暂时不支持++</p>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;Multus-CNI-简介&quot;&gt;&lt;a href=&quot;#Multus-CNI-简介&quot; class=&quot;headerlink&quot; title=&quot;Multus CNI 简介&quot;&gt;&lt;/a&gt;Multus CNI 简介&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Multus CNI enables attaching multiple network interfaces to pods in Kubernetes.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;以上是 Multus CNI 项目官方对其存在意义的精简描述，它的存在就是帮助 K8s 的 Pod（可简单理解为一组容器的集合，是 K8s 可管理的最小“容器”单位）建立多网络接口。&lt;/p&gt;
&lt;p&gt;Multus CNI 本身不提供网络配置功能，它是通过用其他满足 CNI 规范的插件进行容器的网络配置。&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>k8s的annotations资源注入pod</title>
    <link href="https://www.flftuu.com/2023/03/27/k8s%E7%9A%84annotations%E8%B5%84%E6%BA%90%E6%B3%A8%E5%85%A5pod/"/>
    <id>https://www.flftuu.com/2023/03/27/k8s%E7%9A%84annotations%E8%B5%84%E6%BA%90%E6%B3%A8%E5%85%A5pod/</id>
    <published>2023-03-27T08:01:01.000Z</published>
    <updated>2023-11-07T09:47:33.530Z</updated>
    
    <content type="html"><![CDATA[<h2 id="背景目的"><a href="#背景目的" class="headerlink" title="背景目的"></a>背景目的</h2><p>当容器使用ovn网络的时候，需要给容器里面注入ovn 分配对应的vf网卡的ip信息</p><span id="more"></span><h2 id="注入方法"><a href="#注入方法" class="headerlink" title="注入方法"></a>注入方法</h2><p>给每个容器挂在volume，注入vf信息固定写法</p><pre><code>#yaml容器段，定义挂载目录地址    volumeMounts:    - name: vfus      mountPath: /opt/yusur_ovn#yaml pod段，定义volume类容volumes:    - name: vfus      downwardAPI:        items:          - path: &quot;config.ini&quot;            fieldRef:              fieldPath: metadata.annotations[&#39;k8s.ovn.org/vfus-networks&#39;]</code></pre><h2 id="Pods资源"><a href="#Pods资源" class="headerlink" title="Pods资源"></a>Pods资源</h2><p>yaml 案例:</p><pre><code>apiVersion: v1kind: Podmetadata:  name: nginx1-ovn-pod  namespace: default  annotations:    v1.multus-cni.io/default-network: calico-net    k8s.v1.cni.cncf.io/networks: kube-system/ovn-net@eth1 #配置辅助cni为ovn  labels:    app: nginx1-ovn-podspec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx1-ovn-pod    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80    volumeMounts:    - name: vfus      mountPath: /opt/yusur_ovn    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  restartPolicy: Always  volumes:    - name: vfus      downwardAPI:        items:          - path: &quot;config.ini&quot;            fieldRef:              fieldPath: metadata.annotations[&#39;k8s.ovn.org/vfus-networks&#39;]</code></pre><p>查看结果：</p><pre><code>kubectl exec -it nginx1-ovn-pod -- cat /opt/yusur_ovn/config.ini | jq&#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.18&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;</code></pre><h2 id="Deployments资源"><a href="#Deployments资源" class="headerlink" title="Deployments资源"></a>Deployments资源</h2><p>yaml 案例:</p><pre><code>apiVersion: apps/v1kind: Deploymentmetadata:  namespace: default  name: nginx1-ovn-deployspec:  replicas: 1  selector:    matchLabels:      app: nginx1-ovn-deploy  template:    metadata:      labels:        app: nginx1-ovn-deploy      annotations:        v1.multus-cni.io/default-network: calico-net         k8s.v1.cni.cncf.io/networks: kube-system/ovn-net@eth1 #配置辅助cni为ovn    spec:      nodeSelector:        k8s.ovn.org/dpu-host: &quot;&quot;      containers:      - name: nginx1-ovn-deploy        image: ubuntu:22.04-yusur        imagePullPolicy: IfNotPresent        resources:          requests:            yusur.tech/sriov_dpu: &#39;1&#39;          limits:            yusur.tech/sriov_dpu: &#39;1&#39;        ports:        - containerPort: 80        volumeMounts:        - name: vfus          mountPath: /opt/yusur_ovn      volumes:       - name: vfus         downwardAPI:           items:             - path: &quot;config.ini&quot;               fieldRef:                 fieldPath: metadata.annotations[&#39;k8s.ovn.org/vfus-networks&#39;]</code></pre><p>查看结果：</p><pre><code>kubectl exec -it nginx1-ovn-deploy-c474975db-l642g -- cat /opt/yusur_ovn/config.ini | jq&#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.17&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;</code></pre><h2 id="Daemonsets资源"><a href="#Daemonsets资源" class="headerlink" title="Daemonsets资源"></a>Daemonsets资源</h2><p>yaml 案例:</p><pre><code>apiVersion: apps/v1kind: DaemonSetmetadata:  name: nginx1-ovn-ds  labels:    app: nginx1-ovn-dsspec:  selector:    matchLabels:      octopusexport: OctopusExport  updateStrategy:    type: RollingUpdate  template:    metadata:      labels:        app: nginx1-ovn-ds        octopusexport: OctopusExport      annotations:        v1.multus-cni.io/default-network: calico-net        k8s.v1.cni.cncf.io/networks: kube-system/ovn-net@eth1    spec:      volumes:        - name: vfus          downwardAPI:            items:              - path: config.ini                fieldRef:                  fieldPath: &#39;metadata.annotations[&#39;&#39;k8s.ovn.org/vfus-networks&#39;&#39;]&#39;      containers:        - name: nginx1-ovn-ds          image: ubuntu:22.04-yusur          imagePullPolicy: IfNotPresent          ports:            - name: server              containerPort: 80              protocol: TCP          volumeMounts:            - name: vfus              mountPath: /opt/yusur_ovn              subPath: &#39;&#39;          resources:            requests:              yusur.tech/sriov_dpu: &#39;1&#39;            limits:              yusur.tech/sriov_dpu: &#39;1&#39;          securityContext:            privileged: true            runAsNonRoot: false</code></pre><p>查看结果：</p><pre><code>kubectl exec -it nginx1-ovn-ds-mt747 -- cat /opt/yusur_ovn/config.ini | jq&#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.21&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;</code></pre><h2 id="Statefulsets资源"><a href="#Statefulsets资源" class="headerlink" title="Statefulsets资源"></a>Statefulsets资源</h2><p>yaml 案例:</p><pre><code>apiVersion: apps/v1kind: StatefulSetmetadata:  name: nginx1-ovn-sts  labels:    app: nginx1-ovn-stsspec:  selector:    matchLabels:      octopusexport: OctopusExport  replicas: 1  serviceName: nginx1-ovn-sts  updateStrategy:    type: RollingUpdate  template:    metadata:      labels:        app: nginx1-ovn-sts        octopusexport: OctopusExport      annotations:        v1.multus-cni.io/default-network: calico-net        k8s.v1.cni.cncf.io/networks: kube-system/ovn-net@eth1    spec:      volumes:        - name: vfus          downwardAPI:            items:              - path: config.ini                fieldRef:                  fieldPath: &#39;metadata.annotations[&#39;&#39;k8s.ovn.org/vfus-networks&#39;&#39;]&#39;      containers:        - name: nginx1-ovn-sts          image: ubuntu:22.04-yusur          imagePullPolicy: IfNotPresent          ports:            - name: server              containerPort: 80              protocol: TCP          volumeMounts:            - name: vfus              mountPath: /opt/yusur_ovn          resources:            requests:              yusur.tech/sriov_dpu: &#39;1&#39;            limits:              yusur.tech/sriov_dpu: &#39;1&#39;          securityContext:            privileged: true            runAsNonRoot: false</code></pre><p>查看结果：</p><pre><code>kubectl exec -it nginx1-ovn-sts-0 -- cat /opt/yusur_ovn/config.ini | jq&#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.22&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;</code></pre><h2 id="多容器注入"><a href="#多容器注入" class="headerlink" title="多容器注入"></a>多容器注入</h2><p>每个container 都需挂载volume</p><p>yaml 案例:</p><pre><code>apiVersion: v1kind: Podmetadata:  name: nginx1-ovn-pod2  namespace: default  annotations:    v1.multus-cni.io/default-network: calico-net    k8s.v1.cni.cncf.io/networks: kube-system/ovn-net@eth1 #配置辅助cni为ovn  labels:    app: nginx1-ovn-pod2spec:  containers:  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;nginx -g &quot;daemon off;&quot;&#39;]    imagePullPolicy: IfNotPresent    name: nginx1-ovn-pod2    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 80    volumeMounts:    - name: vfus      mountPath: /opt/yusur_ovn    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  - image: ubuntu:22.04-yusur    command: [&#39;/bin/sh&#39;, &#39;-c&#39;, &#39;sleep 355555&#39;]    imagePullPolicy: IfNotPresent    name: nginx1-ovn-pod2-2    securityContext:      runAsUser: 0      privileged: true    ports:    - containerPort: 81    volumeMounts:    - name: vfus      mountPath: /opt/yusur_ovn    resources:      requests:        yusur.tech/sriov_dpu: &#39;1&#39;      limits:        yusur.tech/sriov_dpu: &#39;1&#39;  restartPolicy: Always  volumes:    - name: vfus      downwardAPI:        items:          - path: &quot;config.ini&quot;            fieldRef:              fieldPath: metadata.annotations[&#39;k8s.ovn.org/vfus-networks&#39;]</code></pre><p>查看结果：</p><pre><code>root@yusur-62:/home/leid/cni/test/vfus# kubectl exec -it nginx1-ovn-pod2 -c nginx1-ovn-pod2 -- cat /opt/yusur_ovn/config.ini | jq &#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.4&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;root@yusur-62:/home/leid/cni/test/vfus# kubectl exec -it nginx1-ovn-pod2 -c nginx1-ovn-pod2-2 -- cat /opt/yusur_ovn/config.ini | jq &#123;  &quot;port0&quot;: &#123;    &quot;addr&quot;: &quot;10.124.1.4&quot;,    &quot;netmask&quot;: &quot;255.255.255.0&quot;,    &quot;broadcast&quot;: &quot;10.124.1.255&quot;,    &quot;gateway&quot;: &quot;10.124.1.1&quot;  &#125;&#125;</code></pre><h2 id="参考工具"><a href="#参考工具" class="headerlink" title="参考工具"></a>参考工具</h2><p>yaml生成工具<a href="https://k8syaml.com/">https://k8syaml.com/</a></p>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;背景目的&quot;&gt;&lt;a href=&quot;#背景目的&quot; class=&quot;headerlink&quot; title=&quot;背景目的&quot;&gt;&lt;/a&gt;背景目的&lt;/h2&gt;&lt;p&gt;当容器使用ovn网络的时候，需要给容器里面注入ovn 分配对应的vf网卡的ip信息&lt;/p&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>ovnkube-route路由注入到pod</title>
    <link href="https://www.flftuu.com/2023/03/13/ovnkube-route%E8%B7%AF%E7%94%B1%E6%B3%A8%E5%85%A5%E5%88%B0pod/"/>
    <id>https://www.flftuu.com/2023/03/13/ovnkube-route%E8%B7%AF%E7%94%B1%E6%B3%A8%E5%85%A5%E5%88%B0pod/</id>
    <published>2023-03-13T03:16:20.000Z</published>
    <updated>2023-11-07T09:47:33.544Z</updated>
    
    <content type="html"><![CDATA[<h1 id="ovnkube-route开发文档-内核态路由"><a href="#ovnkube-route开发文档-内核态路由" class="headerlink" title="ovnkube-route开发文档(内核态路由)"></a>ovnkube-route开发文档(内核态路由)</h1><h2 id="背景目的"><a href="#背景目的" class="headerlink" title="背景目的"></a>背景目的</h2><p>在流量分离双CNI的场景下，实现实时路由下发，控制SVC服务从指定CNI网络出去；</p><p>双CNI方案架构：</p><ol><li><p>Calico作为默认网络，承载管理流量与非低延时业务流量；</p></li><li><p>OVN-Kubernetes作为第二网络，承载低延时业务流量；</p></li></ol><h2 id="最终路由"><a href="#最终路由" class="headerlink" title="最终路由"></a>最终路由</h2><p><img src="/2023/03/13/ovnkube-route%E8%B7%AF%E7%94%B1%E6%B3%A8%E5%85%A5%E5%88%B0pod/1.jpg" alt="image"></p><p>路由最终效果展示：eth0: 为calico 网络，eth1: 为OVN网络</p><pre><code>Kernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         169.254.1.1     0.0.0.0         UG    0      0        0 eth010.86.69.17     0.0.0.0         255.255.255.255 UH    0      0        0 eth010.86.205.109   0.0.0.0         255.255.255.255 UH    0      0        0 eth110.124.0.0      10.124.2.1      255.255.0.0     UG    0      0        0 eth110.124.2.0      0.0.0.0         255.255.255.0   U     0      0        0 eth1169.254.1.1     0.0.0.0         255.255.255.255 UH    0      0        0 eth0172.16.10.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0</code></pre><p>路由解释：</p><ol><li><p>默认路由0.0.0.0 走calico网络eth0</p></li><li><p>SVC网段10.86.0.0&#x2F;16走calico 网络，不用配置，走默认路由即可实现</p></li><li><p>单一SVC：10.86.69.17&#x2F;32走calico网络eth0</p></li><li><p>单一SVC：10.86.205.109&#x2F;32走OVN网络eth1</p></li><li><p>OVN段10.124.0.0&#x2F;16， 10.124.2.0&#x2F;24走OVN网络eth1</p></li><li><p>自定义网段172.16.10.0&#x2F;24 走OVN网络eth1</p></li><li><p>自定义网段192.168.2.0&#x2F;24 走calico网络eth0</p></li></ol><h2 id="研发需求"><a href="#研发需求" class="headerlink" title="研发需求"></a>研发需求</h2><h4 id="路由配置需求："><a href="#路由配置需求：" class="headerlink" title="路由配置需求："></a>路由配置需求：</h4><ul><li><p><del>默认路由为calico网络（ovn-k8s组件来实现）</del></p></li><li><p><del>svc整段出calico网络（ovn-k8s组件来实现）</del></p></li><li><p>单一SVC可实时配置走不同网络calico or ovn</p></li><li><p>自定义网段可实时配置走不同网络calico or ovn</p></li><li><p>支持修改默认路由</p></li></ul><h4 id="配置文件需求："><a href="#配置文件需求：" class="headerlink" title="配置文件需求："></a>配置文件需求：</h4><ul><li><p>支持json，yaml格式：eg: cr-config.yaml, cr-config.json</p></li><li><p>支持SVC名称写法：eg: {“svc”: “<namespace>&#x2F;<svc name>“, “dev”: “网卡名”} ,   {“svc”: “default&#x2F;nginx1”, “dev”: “eth0”} </svc name></namespace></p></li><li><p>支持网段写法：eg: {“route”:”172.16.0.0&#x2F;16 “, “dev”: “eth1”}</p></li></ul><h4 id="路由下发需求："><a href="#路由下发需求：" class="headerlink" title="路由下发需求："></a>路由下发需求：</h4><ul><li><p>k8s集群中所有pod都下发自定义路由（目前需求）</p></li><li><p>pod中无指定网卡，则对应路由不下发（目前需求，无双cni的pod中会出现）</p></li><li><p>宿主网络pod 不下发路由（目前需求，hostnetwork 类型pod）</p></li><li><p>指定特定pod下发自定义路由</p></li><li><p>指定特定namespace中所有pod 下发自定义路由</p></li><li><p>指定deploy， ds，sts 对应的所有pod 下发自定义路由</p></li><li><p>排除特定pod下发自定义路由</p></li><li><p>排除特定namespace中所有pod 下发自定义路由</p></li></ul><h2 id="技术方案"><a href="#技术方案" class="headerlink" title="技术方案"></a>技术方案</h2><p>开发工具：<strong><a href="mailto:&#x4b;&#117;&#x62;&#101;&#x62;&#x75;&#x69;&#108;&#x64;&#x65;&#x72;&#64;&#x33;&#x2e;&#52;&#x2e;&#x31;">&#x4b;&#117;&#x62;&#101;&#x62;&#x75;&#x69;&#108;&#x64;&#x65;&#x72;&#64;&#x33;&#x2e;&#52;&#x2e;&#x31;</a>，****<a href="mailto:&#x63;&#x6f;&#x64;&#101;&#45;&#103;&#101;&#110;&#101;&#114;&#x61;&#116;&#111;&#x72;&#64;&#48;&#x2e;&#x32;&#52;&#x2e;&#x30;">&#x63;&#x6f;&#x64;&#101;&#45;&#103;&#101;&#110;&#101;&#114;&#x61;&#116;&#111;&#x72;&#64;&#48;&#x2e;&#x32;&#52;&#x2e;&#x30;</a></strong></p><p><strong>相关教程：</strong></p><p><a href="https://xieys.club/code-generator-crd/">https://xieys.club/code-generator-crd/</a></p><p><a href="https://jimmysong.io/kubernetes-handbook/develop/kubebuilder-example.html">https://jimmysong.io/kubernetes-handbook/develop/kubebuilder-example.html</a></p><p>使用K8S中的crd 实现 路由配置规则定义和管理</p><p>使用Kubebuilder 来构建crd资源的 API、Controller</p><h4 id="api定义"><a href="#api定义" class="headerlink" title="api定义"></a>api定义</h4><p>group: k8s.ovn.org</p><p>kind: route</p><p>version:v1</p><pre><code>---apiVersion: apiextensions.k8s.io/v1kind: CustomResourceDefinitionmetadata:  annotations:    controller-gen.kubebuilder.io/version: v0.8.0  creationTimestamp: null  name: routes.k8s.ovn.orgspec:  group: k8s.ovn.org  names:    kind: Route    listKind: RouteList    plural: routes    singular: route  scope: Cluster  versions:  - additionalPrinterColumns:    - jsonPath: .status.status      name: Route Status      type: string    name: v1    schema:      openAPIV3Schema:        description: Route is the Schema for the routes API        properties:          apiVersion:            description: &#39;APIVersion defines the versioned schema of this representation              of an object. Servers should convert recognized schemas to the latest              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources&#39;            type: string          kind:            description: &#39;Kind is a string value representing the REST resource this              object represents. Servers may infer this from the endpoint the client              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds&#39;            type: string          metadata:            type: object          spec:            description: RouteSpec defines the desired state of Route            properties:              feature_gate:                additionalProperties:                  type: string                type: object              route:                items:                  description: RouteRule defines custom route info                  properties:                    dev:                      description: 网卡名称                      type: string                    dst:                      description: 自定义网络段                      type: string                    via:                      description: 网关地址                      type: string                  required:                  - dev                  - dst                  type: object                type: array              svc:                items:                  description: SvcRule defines svc info                  properties:                    dev:                      type: string                    name:                      type: string                    namespace:                      type: string                    via:                      type: string                  required:                  - dev                  - name                  - namespace                  - via                  type: object                type: array            required:            - route            - svc            type: object          status:            description: RouteStatus defines the observed state of Route            properties:              status:                description: &#39;INSERT ADDITIONAL STATUS FIELD - define observed state                  of cluster Important: Run &quot;make&quot; to regenerate code after modifying                  this file&#39;                type: string            type: object        type: object    served: true    storage: true    subresources:      status: &#123;&#125;status:  acceptedNames:    kind: &quot;&quot;    plural: &quot;&quot;  conditions: []  storedVersions: []</code></pre><p>demo</p><pre><code>apiVersion: k8s.ovn.org/v1kind: Routemetadata:  name: demospec:  route:    - dst: &quot;172.16.10.0/24&quot;      dev: &quot;eth1&quot;    - dst: &quot;172.16.11.0/24&quot;      dev: &quot;eth0&quot;  svc:    - namespace: &quot;default&quot;      name: &quot;nginx&quot;      dev: &quot;eth1&quot;    - namespace: &quot;kube-system&quot;      name: &quot;nginx1&quot;      dev: &quot;eth0&quot;    - namespace: &quot;kube-system&quot;      name: &quot;nginx2&quot;      dev: &quot;eth0&quot;</code></pre><p>自定义字段信息：</p><pre><code>/*Copyright 2023.Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);you may not use this file except in compliance with the License.You may obtain a copy of the License at    http://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an &quot;AS IS&quot; BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License.*/package v1import (    metav1 &quot;k8s.io/apimachinery/pkg/apis/meta/v1&quot;)// EDIT THIS FILE!  THIS IS SCAFFOLDING FOR YOU TO OWN!// NOTE: json tags are required.  Any new fields you add must have json tags for the fields to be serialized.// RouteSpec defines the desired state of Routetype RouteSpec struct &#123;    // INSERT ADDITIONAL SPEC FIELDS - desired state of cluster    // Important: Run &quot;make&quot; to regenerate code after modifying this file    Route []RouteRule `json:&quot;route&quot;`    Svc   []SvcRule   `json:&quot;svc&quot;`    // +optional    FeatureGate map[string]string `json:&quot;feature_gate&quot;` // 可拓展参数，保证crd的扩展性&#125;// RouteRule defines custom route infotype RouteRule struct &#123;    // 自定义网络段    Dst string `json:&quot;dst&quot;`    // 网卡名称    Dev string `json:&quot;dev&quot;`    // 网关地址    // +optional    Via string `json:&quot;via&quot;`&#125;// SvcRule defines svc infotype SvcRule struct &#123;    Namespace string `json:&quot;namespace&quot;`    Name      string `json:&quot;name&quot;`    Dev       string `json:&quot;dev&quot;`    // +optional    Via string `json:&quot;via&quot;`&#125;// RouteStatus defines the observed state of Routetype RouteStatus struct &#123;    // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster    // Important: Run &quot;make&quot; to regenerate code after modifying this file    Status string `json:&quot;status,omitempty&quot;`&#125;//+genclient//+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object//+kubebuilder:object:root=true//+kubebuilder:resource:shortName=route//+kubebuilder:resource:scope=Cluster//+kubebuilder:subresource:status//+kubebuilder:printcolumn:name=&quot;Route Status&quot;,type=string,JSONPath=&quot;.status.status&quot;// Route is the Schema for the routes APItype Route struct &#123;    metav1.TypeMeta   `json:&quot;,inline&quot;`    metav1.ObjectMeta `json:&quot;metadata,omitempty&quot;`    Spec   RouteSpec   `json:&quot;spec,omitempty&quot;`    Status RouteStatus `json:&quot;status,omitempty&quot;`&#125;//+kubebuilder:object:root=true// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object// RouteList contains a list of Routetype RouteList struct &#123;    metav1.TypeMeta `json:&quot;,inline&quot;`    metav1.ListMeta `json:&quot;metadata,omitempty&quot;`    Items           []Route `json:&quot;items&quot;`&#125;func init() &#123;    SchemeBuilder.Register(&amp;Route&#123;&#125;, &amp;RouteList&#123;&#125;)&#125;</code></pre><h4 id="Controller-定义"><a href="#Controller-定义" class="headerlink" title="Controller 定义"></a>Controller 定义</h4><pre><code>/*Copyright 2023.Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);you may not use this file except in compliance with the License.You may obtain a copy of the License at    http://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an &quot;AS IS&quot; BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License.*/package controllersimport (    &quot;context&quot;    &quot;k8s.io/apimachinery/pkg/runtime&quot;    ctrl &quot;sigs.k8s.io/controller-runtime&quot;    &quot;sigs.k8s.io/controller-runtime/pkg/client&quot;    &quot;sigs.k8s.io/controller-runtime/pkg/log&quot;)// RouteReconciler reconciles a Route objecttype RouteReconciler struct &#123;    client.Client    Scheme *runtime.Scheme&#125;//+kubebuilder:rbac:groups=k8s.ovn.org,resources=routes,verbs=get;list;watch;create;update;patch;delete//+kubebuilder:rbac:groups=k8s.ovn.org,resources=routes/status,verbs=get;update;patch//+kubebuilder:rbac:groups=k8s.ovn.org,resources=routes/finalizers,verbs=update// Reconcile is part of the main kubernetes reconciliation loop which aims to// move the current state of the cluster closer to the desired state.// TODO(user): Modify the Reconcile function to compare the state specified by// the Route object against the actual cluster state, and then// perform operations to make the cluster state reflect the state specified by// the user.//// For more details, check Reconcile and its Result here:// - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.11.2/pkg/reconcilefunc (r *RouteReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) &#123;    _ = log.FromContext(ctx)    // TODO(user): your logic here    return ctrl.Result&#123;&#125;, nil&#125;// SetupWithManager sets up the controller with the Manager.func (r *RouteReconciler) SetupWithManager(mgr ctrl.Manager) error &#123;    return ctrl.NewControllerManagedBy(mgr).        // Uncomment the following line adding a pointer to an instance of the controlled resource as an argument        // For().        Complete(r)&#125;</code></pre><h2 id="技术问题"><a href="#技术问题" class="headerlink" title="技术问题"></a>技术问题</h2><h6 id="POD的网络NS怎么获取到？"><a href="#POD的网络NS怎么获取到？" class="headerlink" title="POD的网络NS怎么获取到？"></a>POD的网络NS怎么获取到？</h6><p>方案1: 在pod启动时候cni创建网络时，把pod对应的ns 写入 pod的annotations eg: POD_NS: &#x2F;var&#x2F;run&#x2F;netns&#x2F;cni-219052a8-dc07-14ad-2249-d380a989e501</p><p>方案2: 读取&#x2F;var&#x2F;lib&#x2F;cni&#x2F;results 目录下的*-lo 结尾的文件信息, 读取pod uid 和 ns 地址</p><p>解释：-lo 结尾文件是kubelet 使用 loopback cni组件给pod 添加lo网卡(回环网卡)，每个非hostnetwork的pod都会添加的网卡</p><pre><code>root@yusur-62:/var/lib/cni/results# cat /var/lib/cni/results/cni-loopback-501bfc5a143cef8f0ed14c68112bbb321eae430e2ff3ec40357e226608c1a5cd-lo|jq&#123;  &quot;kind&quot;: &quot;cniCacheV1&quot;,  &quot;containerId&quot;: &quot;501bfc5a143cef8f0ed14c68112bbb321eae430e2ff3ec40357e226608c1a5cd&quot;,  &quot;config&quot;: &quot;ewoiY25pVmVyc2lvbiI6ICIwLjMuMSIsCiJuYW1lIjogImNuaS1sb29wYmFjayIsCiJwbHVnaW5zIjogW3sKICAidHlwZSI6ICJsb29wYmFjayIKfV0KfQ==&quot;,  &quot;ifName&quot;: &quot;lo&quot;,  &quot;networkName&quot;: &quot;cni-loopback&quot;,  &quot;cniArgs&quot;: [    [      &quot;K8S_POD_NAMESPACE&quot;,      &quot;kube-system&quot;    ],    [      &quot;K8S_POD_NAME&quot;,      &quot;calico-kube-controllers-7f7bf765bb-whl8g&quot;    ],    [      &quot;K8S_POD_INFRA_CONTAINER_ID&quot;,      &quot;501bfc5a143cef8f0ed14c68112bbb321eae430e2ff3ec40357e226608c1a5cd&quot;    ],    [      &quot;K8S_POD_UID&quot;, #pod 的uid      &quot;174eecc3-58fa-42d1-8501-7f9004a28b76&quot;    ],    [      &quot;IgnoreUnknown&quot;,      &quot;1&quot;    ]  ],  &quot;capabilityArgs&quot;: &#123;    &quot;dns&quot;: &#123;      &quot;Servers&quot;: [        &quot;10.86.0.10&quot;      ],      &quot;Searches&quot;: [        &quot;kube-system.svc.cluster.local&quot;,        &quot;svc.cluster.local&quot;,        &quot;cluster.local&quot;      ],      &quot;Options&quot;: [        &quot;ndots:5&quot;      ]    &#125;,    &quot;io.kubernetes.cri.pod-annotations&quot;: &#123;      &quot;k8s.ovn.org/pod-networks&quot;: &quot;&#123;\&quot;default\&quot;:&#123;\&quot;ip_addresses\&quot;:[\&quot;10.124.0.3/24\&quot;],\&quot;mac_address\&quot;:\&quot;0a:58:0a:7c:00:03\&quot;,\&quot;gateway_ips\&quot;:[\&quot;10.124.0.1\&quot;],\&quot;ip_address\&quot;:\&quot;10.124.0.3/24\&quot;,\&quot;gateway_ip\&quot;:\&quot;10.124.0.1\&quot;&#125;&#125;&quot;,      &quot;kubernetes.io/config.seen&quot;: &quot;2023-03-02T16:41:18.088181536+08:00&quot;,      &quot;kubernetes.io/config.source&quot;: &quot;api&quot;    &#125;  &#125;,  &quot;result&quot;: &#123;    &quot;cniVersion&quot;: &quot;0.3.1&quot;,    &quot;dns&quot;: &#123;&#125;,    &quot;interfaces&quot;: [      &#123;        &quot;mac&quot;: &quot;00:00:00:00:00:00&quot;,        &quot;name&quot;: &quot;lo&quot;,        &quot;sandbox&quot;: &quot;/var/run/netns/cni-219052a8-dc07-14ad-2249-d380a989e501&quot;         # pod的网络ns地址      &#125;    ],    &quot;ips&quot;: [      &#123;        &quot;address&quot;: &quot;127.0.0.1/8&quot;,        &quot;interface&quot;: 0,        &quot;version&quot;: &quot;&quot;      &#125;,      &#123;        &quot;address&quot;: &quot;::1/128&quot;,        &quot;interface&quot;: 0,        &quot;version&quot;: &quot;&quot;      &#125;    ]  &#125;&#125;</code></pre><p>有效字段：</p><pre><code>[      &quot;K8S_POD_UID&quot;, #pod 的uid      &quot;174eecc3-58fa-42d1-8501-7f9004a28b76&quot;    ],&quot;interfaces&quot;: [      &#123;        &quot;mac&quot;: &quot;00:00:00:00:00:00&quot;,        &quot;name&quot;: &quot;lo&quot;,        &quot;sandbox&quot;: &quot;/var/run/netns/cni-219052a8-dc07-14ad-2249-d380a989e501&quot;         # pod的网络ns地址      &#125;    ],</code></pre><h2 id="代码地址"><a href="#代码地址" class="headerlink" title="代码地址"></a>代码地址</h2><p><a href="http://192.168.2.114/PRD/DSPG/CAPT/ovnkube-route.git">http://192.168.2.114/PRD/DSPG/CAPT/ovnkube-route.git</a></p><h2 id="服务部署"><a href="#服务部署" class="headerlink" title="服务部署"></a>服务部署</h2><pre><code># 部署方法kubectl apply -f deploy/# 查看效果root@yusur-62:~# kubectl  get pod -n ovn-kubernetes | grep route ovnkube-route-77887c678b-9gs6f    1/1     Running   0             16h# 需要修改crd的manager.yaml 为ds类型</code></pre><h2 id="系统架构"><a href="#系统架构" class="headerlink" title="系统架构"></a>系统架构</h2><p>整个OVNKUBE-ROUTE逻辑层分为两个层面，功能层分为五大模块。</p><p><img src="/2023/03/13/ovnkube-route%E8%B7%AF%E7%94%B1%E6%B3%A8%E5%85%A5%E5%88%B0pod/2.png" alt="image"></p><p>用户层是用户可以根据自身业务需求自定义低延迟业务走DPU网络，非低延迟业务可以走普通网络，提供一种基于用户自身业务层的网络性能优化能力。</p><p>功能层api模块首先定义crd资源来实现 路由配置规则定义和管理，controller模块来监听处理k8s集群中crd定义的路由规则资源cr的状态变化如添加，删除等，netlink模块则同步cr资源中路由规则到pod中生成对应的路由规则，而filter模块则是来过滤用户指定k8s哪种资源对象的pod能同步对应路由规则，达到细致化处理不同业务pod的网络使用规划。</p><p>API模块：利用K8S的crd功能实现扩展定义k8s的资源类型。</p><p>Controller 模块：是监听crd定义资源cr对象的变化控制模块，模块包含如下几个功能。</p><p>Netlink 模块：根据cr对象中路由规则和svc规则的变更，对指定POD进行路由规则变更，支持修改默认路由，删除路由，添加路由，类似linux系统命令，ip route 命令操作路由规则。</p><p>删除路由类似命令，ip route del 172.16.10.0&#x2F;24</p><p>添加路由类似命令，ip route add 172.16.20.0&#x2F;24 via 172.16.20.1</p><p>Filter 模块：根据cr对象中的过滤规则，进行对指定对象包括pods，deployments，daemonsets，namespaces，jobs，cronjobs等资源进行筛选过滤。</p><h2 id="拓展工具"><a href="#拓展工具" class="headerlink" title="拓展工具"></a>拓展工具</h2><h4 id="进入pod对应的网络ns中"><a href="#进入pod对应的网络ns中" class="headerlink" title="进入pod对应的网络ns中"></a>进入pod对应的网络ns中</h4><h6 id="方法1，-利用ip命令"><a href="#方法1，-利用ip命令" class="headerlink" title="方法1， 利用ip命令"></a>方法1， 利用ip命令</h6><pre><code>#!/usr/bin/env bash# 进入pod：a , namespace：default 的网络空间，ns a default  退出 exitmountEnter()&#123;        POD=$1        NAMESPACE=$2        PODID=$(crictl pods --namespace $NAMESPACE --name $POD --no-trunc |awk &#39;&#123;print $1&#125;&#39; |grep -v POD)        CID=$(crictl ps --no-trunc| grep $PODID | awk &#39;NR == 1 &#123;print $1&#125;&#39;)        PID=$(crictl inspect $CID | grep pid |awk &#39;NR == 1 &#123;print $2&#125;&#39;|sed &#39;s/,//g&#39;)        NSMOUNT=$(cat /var/lib/cni/results/cni-loopback-$PODID-lo | jq |grep sandbox |awk &#39;&#123;print $2&#125;&#39;|sed &#39;s/&quot;//g&#39;)        NS=$(echo $NSMOUNT | awk -F/ &#39;&#123;print $5&#125;&#39;)        ip netns exec $NS bash&#125;POD=$1NAMESPACE=$2mountEnter $1 $2</code></pre><h6 id="方法2，-利用nsenter命令"><a href="#方法2，-利用nsenter命令" class="headerlink" title="方法2， 利用nsenter命令"></a>方法2， 利用nsenter命令</h6><pre><code>#!/usr/bin/env bash# 进入pod：a , namespace：default 的网络空间，ns a default  退出 exitpidEnter() &#123;        POD=$1        NAMESPACE=$2        PODID=$(crictl pods --namespace $NAMESPACE --name $POD --no-trunc |awk &#39;&#123;print $1&#125;&#39; |grep -v POD)        CID=$(crictl ps --no-trunc| grep $PODID | awk &#39;NR == 1 &#123;print $1&#125;&#39;)        PID=$(crictl inspect $CID | grep pid |awk &#39;NR == 1 &#123;print $2&#125;&#39;|sed &#39;s/,//g&#39;)        NSMOUNT=$(cat /var/lib/cni/results/cni-loopback-$PODID-lo | jq |grep sandbox |awk &#39;&#123;print $2&#125;&#39;|sed &#39;s/&quot;//g&#39;)        NS=$(echo $NSMOUNT | awk -F/ &#39;&#123;print $5&#125;&#39;)        nsenter -n -t  $PID bash&#125;POD=$1NAMESPACE=$2pidEnter $1 $2</code></pre><h6 id="进入ns查看效果"><a href="#进入ns查看效果" class="headerlink" title="进入ns查看效果"></a>进入ns查看效果</h6><pre><code>root@yusur-62:/tmp# ./execns.sh coredns-74586cf9b6-tdbmb kube-systemroot@yusur-62:/tmp# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         10.124.1.1      0.0.0.0         UG    0      0        0 eth010.124.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth010.124.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0100.64.0.0      10.124.1.1      255.255.0.0     UG    0      0        0 eth0</code></pre>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;ovnkube-route开发文档-内核态路由&quot;&gt;&lt;a href=&quot;#ovnkube-route开发文档-内核态路由&quot; class=&quot;headerlink&quot; title=&quot;ovnkube-route开发文档(内核态路由)&quot;&gt;&lt;/a&gt;ovnkube-route开发文</summary>
      
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>ovn的流表分析</title>
    <link href="https://www.flftuu.com/2023/03/05/ovn%E7%9A%84%E6%B5%81%E8%A1%A8%E5%88%86%E6%9E%90/"/>
    <id>https://www.flftuu.com/2023/03/05/ovn%E7%9A%84%E6%B5%81%E8%A1%A8%E5%88%86%E6%9E%90/</id>
    <published>2023-03-05T04:24:28.000Z</published>
    <updated>2023-11-07T09:47:33.551Z</updated>
    
    <content type="html"><![CDATA[<h3 id="OSI模型第二层【数据链路层】"><a href="#OSI模型第二层【数据链路层】" class="headerlink" title="OSI模型第二层【数据链路层】"></a>OSI模型第二层【数据链路层】</h3><p><em>dl</em> <em>即是</em> <em>data link</em> <em>的缩写。</em></p><h4 id="dl-type-ethertype"><a href="#dl-type-ethertype" class="headerlink" title="dl_type&#x3D;ethertype"></a>dl_type&#x3D;ethertype</h4><p>匹配以太网协议类型以太类型，以10到65535之间的整数（包括0和65535）指定，以十进制或以0x前缀的十六进制数表示，示例如下。</p><ul><li><p>dl_type&#x3D;0x0800 匹配IPv4数据包，等同于dl_type&#x3D;ip 。</p></li><li><p>dl_type&#x3D;0x086dd 匹配IPv6数据包，等同于dl_type&#x3D;ipv6 。</p></li><li><p>dl_type&#x3D;0x0806 匹配ARP数据包，等同于dl_type&#x3D;arp 。</p></li><li><p>dl_type&#x3D;0x8035 匹配RARP数据包，等同于 dl_type&#x3D;rarp。</p></li></ul><span id="more"></span><h4 id="dl-vlan-vlan"><a href="#dl-vlan-vlan" class="headerlink" title="dl_vlan&#x3D;vlan"></a>dl_vlan&#x3D;vlan</h4><p>数据包的 VLAN Tag 值，范围是 0-4095，0xffff 代表不包含 VLAN Tag 的数据包</p><h4 id="dl-vlan-pcp-priority"><a href="#dl-vlan-pcp-priority" class="headerlink" title="dl_vlan_pcp&#x3D;priority"></a>dl_vlan_pcp&#x3D;priority</h4><p>VLAN 优先级，取值区间为[0-7]。数字越大，表示优先级越高。</p><h4 id="dl-src-xx-xx-xx-xx-xx-xx"><a href="#dl-src-xx-xx-xx-xx-xx-xx" class="headerlink" title="dl_src&#x3D;xx:xx:xx:xx:xx:xx"></a>dl_src&#x3D;xx:xx:xx:xx:xx:xx</h4><h4 id="dl-dst-xx-xx-xx-xx-xx-xx"><a href="#dl-dst-xx-xx-xx-xx-xx-xx" class="headerlink" title="dl_dst&#x3D;xx:xx:xx:xx:xx:xx"></a>dl_dst&#x3D;xx:xx:xx:xx:xx:xx</h4><p>源或目的的 MAC地址</p><ul><li><p>地址01:00:00:00:00:00&#x2F;01:00:00:00:00:00 代表广播</p></li><li><p>地址00:00:00:00:00:00&#x2F;01:00:00:00:00:00 代表单播</p></li><li><p>地址fe:ff:ff:ff:ff:ff 匹配除多播位以外的所有位，基本上不会用到。</p></li><li><p>地址ff:ff:ff:ff:ff:ff 完全匹配（等同于省略子网掩码）。</p></li><li><p>地址00:00:00:00:00:00 匹配全部位（等同于 dl_dst&#x3D;*）。</p></li></ul><p>zone: 表示ct的区域</p><pre><code>config.Default.ConntrackZone //64000HostMasqCTZone     = config.Default.ConntrackZone + 1 //64001 host区域OVNMasqCTZone      = HostMasqCTZone + 1               //64002 ovn区域HostNodePortCTZone = config.Default.ConntrackZone + 3 //64003 nodeport区域</code></pre><p><img src="/2023/03/05/ovn%E7%9A%84%E6%B5%81%E8%A1%A8%E5%88%86%E6%9E%90/ovs.png" alt="image"></p><h3 id="ovn-k8s-的-brens3f2-brp0-网桥中的流表分析"><a href="#ovn-k8s-的-brens3f2-brp0-网桥中的流表分析" class="headerlink" title="ovn-k8s 的 brens3f2(brp0) 网桥中的流表分析"></a>ovn-k8s 的 brens3f2(brp0) 网桥中的流表分析</h3><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br><span class="line">97</span><br><span class="line">98</span><br><span class="line">99</span><br><span class="line">100</span><br><span class="line">101</span><br><span class="line">102</span><br><span class="line">103</span><br><span class="line">104</span><br><span class="line">105</span><br><span class="line">106</span><br><span class="line">107</span><br><span class="line">108</span><br><span class="line">109</span><br><span class="line">110</span><br><span class="line">111</span><br><span class="line">112</span><br><span class="line">113</span><br><span class="line">114</span><br><span class="line">115</span><br><span class="line">116</span><br><span class="line">117</span><br><span class="line">118</span><br><span class="line">119</span><br><span class="line">120</span><br><span class="line">121</span><br><span class="line">122</span><br><span class="line">123</span><br><span class="line">124</span><br><span class="line">125</span><br><span class="line">126</span><br><span class="line">127</span><br><span class="line">128</span><br><span class="line">129</span><br><span class="line">130</span><br><span class="line">131</span><br><span class="line">132</span><br><span class="line">133</span><br><span class="line">134</span><br><span class="line">135</span><br><span class="line">136</span><br><span class="line">137</span><br><span class="line">138</span><br><span class="line">139</span><br><span class="line">140</span><br><span class="line">141</span><br><span class="line">142</span><br><span class="line">143</span><br><span class="line">144</span><br><span class="line">145</span><br><span class="line">146</span><br><span class="line">147</span><br><span class="line">148</span><br><span class="line">149</span><br><span class="line">150</span><br><span class="line">151</span><br><span class="line">152</span><br><span class="line">153</span><br><span class="line">154</span><br><span class="line">155</span><br><span class="line">156</span><br><span class="line">157</span><br><span class="line">158</span><br><span class="line">159</span><br><span class="line">160</span><br><span class="line">161</span><br><span class="line">162</span><br><span class="line">163</span><br><span class="line">164</span><br><span class="line">165</span><br><span class="line">166</span><br><span class="line">167</span><br><span class="line">168</span><br><span class="line">169</span><br><span class="line">170</span><br><span class="line">171</span><br><span class="line">172</span><br><span class="line">173</span><br><span class="line">174</span><br><span class="line">175</span><br><span class="line">176</span><br><span class="line">177</span><br><span class="line">178</span><br><span class="line">179</span><br><span class="line">180</span><br><span class="line">181</span><br><span class="line">182</span><br><span class="line">183</span><br><span class="line">184</span><br><span class="line">185</span><br><span class="line">186</span><br><span class="line">187</span><br><span class="line">188</span><br><span class="line">189</span><br><span class="line">190</span><br><span class="line">191</span><br><span class="line">192</span><br><span class="line">193</span><br><span class="line">194</span><br><span class="line">195</span><br><span class="line">196</span><br><span class="line">197</span><br><span class="line">198</span><br><span class="line">199</span><br><span class="line">200</span><br><span class="line">201</span><br><span class="line">202</span><br><span class="line">203</span><br><span class="line">204</span><br><span class="line">205</span><br><span class="line">206</span><br><span class="line">207</span><br><span class="line">208</span><br><span class="line">209</span><br><span class="line">210</span><br><span class="line">211</span><br><span class="line">212</span><br><span class="line">213</span><br><span class="line">214</span><br><span class="line">215</span><br><span class="line">216</span><br><span class="line">217</span><br><span class="line">218</span><br><span class="line">219</span><br><span class="line">220</span><br><span class="line">221</span><br><span class="line">222</span><br><span class="line">223</span><br><span class="line">224</span><br><span class="line">225</span><br><span class="line">226</span><br><span class="line">227</span><br><span class="line">228</span><br><span class="line">229</span><br><span class="line">230</span><br><span class="line">231</span><br><span class="line">232</span><br><span class="line">233</span><br><span class="line">234</span><br><span class="line">235</span><br><span class="line">236</span><br><span class="line">237</span><br><span class="line">238</span><br><span class="line">239</span><br><span class="line">240</span><br><span class="line">241</span><br><span class="line">242</span><br><span class="line">243</span><br><span class="line">244</span><br><span class="line">245</span><br><span class="line">246</span><br><span class="line">247</span><br><span class="line">248</span><br><span class="line">249</span><br><span class="line">250</span><br><span class="line">251</span><br><span class="line">252</span><br><span class="line">253</span><br><span class="line">254</span><br><span class="line">255</span><br><span class="line">256</span><br><span class="line">257</span><br><span class="line">258</span><br><span class="line">259</span><br><span class="line">260</span><br><span class="line">261</span><br><span class="line">262</span><br><span class="line">263</span><br><span class="line">264</span><br><span class="line">265</span><br><span class="line">266</span><br><span class="line">267</span><br><span class="line">268</span><br><span class="line">269</span><br><span class="line">270</span><br><span class="line">271</span><br><span class="line">272</span><br><span class="line">273</span><br><span class="line">274</span><br><span class="line">275</span><br><span class="line">276</span><br><span class="line">277</span><br><span class="line">278</span><br><span class="line">279</span><br><span class="line">280</span><br><span class="line">281</span><br><span class="line">282</span><br><span class="line">283</span><br><span class="line">284</span><br><span class="line">285</span><br><span class="line">286</span><br><span class="line">287</span><br><span class="line">288</span><br><span class="line">289</span><br><span class="line">290</span><br><span class="line">291</span><br><span class="line">292</span><br><span class="line">293</span><br><span class="line">294</span><br><span class="line">295</span><br><span class="line">296</span><br><span class="line">297</span><br><span class="line">298</span><br><span class="line">299</span><br><span class="line">300</span><br><span class="line">301</span><br><span class="line">302</span><br><span class="line">303</span><br><span class="line">304</span><br><span class="line">305</span><br><span class="line">306</span><br><span class="line">307</span><br><span class="line">308</span><br><span class="line">309</span><br><span class="line">310</span><br><span class="line">311</span><br><span class="line">312</span><br><span class="line">313</span><br><span class="line">314</span><br><span class="line">315</span><br><span class="line">316</span><br><span class="line">317</span><br><span class="line">318</span><br><span class="line">319</span><br><span class="line">320</span><br><span class="line">321</span><br><span class="line">322</span><br><span class="line">323</span><br><span class="line">324</span><br><span class="line">325</span><br><span class="line">326</span><br><span class="line">327</span><br><span class="line">328</span><br><span class="line">329</span><br><span class="line">330</span><br><span class="line">331</span><br><span class="line">332</span><br><span class="line">333</span><br><span class="line">334</span><br><span class="line">335</span><br><span class="line">336</span><br><span class="line">337</span><br><span class="line">338</span><br><span class="line">339</span><br><span class="line">340</span><br><span class="line">341</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#查看信息</span></span><br><span class="line"></span><br><span class="line">root@work02:~<span class="comment"># ovs-vsctl  show </span></span><br><span class="line"></span><br><span class="line">89531dd2-795e-4072-bd31-803e740041e7</span><br><span class="line"></span><br><span class="line">    Bridge br-int</span><br><span class="line"></span><br><span class="line">        fail\_mode: secure</span><br><span class="line"></span><br><span class="line">        datapath\_type: system</span><br><span class="line"></span><br><span class="line">        Port patch-br-int-to-brens3f2\_work02</span><br><span class="line"></span><br><span class="line">            Interface patch-br-int-to-brens3f2\_work02</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: patch</span><br><span class="line"></span><br><span class="line">                options: &#123;peer=patch-brens3f2\_work02-to-br-int&#125;</span><br><span class="line"></span><br><span class="line">        Port ovn-bfec55-0</span><br><span class="line"></span><br><span class="line">            Interface ovn-bfec55-0</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: vxlan</span><br><span class="line"></span><br><span class="line">                options: &#123;csum=<span class="string">&quot;true&quot;</span>, key=flow, remote\_ip=<span class="string">&quot;192.168.122.10&quot;</span>&#125;</span><br><span class="line"></span><br><span class="line">        Port ovn-eca30b-0</span><br><span class="line"></span><br><span class="line">            Interface ovn-eca30b-0</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: vxlan</span><br><span class="line"></span><br><span class="line">                options: &#123;csum=<span class="string">&quot;true&quot;</span>, key=flow, remote\_ip=<span class="string">&quot;192.168.122.101&quot;</span>&#125;</span><br><span class="line"></span><br><span class="line">        Port <span class="string">&quot;7ac47439675847a&quot;</span></span><br><span class="line"></span><br><span class="line">            Interface <span class="string">&quot;7ac47439675847a&quot;</span></span><br><span class="line"></span><br><span class="line">        Port br-int</span><br><span class="line"></span><br><span class="line">            Interface br-int</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line"></span><br><span class="line">        Port ovn-k8s-mp0</span><br><span class="line"></span><br><span class="line">            Interface ovn-k8s-mp0</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line"></span><br><span class="line">    Bridge brens3f2</span><br><span class="line"></span><br><span class="line">        fail\_mode: standalone</span><br><span class="line"></span><br><span class="line">        Port ens3f2</span><br><span class="line"></span><br><span class="line">            Interface ens3f2</span><br><span class="line"></span><br><span class="line">        Port patch-brens3f2\_work02-to-br-int</span><br><span class="line"></span><br><span class="line">            Interface patch-brens3f2\_work02-to-br-int</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: patch</span><br><span class="line"></span><br><span class="line">                options: &#123;peer=patch-br-int-to-brens3f2\_work02&#125;</span><br><span class="line"></span><br><span class="line">        Port brens3f2</span><br><span class="line"></span><br><span class="line">            Interface brens3f2</span><br><span class="line"></span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line"></span><br><span class="line">    ovs\_version: <span class="string">&quot;2.17.3&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#查看flows流表</span></span><br><span class="line"></span><br><span class="line">root@work02:~<span class="comment"># ovs-ofctl  dump-flows brens3f2</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=500,ip,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-brens3f2\_&quot;</span>,nw\_src=192.168.200.102,nw\_dst=169.254.169.2 actions=ct(commit,table=4,zone=64001,nat(dst=192.168.200.102))</span><br><span class="line"></span><br><span class="line"><span class="comment">#table=0 0表第一个表格</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#priority 级别500，数字越大级别越大</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_src 匹配源IPv4 地址，可以使 IP 地址或者域名 192.168.200.102</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 169.254.169.2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表4，设置64001区</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions &quot;ct&quot;动作将数据报文发送给链接跟踪模块。</span></span><br><span class="line"></span><br><span class="line">支持的参数如下：</span><br><span class="line"></span><br><span class="line">commit: 请求链接跟踪模块开始跟踪一个链接。</span><br><span class="line"></span><br><span class="line">table=number: 将数据报流水线复制为两份。原始的数据报作为未被跟踪的数据报在当前的动作流水线中继续处理。被复制的数据报被发送到链接跟踪模块，这些数据报会重新回到Openflow流水线中触发后续的处理，但是这些数据报中的ct\_state和其他的ct字段被置位。</span><br><span class="line"></span><br><span class="line">zone=value OR zone=src\[start..end\]: 16位的上下文<span class="built_in">id</span>，其被用于将链接隔离到不同的域，将叠加的网络映射到不同的区域中。zone的默认值为0。设置ct\_zone，在不同的域中隔离链接，从而容许IP重复</span><br><span class="line"></span><br><span class="line">nat: 为被跟踪的链接指明地址和端口nat。(作dnat 169.254.169.2 -&gt; 192.168.200.102）</span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=500,ip,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-brens3f2\_&quot;</span>,nw\_src=192.168.200.102,nw\_dst=192.168.100.102 actions=ct(commit,table=4,zone=64001)</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_src 匹配源IPv4 地址，可以使 IP 地址或者域名 192.168.200.102</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 192.168.100.102</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表4，设置64001区</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=500,ip,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-brens3f2\_&quot;</span>,nw\_src=192.168.200.102,nw\_dst=192.168.122.102 actions=ct(commit,table=4,zone=64001)</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_src 匹配源IPv4 地址，可以使 IP 地址或者域名 192.168.200.102</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 192.168.122.102</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表4，设置64001区</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=500,ip,<span class="keyword">in</span>\_port=LOCAL,nw\_dst=169.254.169.1 actions=ct(table=5,zone=64002,nat)</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port 本地网桥接口brens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 169.254.169.1 </span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表5，设置64002区，做nat</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=5, n\_bytes=490, priority=500,ip,<span class="keyword">in</span>\_port=LOCAL,nw\_dst=10.86.0.0/16 actions=ct(commit,table=2,zone=64001,nat(src=169.254.169.2))</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port 本地网桥接口brens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 10.86.0.0/16  </span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表2，设置64001区，做nat设置snat为169.254.169.2</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=500,ip,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-brens3f2\_&quot;</span>,nw\_src=10.86.0.0/16,nw\_dst=169.254.169.2 actions=ct(table=3,zone=64001,nat)</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_src 匹配源IPv4 地址，可以使 IP 地址或者域名 10.86.0.0/16 </span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 169.254.169.2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表3，设置64001区，做nat</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=205,udp,<span class="keyword">in</span>\_port=ens3f2,dl\_dst=52:54:00:a3:9e:42,tp\_dst=6081 actions=LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#udp 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port ens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#dl\_dst 匹配目标mac，52:54:00:a3:9e:42 （ens3f2，brens3f2 网卡mac地址）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#tp\_dst 匹配目标port，6081 （使用udp 封装数据，端口6081）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 动作为local（一般是转发给本地网桥）</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=200,udp,<span class="keyword">in</span>\_port=ens3f2,tp\_dst=6081 actions=NORMAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#udp 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port ens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#tp\_dst 匹配目标port，6081 （使用udp 封装数据，端口6081）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 动作为normal， 动作为normal（转为L2/L3处理流程）</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=200,udp,<span class="keyword">in</span>\_port=LOCAL,tp\_dst=6081 actions=output:ens3f2</span><br><span class="line"></span><br><span class="line"><span class="comment">#udp 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port 本地网桥接口brens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#tp\_dst 匹配目标port，6081 （使用udp 封装数据，端口6081）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 输出端口ens3f2， output:port: 输出数据包到指定的端口。port 是指端口的 OpenFlow 端口编号</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=4, n\_bytes=392, priority=100,ip,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-brens3f2\_&quot;</span> actions=ct(commit,zone=64000,<span class="built_in">exec</span>(load:0x1-&gt;NXM\_NX\_CT\_MARK\[\])),output:ens3f2</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_src 匹配源IPv4 地址，可以使 IP 地址或者域名 10.86.0.0/16 </span></span><br><span class="line"></span><br><span class="line"><span class="comment">#nw\_dst 匹配目标IPv4 地址，可以使 IP 地址或者域名 169.254.169.2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，设置64000区，输出端口ens3f2网口</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=100,ip,<span class="keyword">in</span>\_port=LOCAL actions=ct(commit,zone=64000,<span class="built_in">exec</span>(load:0x2-&gt;NXM\_NX\_CT\_MARK\[\])),output:ens3f2</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port 本地网桥接口brens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions ct开始commit跟踪一个链接，设置64000区，输出端口ens3f2网口</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#exec 设置ct执行参数load:0x2-&gt;NXM\_NX\_CT\_MARK\[\] 设置ct\_mark为0x2</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=0, n\_bytes=0, priority=50,ip,<span class="keyword">in</span>\_port=ens3f2 actions=ct(table=1,zone=64000)</span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port ens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表1，设置64000区</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=0, n\_packets=3, n\_bytes=126, priority=10,<span class="keyword">in</span>\_port=ens3f2,dl\_dst=52:54:00:a3:9e:42 actions=output:<span class="string">&quot;patch-brens3f2\_&quot;</span>,LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port ens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#dl\_dst 匹配目标mac，52:54:00:a3:9e:42 （ens3f2，brens3f2 网卡mac地址）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct开始commit跟踪一个链接，复制数据跳转到表1，设置64000区</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions local 转发给本地网桥， 输出端口为 patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=447744.377s, table=0, n\_packets=224667, n\_bytes=11696694, priority=0 actions=NORMAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#actions=NORMAL 使数据包经过设备的常规L2 / L3处理，正常处理</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ct\_mark=0x1,ip actions=output:<span class="string">&quot;patch-brens3f2\_&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_state 匹配链路状态 ct\_state=+est+trk 匹配已经建立连接,数据包过Conntrack</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_mark 设置0x1 32位的元数据被提交给数据报所对应的链接。其值为ct动作exec的参数。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 输出端口为 patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ct\_mark=0x2,ip actions=LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_state 匹配链路状态 ct\_state=+est+trk 匹配已经建立连接,数据包过Conntrack</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_mark 设置0x2 32位的元数据被提交给数据报所对应的链接。其值为ct动作exec的参数。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions local转发到本地网桥</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+rel+trk,ct\_mark=0x1,ip actions=output:<span class="string">&quot;patch-brens3f2\_&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_state 匹配链路状态 ct\_state=+rel+trk 匹配已经存在连接相关联,数据包过Conntrack</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_mark 设置0x1 32位的元数据被提交给数据报所对应的链接。其值为ct动作exec的参数。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 输出端口为 patch-brens3f2\_</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+rel+trk,ct\_mark=0x2,ip actions=LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_state 匹配链路状态 ct\_state=+rel+trk 匹配已经存在连接相关联,数据包过Conntrack</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ct\_mark 设置0x2 32位的元数据被提交给数据报所对应的链接。其值为ct动作exec的参数。</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions local转发到本地网桥</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=13,udp,<span class="keyword">in</span>\_port=ens3f2,tp\_dst=3784 actions=output:<span class="string">&quot;patch-brens3f2\_&quot;</span>,LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#udp 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#in\_port 流入口port 本地网桥接口ens3f2</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#tp\_dst 匹配目标port，3784 （BFD，端口3784）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 输出端口为 patch-brens3f2\_，local转发到本地网桥</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=10,dl\_dst=52:54:00:a3:9e:42 actions=LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#dl\_dst 匹配目标mac：52:54:00:a3:9e:42 （ens3f2，brens3f2 网卡mac地址）</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions local转发到本地网桥</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.773s, table=1, n\_packets=0, n\_bytes=0, priority=0 actions=NORMAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表1 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions=NORMAL 使数据包经过设备的常规L2 / L3处理，正常处理</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=11.200s, table=2, n\_packets=5, n\_bytes=490, actions=mod\_dl\_dst:52:54:00:a3:9e:42,output:<span class="string">&quot;patch-brens3f2\_&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表2 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 输出端口为 patch-brens3f2\_，mod\_dl\_dst修改目标mac地址为52:54:00:a3:9e:42</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=11.200s, table=3, n\_packets=0, n\_bytes=0, actions=move:NXM\_OF\_ETH\_DST\[\]-&gt;NXM\_OF\_ETH\_SRC\[\],mod\_dl\_dst:52:54:00:a3:9e:42,LOCAL</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表3 规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions 将已命名的位从字段dst复制到字段src mod\_dl\_dst修改目标mac地址为52:54:00:a3:9e:42，local转发到本地网桥</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.772s, table=4, n\_packets=0, n\_bytes=0, ip actions=ct(commit,table=3,zone=64002,nat(src=169.254.169.1))</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表4规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions ct开始commit跟踪一个链接，设置64002区，做nat设置snat为169.254.169.1</span></span><br><span class="line"></span><br><span class="line"> cookie=0xdeff105, duration=447743.772s, table=5, n\_packets=0, n\_bytes=0, ip actions=ct(commit,table=2,zone=64001,nat)</span><br><span class="line"></span><br><span class="line"><span class="comment">#table 表5规则</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#ip 匹配协议</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#actions ct开始commit跟踪一个链接，复制数据跳转到表2，设置64001区，做nat</span></span><br></pre></td></tr></table></figure><h3 id="ovn-k8s-的-br-int-网桥中的流表分析"><a href="#ovn-k8s-的-br-int-网桥中的流表分析" class="headerlink" title="ovn-k8s 的 br-int 网桥中的流表分析"></a>ovn-k8s 的 br-int 网桥中的流表分析</h3><h4 id="resubmit-port"><a href="#resubmit-port" class="headerlink" title="resubmit:port"></a>resubmit:port</h4><h4 id="resubmit-port-table"><a href="#resubmit-port-table" class="headerlink" title="resubmit([port],[table])"></a>resubmit([port],[table])</h4><p>重新搜索此OpenFlow流表（或由表指定其编号的表），用in_port字段替换为端口（如果指定了port），并执行找到的操作（如果有），以及此流条目中的任何其他操作。</p><h4 id="vlan-tci-tci-mask"><a href="#vlan-tci-tci-mask" class="headerlink" title="vlan_tci&#x3D;tci[&#x2F;mask]"></a>vlan_tci&#x3D;tci[&#x2F;mask]</h4><p>匹配修改后的VLAN TCI tci。如果省略mask，则tci是要匹配的确切VLAN TCI；如果指定了mask，则mask中的1位表示tci中的对应位必须完全匹配，而0位通配符表示该位。 tci和mask均为16位值，默认情况下为十进制。使用0x前缀以十六进制指定它们。</p><p>对于没有802.1Q标头的数据包，vlan_tci与之匹配的值为0。否则，它是802.1Q标头中的TCI值，其中CFI位（值为0x1000）被强制为1。</p><ul><li><p>vlan_tci&#x3D;0仅匹配没有802.1Q标头的数据包。</p></li><li><p>vlan_tci&#x3D;0xf123匹配VLAN 0x123中标记为优先级7的数据包。</p></li><li><p>vlan_tci&#x3D;0x1123&#x2F;0x1fff匹配标记有VLAN 0x123（和任何优先级）的数据包。</p></li><li><p>vlan_tci&#x3D;0x5000&#x2F;0xf000匹配标记为优先级2的数据包（在任何VLAN中）。</p></li><li><p>vlan_tci&#x3D;0&#x2F;0xfff匹配没有802.1Q标头或带有VLAN 0（和任何优先级）标记的数据包。</p></li><li><p>vlan_tci&#x3D;0x5000&#x2F;0xe000匹配没有802.1Q标头或带有优先级2标记的数据包（在任何VLAN中）。</p></li><li><p>vlan_tci&#x3D;0&#x2F;0xefff匹配没有802.1Q标头或带有VLAN 0和优先级0标记的数据包。</p></li></ul><p>使用dl_vlan和dl_vlan_pcp也可以实现某些匹配可能性。</p><h4 id="tun-id-tunnel-id-mask"><a href="#tun-id-tunnel-id-mask" class="headerlink" title="tun_id&#x3D;tunnel-id[&#x2F;mask]"></a>tun_id&#x3D;tunnel-id[&#x2F;mask]</h4><h4 id="tunnel-id-tunnel-id-mask"><a href="#tunnel-id-tunnel-id-mask" class="headerlink" title="tunnel_id&#x3D;tunnel-id[&#x2F;mask]"></a>tunnel_id&#x3D;tunnel-id[&#x2F;mask]</h4><p>匹配隧道标识符tunnel-id。只有通过带有密钥的隧道到达的数据包（例如具有RFC 2890密钥扩展名和非零密钥值的GRE）才会具有非零的隧道ID。如果省略mask，则tunnel-id是要匹配的确切隧道ID；如果指定了mask，则mask中的1位表示tunnel-id中的相应位必须完全匹配，而0位通配符则将该位匹配。</p><h4 id="arp-spa-ip-netmask"><a href="#arp-spa-ip-netmask" class="headerlink" title="arp_spa&#x3D;ip[&#x2F;netmask]"></a>arp_spa&#x3D;ip[&#x2F;netmask]</h4><h4 id="arp-tpa-ip-netmask"><a href="#arp-tpa-ip-netmask" class="headerlink" title="arp_tpa&#x3D;ip[&#x2F;netmask]"></a>arp_tpa&#x3D;ip[&#x2F;netmask]</h4><p>当dl_type指定ARP或RARP时，arp_spa和arp_tpa分别与源和目标IPv4地址匹配。可以将地址指定为IP地址或主机名（例如192.168.1.1或<a href="http://www.example.com）。可选的网络掩码允许将匹配限制为IPv4地址前缀。网络掩码可以指定为点分四边形（例如192.168.1.0/255.255.255.0）或CIDR块（例如192.168.1.0/24）。">www.example.com）。可选的网络掩码允许将匹配限制为IPv4地址前缀。网络掩码可以指定为点分四边形（例如192.168.1.0/255.255.255.0）或CIDR块（例如192.168.1.0/24）。</a></p><h4 id="arp-sha-xx-xx-xx-xx-xx-xx"><a href="#arp-sha-xx-xx-xx-xx-xx-xx" class="headerlink" title="arp_sha&#x3D;xx:xx:xx:xx:xx:xx"></a>arp_sha&#x3D;xx:xx:xx:xx:xx:xx</h4><h4 id="arp-tha-xx-xx-xx-xx-xx-xx"><a href="#arp-tha-xx-xx-xx-xx-xx-xx" class="headerlink" title="arp_tha&#x3D;xx:xx:xx:xx:xx:xx"></a>arp_tha&#x3D;xx:xx:xx:xx:xx:xx</h4><p>当dl_type指定ARP或RARP时，arp_sha和arp_tha分别匹配源和目标硬件地址。地址指定为以冒号分隔的6对十六进制数字（例如00:0A:E4:25:6B:B0）。</p><h4 id="arp-sha-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx"><a href="#arp-sha-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx" class="headerlink" title="arp_sha&#x3D;xx:xx:xx:xx:xx:xx&#x2F;xx:xx:xx:xx:xx:xx"></a>arp_sha&#x3D;xx:xx:xx:xx:xx:xx&#x2F;xx:xx:xx:xx:xx:xx</h4><h4 id="arp-tha-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx"><a href="#arp-tha-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx" class="headerlink" title="arp_tha&#x3D;xx:xx:xx:xx:xx:xx&#x2F;xx:xx:xx:xx:xx:xx"></a>arp_tha&#x3D;xx:xx:xx:xx:xx:xx&#x2F;xx:xx:xx:xx:xx:xx</h4><p>当dl_type指定ARP或RARP时，arp_sha和arp_tha分别匹配源和目标硬件地址。地址指定为以冒号分隔的6对十六进制数字（例如00:0A:E4:25:6B:B0），并在斜杠后加上通配符掩码。</p><h4 id="arp-op-opcode"><a href="#arp-op-opcode" class="headerlink" title="arp_op&#x3D;opcode"></a>arp_op&#x3D;opcode</h4><p>当dl_type指定ARP或RARP时，arp_op与ARP操作码匹配。只能指定1到255之间的ARP操作码进行匹配。</p><h4 id="icmp-type-type"><a href="#icmp-type-type" class="headerlink" title="icmp_type&#x3D;type"></a>icmp_type&#x3D;type</h4><h4 id="icmp-code-code"><a href="#icmp-code-code" class="headerlink" title="icmp_code&#x3D;code"></a>icmp_code&#x3D;code</h4><p>当dl_type和nw_proto指定ICMP或ICMPv6时，type匹配ICMP类型，而代码匹配ICMP代码。每个参数都指定为介于0和255之间（含两端）的十进制数。</p><p>当dl_type和nw_proto采用其他值时，这些设置的值将被忽略（请参见上面的流语法）。</p><h4 id="metadata-value-mask"><a href="#metadata-value-mask" class="headerlink" title="metadata&#x3D;value[&#x2F;mask]"></a>metadata&#x3D;value[&#x2F;mask]</h4><p>在元数据字段中完全匹配值或使用可选掩码匹配值。 value和mask是64位整数，默认情况下为十进制（使用0x前缀指定十六进制）。允许使用任意掩码值：掩码中的1位表示值中的对应位必须完全匹配，而该位则使用0位通配符。在Open vSwitch 1.8中添加了对元数据的匹配。</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br><span class="line">97</span><br><span class="line">98</span><br><span class="line">99</span><br><span class="line">100</span><br><span class="line">101</span><br><span class="line">102</span><br><span class="line">103</span><br><span class="line">104</span><br><span class="line">105</span><br><span class="line">106</span><br><span class="line">107</span><br><span class="line">108</span><br><span class="line">109</span><br><span class="line">110</span><br><span class="line">111</span><br><span class="line">112</span><br><span class="line">113</span><br><span class="line">114</span><br><span class="line">115</span><br><span class="line">116</span><br><span class="line">117</span><br><span class="line">118</span><br><span class="line">119</span><br><span class="line">120</span><br><span class="line">121</span><br><span class="line">122</span><br><span class="line">123</span><br><span class="line">124</span><br><span class="line">125</span><br><span class="line">126</span><br><span class="line">127</span><br><span class="line">128</span><br><span class="line">129</span><br><span class="line">130</span><br><span class="line">131</span><br><span class="line">132</span><br><span class="line">133</span><br><span class="line">134</span><br><span class="line">135</span><br><span class="line">136</span><br><span class="line">137</span><br><span class="line">138</span><br><span class="line">139</span><br><span class="line">140</span><br><span class="line">141</span><br><span class="line">142</span><br><span class="line">143</span><br><span class="line">144</span><br><span class="line">145</span><br><span class="line">146</span><br><span class="line">147</span><br><span class="line">148</span><br><span class="line">149</span><br><span class="line">150</span><br><span class="line">151</span><br><span class="line">152</span><br><span class="line">153</span><br><span class="line">154</span><br><span class="line">155</span><br><span class="line">156</span><br><span class="line">157</span><br><span class="line">158</span><br><span class="line">159</span><br><span class="line">160</span><br><span class="line">161</span><br><span class="line">162</span><br><span class="line">163</span><br><span class="line">164</span><br><span class="line">165</span><br><span class="line">166</span><br><span class="line">167</span><br><span class="line">168</span><br><span class="line">169</span><br><span class="line">170</span><br><span class="line">171</span><br><span class="line">172</span><br><span class="line">173</span><br><span class="line">174</span><br><span class="line">175</span><br><span class="line">176</span><br><span class="line">177</span><br><span class="line">178</span><br><span class="line">179</span><br><span class="line">180</span><br><span class="line">181</span><br><span class="line">182</span><br><span class="line">183</span><br><span class="line">184</span><br><span class="line">185</span><br><span class="line">186</span><br><span class="line">187</span><br><span class="line">188</span><br><span class="line">189</span><br><span class="line">190</span><br><span class="line">191</span><br><span class="line">192</span><br><span class="line">193</span><br><span class="line">194</span><br><span class="line">195</span><br><span class="line">196</span><br><span class="line">197</span><br><span class="line">198</span><br><span class="line">199</span><br><span class="line">200</span><br><span class="line">201</span><br><span class="line">202</span><br><span class="line">203</span><br><span class="line">204</span><br><span class="line">205</span><br><span class="line">206</span><br><span class="line">207</span><br><span class="line">208</span><br><span class="line">209</span><br><span class="line">210</span><br><span class="line">211</span><br><span class="line">212</span><br><span class="line">213</span><br><span class="line">214</span><br><span class="line">215</span><br><span class="line">216</span><br><span class="line">217</span><br><span class="line">218</span><br><span class="line">219</span><br><span class="line">220</span><br><span class="line">221</span><br><span class="line">222</span><br><span class="line">223</span><br><span class="line">224</span><br><span class="line">225</span><br><span class="line">226</span><br><span class="line">227</span><br><span class="line">228</span><br><span class="line">229</span><br><span class="line">230</span><br><span class="line">231</span><br><span class="line">232</span><br><span class="line">233</span><br><span class="line">234</span><br><span class="line">235</span><br><span class="line">236</span><br><span class="line">237</span><br><span class="line">238</span><br><span class="line">239</span><br><span class="line">240</span><br><span class="line">241</span><br><span class="line">242</span><br><span class="line">243</span><br><span class="line">244</span><br><span class="line">245</span><br><span class="line">246</span><br><span class="line">247</span><br><span class="line">248</span><br><span class="line">249</span><br><span class="line">250</span><br><span class="line">251</span><br><span class="line">252</span><br><span class="line">253</span><br><span class="line">254</span><br><span class="line">255</span><br><span class="line">256</span><br><span class="line">257</span><br><span class="line">258</span><br><span class="line">259</span><br><span class="line">260</span><br><span class="line">261</span><br><span class="line">262</span><br><span class="line">263</span><br><span class="line">264</span><br><span class="line">265</span><br><span class="line">266</span><br><span class="line">267</span><br><span class="line">268</span><br><span class="line">269</span><br><span class="line">270</span><br><span class="line">271</span><br><span class="line">272</span><br><span class="line">273</span><br><span class="line">274</span><br><span class="line">275</span><br><span class="line">276</span><br><span class="line">277</span><br><span class="line">278</span><br><span class="line">279</span><br><span class="line">280</span><br><span class="line">281</span><br><span class="line">282</span><br><span class="line">283</span><br><span class="line">284</span><br><span class="line">285</span><br><span class="line">286</span><br><span class="line">287</span><br><span class="line">288</span><br><span class="line">289</span><br><span class="line">290</span><br><span class="line">291</span><br><span class="line">292</span><br><span class="line">293</span><br><span class="line">294</span><br><span class="line">295</span><br><span class="line">296</span><br><span class="line">297</span><br><span class="line">298</span><br><span class="line">299</span><br><span class="line">300</span><br><span class="line">301</span><br><span class="line">302</span><br><span class="line">303</span><br><span class="line">304</span><br><span class="line">305</span><br><span class="line">306</span><br><span class="line">307</span><br><span class="line">308</span><br><span class="line">309</span><br><span class="line">310</span><br><span class="line">311</span><br><span class="line">312</span><br><span class="line">313</span><br><span class="line">314</span><br><span class="line">315</span><br><span class="line">316</span><br><span class="line">317</span><br><span class="line">318</span><br><span class="line">319</span><br><span class="line">320</span><br><span class="line">321</span><br><span class="line">322</span><br><span class="line">323</span><br><span class="line">324</span><br><span class="line">325</span><br><span class="line">326</span><br><span class="line">327</span><br><span class="line">328</span><br><span class="line">329</span><br><span class="line">330</span><br><span class="line">331</span><br><span class="line">332</span><br><span class="line">333</span><br><span class="line">334</span><br><span class="line">335</span><br><span class="line">336</span><br><span class="line">337</span><br><span class="line">338</span><br><span class="line">339</span><br><span class="line">340</span><br><span class="line">341</span><br><span class="line">342</span><br><span class="line">343</span><br><span class="line">344</span><br><span class="line">345</span><br><span class="line">346</span><br><span class="line">347</span><br><span class="line">348</span><br><span class="line">349</span><br><span class="line">350</span><br><span class="line">351</span><br><span class="line">352</span><br><span class="line">353</span><br><span class="line">354</span><br><span class="line">355</span><br><span class="line">356</span><br><span class="line">357</span><br><span class="line">358</span><br><span class="line">359</span><br><span class="line">360</span><br><span class="line">361</span><br><span class="line">362</span><br><span class="line">363</span><br><span class="line">364</span><br><span class="line">365</span><br><span class="line">366</span><br><span class="line">367</span><br><span class="line">368</span><br><span class="line">369</span><br><span class="line">370</span><br><span class="line">371</span><br><span class="line">372</span><br><span class="line">373</span><br><span class="line">374</span><br><span class="line">375</span><br><span class="line">376</span><br><span class="line">377</span><br><span class="line">378</span><br><span class="line">379</span><br><span class="line">380</span><br><span class="line">381</span><br><span class="line">382</span><br><span class="line">383</span><br><span class="line">384</span><br><span class="line">385</span><br><span class="line">386</span><br><span class="line">387</span><br><span class="line">388</span><br><span class="line">389</span><br><span class="line">390</span><br><span class="line">391</span><br><span class="line">392</span><br><span class="line">393</span><br><span class="line">394</span><br><span class="line">395</span><br><span class="line">396</span><br><span class="line">397</span><br><span class="line">398</span><br><span class="line">399</span><br><span class="line">400</span><br><span class="line">401</span><br><span class="line">402</span><br><span class="line">403</span><br><span class="line">404</span><br><span class="line">405</span><br><span class="line">406</span><br><span class="line">407</span><br><span class="line">408</span><br><span class="line">409</span><br><span class="line">410</span><br><span class="line">411</span><br><span class="line">412</span><br><span class="line">413</span><br><span class="line">414</span><br><span class="line">415</span><br><span class="line">416</span><br><span class="line">417</span><br><span class="line">418</span><br><span class="line">419</span><br><span class="line">420</span><br><span class="line">421</span><br><span class="line">422</span><br><span class="line">423</span><br><span class="line">424</span><br><span class="line">425</span><br><span class="line">426</span><br><span class="line">427</span><br><span class="line">428</span><br><span class="line">429</span><br><span class="line">430</span><br><span class="line">431</span><br><span class="line">432</span><br><span class="line">433</span><br><span class="line">434</span><br><span class="line">435</span><br><span class="line">436</span><br><span class="line">437</span><br><span class="line">438</span><br><span class="line">439</span><br><span class="line">440</span><br><span class="line">441</span><br><span class="line">442</span><br><span class="line">443</span><br><span class="line">444</span><br><span class="line">445</span><br><span class="line">446</span><br><span class="line">447</span><br><span class="line">448</span><br><span class="line">449</span><br><span class="line">450</span><br><span class="line">451</span><br><span class="line">452</span><br><span class="line">453</span><br><span class="line">454</span><br><span class="line">455</span><br><span class="line">456</span><br><span class="line">457</span><br><span class="line">458</span><br><span class="line">459</span><br><span class="line">460</span><br><span class="line">461</span><br><span class="line">462</span><br><span class="line">463</span><br><span class="line">464</span><br><span class="line">465</span><br><span class="line">466</span><br><span class="line">467</span><br><span class="line">468</span><br><span class="line">469</span><br><span class="line">470</span><br><span class="line">471</span><br><span class="line">472</span><br><span class="line">473</span><br><span class="line">474</span><br><span class="line">475</span><br><span class="line">476</span><br><span class="line">477</span><br><span class="line">478</span><br><span class="line">479</span><br><span class="line">480</span><br><span class="line">481</span><br><span class="line">482</span><br><span class="line">483</span><br><span class="line">484</span><br><span class="line">485</span><br><span class="line">486</span><br><span class="line">487</span><br><span class="line">488</span><br><span class="line">489</span><br><span class="line">490</span><br><span class="line">491</span><br><span class="line">492</span><br><span class="line">493</span><br><span class="line">494</span><br><span class="line">495</span><br><span class="line">496</span><br><span class="line">497</span><br><span class="line">498</span><br><span class="line">499</span><br><span class="line">500</span><br><span class="line">501</span><br><span class="line">502</span><br><span class="line">503</span><br><span class="line">504</span><br><span class="line">505</span><br><span class="line">506</span><br><span class="line">507</span><br><span class="line">508</span><br><span class="line">509</span><br><span class="line">510</span><br><span class="line">511</span><br><span class="line">512</span><br><span class="line">513</span><br><span class="line">514</span><br><span class="line">515</span><br><span class="line">516</span><br><span class="line">517</span><br><span class="line">518</span><br><span class="line">519</span><br><span class="line">520</span><br><span class="line">521</span><br><span class="line">522</span><br><span class="line">523</span><br><span class="line">524</span><br><span class="line">525</span><br><span class="line">526</span><br><span class="line">527</span><br><span class="line">528</span><br><span class="line">529</span><br><span class="line">530</span><br><span class="line">531</span><br><span class="line">532</span><br><span class="line">533</span><br><span class="line">534</span><br><span class="line">535</span><br><span class="line">536</span><br><span class="line">537</span><br><span class="line">538</span><br><span class="line">539</span><br><span class="line">540</span><br><span class="line">541</span><br><span class="line">542</span><br><span class="line">543</span><br><span class="line">544</span><br><span class="line">545</span><br><span class="line">546</span><br><span class="line">547</span><br><span class="line">548</span><br><span class="line">549</span><br><span class="line">550</span><br><span class="line">551</span><br><span class="line">552</span><br><span class="line">553</span><br><span class="line">554</span><br><span class="line">555</span><br><span class="line">556</span><br><span class="line">557</span><br><span class="line">558</span><br><span class="line">559</span><br><span class="line">560</span><br><span class="line">561</span><br><span class="line">562</span><br><span class="line">563</span><br><span class="line">564</span><br><span class="line">565</span><br><span class="line">566</span><br><span class="line">567</span><br><span class="line">568</span><br><span class="line">569</span><br><span class="line">570</span><br><span class="line">571</span><br><span class="line">572</span><br><span class="line">573</span><br><span class="line">574</span><br><span class="line">575</span><br><span class="line">576</span><br><span class="line">577</span><br><span class="line">578</span><br><span class="line">579</span><br><span class="line">580</span><br><span class="line">581</span><br><span class="line">582</span><br><span class="line">583</span><br><span class="line">584</span><br><span class="line">585</span><br><span class="line">586</span><br><span class="line">587</span><br><span class="line">588</span><br><span class="line">589</span><br><span class="line">590</span><br><span class="line">591</span><br><span class="line">592</span><br><span class="line">593</span><br><span class="line">594</span><br><span class="line">595</span><br><span class="line">596</span><br><span class="line">597</span><br><span class="line">598</span><br><span class="line">599</span><br><span class="line">600</span><br><span class="line">601</span><br><span class="line">602</span><br><span class="line">603</span><br><span class="line">604</span><br><span class="line">605</span><br><span class="line">606</span><br><span class="line">607</span><br><span class="line">608</span><br><span class="line">609</span><br><span class="line">610</span><br><span class="line">611</span><br><span class="line">612</span><br><span class="line">613</span><br><span class="line">614</span><br><span class="line">615</span><br><span class="line">616</span><br><span class="line">617</span><br><span class="line">618</span><br><span class="line">619</span><br><span class="line">620</span><br><span class="line">621</span><br><span class="line">622</span><br><span class="line">623</span><br><span class="line">624</span><br><span class="line">625</span><br><span class="line">626</span><br><span class="line">627</span><br><span class="line">628</span><br><span class="line">629</span><br><span class="line">630</span><br><span class="line">631</span><br><span class="line">632</span><br><span class="line">633</span><br><span class="line">634</span><br><span class="line">635</span><br><span class="line">636</span><br><span class="line">637</span><br><span class="line">638</span><br><span class="line">639</span><br><span class="line">640</span><br><span class="line">641</span><br><span class="line">642</span><br><span class="line">643</span><br><span class="line">644</span><br><span class="line">645</span><br><span class="line">646</span><br><span class="line">647</span><br><span class="line">648</span><br><span class="line">649</span><br><span class="line">650</span><br><span class="line">651</span><br><span class="line">652</span><br><span class="line">653</span><br><span class="line">654</span><br><span class="line">655</span><br><span class="line">656</span><br><span class="line">657</span><br><span class="line">658</span><br><span class="line">659</span><br><span class="line">660</span><br><span class="line">661</span><br><span class="line">662</span><br><span class="line">663</span><br><span class="line">664</span><br><span class="line">665</span><br><span class="line">666</span><br><span class="line">667</span><br><span class="line">668</span><br><span class="line">669</span><br><span class="line">670</span><br><span class="line">671</span><br><span class="line">672</span><br><span class="line">673</span><br><span class="line">674</span><br><span class="line">675</span><br><span class="line">676</span><br><span class="line">677</span><br><span class="line">678</span><br><span class="line">679</span><br><span class="line">680</span><br><span class="line">681</span><br><span class="line">682</span><br><span class="line">683</span><br><span class="line">684</span><br><span class="line">685</span><br><span class="line">686</span><br><span class="line">687</span><br><span class="line">688</span><br><span class="line">689</span><br><span class="line">690</span><br><span class="line">691</span><br><span class="line">692</span><br><span class="line">693</span><br><span class="line">694</span><br><span class="line">695</span><br><span class="line">696</span><br><span class="line">697</span><br><span class="line">698</span><br><span class="line">699</span><br><span class="line">700</span><br><span class="line">701</span><br><span class="line">702</span><br><span class="line">703</span><br><span class="line">704</span><br><span class="line">705</span><br><span class="line">706</span><br><span class="line">707</span><br><span class="line">708</span><br><span class="line">709</span><br><span class="line">710</span><br><span class="line">711</span><br><span class="line">712</span><br><span class="line">713</span><br><span class="line">714</span><br><span class="line">715</span><br><span class="line">716</span><br><span class="line">717</span><br><span class="line">718</span><br><span class="line">719</span><br><span class="line">720</span><br><span class="line">721</span><br><span class="line">722</span><br><span class="line">723</span><br><span class="line">724</span><br><span class="line">725</span><br><span class="line">726</span><br><span class="line">727</span><br><span class="line">728</span><br><span class="line">729</span><br><span class="line">730</span><br><span class="line">731</span><br><span class="line">732</span><br><span class="line">733</span><br><span class="line">734</span><br><span class="line">735</span><br><span class="line">736</span><br><span class="line">737</span><br><span class="line">738</span><br><span class="line">739</span><br><span class="line">740</span><br><span class="line">741</span><br><span class="line">742</span><br><span class="line">743</span><br><span class="line">744</span><br><span class="line">745</span><br><span class="line">746</span><br><span class="line">747</span><br><span class="line">748</span><br><span class="line">749</span><br><span class="line">750</span><br><span class="line">751</span><br><span class="line">752</span><br><span class="line">753</span><br><span class="line">754</span><br><span class="line">755</span><br><span class="line">756</span><br><span class="line">757</span><br><span class="line">758</span><br><span class="line">759</span><br><span class="line">760</span><br><span class="line">761</span><br><span class="line">762</span><br><span class="line">763</span><br><span class="line">764</span><br><span class="line">765</span><br><span class="line">766</span><br><span class="line">767</span><br><span class="line">768</span><br><span class="line">769</span><br><span class="line">770</span><br><span class="line">771</span><br><span class="line">772</span><br><span class="line">773</span><br><span class="line">774</span><br><span class="line">775</span><br><span class="line">776</span><br><span class="line">777</span><br><span class="line">778</span><br><span class="line">779</span><br><span class="line">780</span><br><span class="line">781</span><br><span class="line">782</span><br><span class="line">783</span><br><span class="line">784</span><br><span class="line">785</span><br><span class="line">786</span><br><span class="line">787</span><br><span class="line">788</span><br><span class="line">789</span><br><span class="line">790</span><br><span class="line">791</span><br><span class="line">792</span><br><span class="line">793</span><br><span class="line">794</span><br><span class="line">795</span><br><span class="line">796</span><br><span class="line">797</span><br><span class="line">798</span><br><span class="line">799</span><br><span class="line">800</span><br><span class="line">801</span><br><span class="line">802</span><br><span class="line">803</span><br><span class="line">804</span><br><span class="line">805</span><br><span class="line">806</span><br><span class="line">807</span><br><span class="line">808</span><br><span class="line">809</span><br><span class="line">810</span><br><span class="line">811</span><br><span class="line">812</span><br><span class="line">813</span><br><span class="line">814</span><br><span class="line">815</span><br><span class="line">816</span><br><span class="line">817</span><br><span class="line">818</span><br><span class="line">819</span><br><span class="line">820</span><br><span class="line">821</span><br><span class="line">822</span><br><span class="line">823</span><br><span class="line">824</span><br><span class="line">825</span><br><span class="line">826</span><br><span class="line">827</span><br><span class="line">828</span><br><span class="line">829</span><br><span class="line">830</span><br><span class="line">831</span><br><span class="line">832</span><br><span class="line">833</span><br><span class="line">834</span><br><span class="line">835</span><br><span class="line">836</span><br><span class="line">837</span><br><span class="line">838</span><br><span class="line">839</span><br><span class="line">840</span><br><span class="line">841</span><br><span class="line">842</span><br><span class="line">843</span><br><span class="line">844</span><br><span class="line">845</span><br><span class="line">846</span><br><span class="line">847</span><br><span class="line">848</span><br><span class="line">849</span><br><span class="line">850</span><br><span class="line">851</span><br><span class="line">852</span><br><span class="line">853</span><br><span class="line">854</span><br><span class="line">855</span><br><span class="line">856</span><br><span class="line">857</span><br><span class="line">858</span><br><span class="line">859</span><br><span class="line">860</span><br><span class="line">861</span><br><span class="line">862</span><br><span class="line">863</span><br><span class="line">864</span><br><span class="line">865</span><br><span class="line">866</span><br><span class="line">867</span><br><span class="line">868</span><br><span class="line">869</span><br><span class="line">870</span><br><span class="line">871</span><br><span class="line">872</span><br><span class="line">873</span><br><span class="line">874</span><br><span class="line">875</span><br><span class="line">876</span><br><span class="line">877</span><br><span class="line">878</span><br><span class="line">879</span><br><span class="line">880</span><br><span class="line">881</span><br><span class="line">882</span><br><span class="line">883</span><br><span class="line">884</span><br><span class="line">885</span><br><span class="line">886</span><br><span class="line">887</span><br><span class="line">888</span><br><span class="line">889</span><br><span class="line">890</span><br><span class="line">891</span><br><span class="line">892</span><br><span class="line">893</span><br><span class="line">894</span><br><span class="line">895</span><br><span class="line">896</span><br><span class="line">897</span><br><span class="line">898</span><br><span class="line">899</span><br><span class="line">900</span><br><span class="line">901</span><br><span class="line">902</span><br><span class="line">903</span><br><span class="line">904</span><br><span class="line">905</span><br><span class="line">906</span><br><span class="line">907</span><br><span class="line">908</span><br><span class="line">909</span><br><span class="line">910</span><br><span class="line">911</span><br><span class="line">912</span><br><span class="line">913</span><br><span class="line">914</span><br><span class="line">915</span><br><span class="line">916</span><br><span class="line">917</span><br><span class="line">918</span><br><span class="line">919</span><br><span class="line">920</span><br><span class="line">921</span><br><span class="line">922</span><br><span class="line">923</span><br><span class="line">924</span><br><span class="line">925</span><br><span class="line">926</span><br><span class="line">927</span><br><span class="line">928</span><br><span class="line">929</span><br><span class="line">930</span><br><span class="line">931</span><br><span class="line">932</span><br><span class="line">933</span><br><span class="line">934</span><br><span class="line">935</span><br><span class="line">936</span><br><span class="line">937</span><br><span class="line">938</span><br><span class="line">939</span><br><span class="line">940</span><br><span class="line">941</span><br><span class="line">942</span><br><span class="line">943</span><br><span class="line">944</span><br><span class="line">945</span><br><span class="line">946</span><br><span class="line">947</span><br><span class="line">948</span><br><span class="line">949</span><br><span class="line">950</span><br><span class="line">951</span><br><span class="line">952</span><br><span class="line">953</span><br><span class="line">954</span><br><span class="line">955</span><br><span class="line">956</span><br><span class="line">957</span><br><span class="line">958</span><br><span class="line">959</span><br><span class="line">960</span><br><span class="line">961</span><br><span class="line">962</span><br><span class="line">963</span><br><span class="line">964</span><br><span class="line">965</span><br><span class="line">966</span><br><span class="line">967</span><br><span class="line">968</span><br><span class="line">969</span><br><span class="line">970</span><br><span class="line">971</span><br><span class="line">972</span><br><span class="line">973</span><br><span class="line">974</span><br><span class="line">975</span><br><span class="line">976</span><br><span class="line">977</span><br><span class="line">978</span><br><span class="line">979</span><br><span class="line">980</span><br><span class="line">981</span><br><span class="line">982</span><br><span class="line">983</span><br><span class="line">984</span><br><span class="line">985</span><br><span class="line">986</span><br><span class="line">987</span><br><span class="line">988</span><br><span class="line">989</span><br><span class="line">990</span><br><span class="line">991</span><br><span class="line">992</span><br><span class="line">993</span><br><span class="line">994</span><br><span class="line">995</span><br><span class="line">996</span><br><span class="line">997</span><br><span class="line">998</span><br><span class="line">999</span><br><span class="line">1000</span><br><span class="line">1001</span><br><span class="line">1002</span><br><span class="line">1003</span><br><span class="line">1004</span><br><span class="line">1005</span><br><span class="line">1006</span><br><span class="line">1007</span><br><span class="line">1008</span><br><span class="line">1009</span><br><span class="line">1010</span><br><span class="line">1011</span><br><span class="line">1012</span><br><span class="line">1013</span><br><span class="line">1014</span><br><span class="line">1015</span><br><span class="line">1016</span><br><span class="line">1017</span><br><span class="line">1018</span><br><span class="line">1019</span><br><span class="line">1020</span><br><span class="line">1021</span><br><span class="line">1022</span><br><span class="line">1023</span><br><span class="line">1024</span><br><span class="line">1025</span><br><span class="line">1026</span><br><span class="line">1027</span><br><span class="line">1028</span><br><span class="line">1029</span><br><span class="line">1030</span><br><span class="line">1031</span><br><span class="line">1032</span><br><span class="line">1033</span><br><span class="line">1034</span><br><span class="line">1035</span><br><span class="line">1036</span><br><span class="line">1037</span><br><span class="line">1038</span><br><span class="line">1039</span><br><span class="line">1040</span><br><span class="line">1041</span><br><span class="line">1042</span><br><span class="line">1043</span><br><span class="line">1044</span><br><span class="line">1045</span><br><span class="line">1046</span><br><span class="line">1047</span><br><span class="line">1048</span><br><span class="line">1049</span><br><span class="line">1050</span><br><span class="line">1051</span><br><span class="line">1052</span><br><span class="line">1053</span><br><span class="line">1054</span><br><span class="line">1055</span><br><span class="line">1056</span><br><span class="line">1057</span><br><span class="line">1058</span><br><span class="line">1059</span><br><span class="line">1060</span><br><span class="line">1061</span><br><span class="line">1062</span><br><span class="line">1063</span><br><span class="line">1064</span><br><span class="line">1065</span><br><span class="line">1066</span><br><span class="line">1067</span><br><span class="line">1068</span><br><span class="line">1069</span><br><span class="line">1070</span><br><span class="line">1071</span><br><span class="line">1072</span><br><span class="line">1073</span><br><span class="line">1074</span><br><span class="line">1075</span><br><span class="line">1076</span><br><span class="line">1077</span><br><span class="line">1078</span><br><span class="line">1079</span><br><span class="line">1080</span><br><span class="line">1081</span><br><span class="line">1082</span><br><span class="line">1083</span><br><span class="line">1084</span><br><span class="line">1085</span><br><span class="line">1086</span><br><span class="line">1087</span><br><span class="line">1088</span><br><span class="line">1089</span><br><span class="line">1090</span><br><span class="line">1091</span><br><span class="line">1092</span><br><span class="line">1093</span><br><span class="line">1094</span><br><span class="line">1095</span><br><span class="line">1096</span><br><span class="line">1097</span><br><span class="line">1098</span><br><span class="line">1099</span><br><span class="line">1100</span><br><span class="line">1101</span><br><span class="line">1102</span><br><span class="line">1103</span><br><span class="line">1104</span><br><span class="line">1105</span><br><span class="line">1106</span><br><span class="line">1107</span><br><span class="line">1108</span><br><span class="line">1109</span><br><span class="line">1110</span><br><span class="line">1111</span><br><span class="line">1112</span><br><span class="line">1113</span><br><span class="line">1114</span><br><span class="line">1115</span><br><span class="line">1116</span><br><span class="line">1117</span><br><span class="line">1118</span><br><span class="line">1119</span><br><span class="line">1120</span><br><span class="line">1121</span><br><span class="line">1122</span><br><span class="line">1123</span><br><span class="line">1124</span><br><span class="line">1125</span><br><span class="line">1126</span><br><span class="line">1127</span><br><span class="line">1128</span><br><span class="line">1129</span><br><span class="line">1130</span><br><span class="line">1131</span><br><span class="line">1132</span><br><span class="line">1133</span><br><span class="line">1134</span><br><span class="line">1135</span><br><span class="line">1136</span><br><span class="line">1137</span><br><span class="line">1138</span><br><span class="line">1139</span><br><span class="line">1140</span><br><span class="line">1141</span><br><span class="line">1142</span><br><span class="line">1143</span><br><span class="line">1144</span><br><span class="line">1145</span><br><span class="line">1146</span><br><span class="line">1147</span><br><span class="line">1148</span><br><span class="line">1149</span><br><span class="line">1150</span><br><span class="line">1151</span><br><span class="line">1152</span><br><span class="line">1153</span><br><span class="line">1154</span><br><span class="line">1155</span><br><span class="line">1156</span><br><span class="line">1157</span><br><span class="line">1158</span><br><span class="line">1159</span><br><span class="line">1160</span><br><span class="line">1161</span><br><span class="line">1162</span><br><span class="line">1163</span><br><span class="line">1164</span><br><span class="line">1165</span><br><span class="line">1166</span><br><span class="line">1167</span><br><span class="line">1168</span><br><span class="line">1169</span><br><span class="line">1170</span><br><span class="line">1171</span><br><span class="line">1172</span><br><span class="line">1173</span><br><span class="line">1174</span><br><span class="line">1175</span><br><span class="line">1176</span><br><span class="line">1177</span><br><span class="line">1178</span><br><span class="line">1179</span><br><span class="line">1180</span><br><span class="line">1181</span><br><span class="line">1182</span><br><span class="line">1183</span><br><span class="line">1184</span><br><span class="line">1185</span><br><span class="line">1186</span><br><span class="line">1187</span><br><span class="line">1188</span><br><span class="line">1189</span><br><span class="line">1190</span><br><span class="line">1191</span><br><span class="line">1192</span><br><span class="line">1193</span><br><span class="line">1194</span><br><span class="line">1195</span><br><span class="line">1196</span><br><span class="line">1197</span><br><span class="line">1198</span><br><span class="line">1199</span><br><span class="line">1200</span><br><span class="line">1201</span><br><span class="line">1202</span><br><span class="line">1203</span><br><span class="line">1204</span><br><span class="line">1205</span><br><span class="line">1206</span><br><span class="line">1207</span><br><span class="line">1208</span><br><span class="line">1209</span><br><span class="line">1210</span><br><span class="line">1211</span><br><span class="line">1212</span><br><span class="line">1213</span><br><span class="line">1214</span><br><span class="line">1215</span><br><span class="line">1216</span><br><span class="line">1217</span><br><span class="line">1218</span><br><span class="line">1219</span><br><span class="line">1220</span><br><span class="line">1221</span><br><span class="line">1222</span><br><span class="line">1223</span><br><span class="line">1224</span><br><span class="line">1225</span><br><span class="line">1226</span><br><span class="line">1227</span><br><span class="line">1228</span><br><span class="line">1229</span><br><span class="line">1230</span><br><span class="line">1231</span><br><span class="line">1232</span><br><span class="line">1233</span><br><span class="line">1234</span><br><span class="line">1235</span><br><span class="line">1236</span><br><span class="line">1237</span><br><span class="line">1238</span><br><span class="line">1239</span><br><span class="line">1240</span><br><span class="line">1241</span><br><span class="line">1242</span><br><span class="line">1243</span><br><span class="line">1244</span><br><span class="line">1245</span><br><span class="line">1246</span><br><span class="line">1247</span><br><span class="line">1248</span><br><span class="line">1249</span><br><span class="line">1250</span><br><span class="line">1251</span><br><span class="line">1252</span><br><span class="line">1253</span><br><span class="line">1254</span><br><span class="line">1255</span><br><span class="line">1256</span><br><span class="line">1257</span><br><span class="line">1258</span><br><span class="line">1259</span><br><span class="line">1260</span><br><span class="line">1261</span><br><span class="line">1262</span><br><span class="line">1263</span><br><span class="line">1264</span><br><span class="line">1265</span><br><span class="line">1266</span><br><span class="line">1267</span><br><span class="line">1268</span><br><span class="line">1269</span><br><span class="line">1270</span><br><span class="line">1271</span><br><span class="line">1272</span><br><span class="line">1273</span><br><span class="line">1274</span><br><span class="line">1275</span><br><span class="line">1276</span><br><span class="line">1277</span><br><span class="line">1278</span><br><span class="line">1279</span><br><span class="line">1280</span><br><span class="line">1281</span><br><span class="line">1282</span><br><span class="line">1283</span><br><span class="line">1284</span><br><span class="line">1285</span><br><span class="line">1286</span><br><span class="line">1287</span><br><span class="line">1288</span><br><span class="line">1289</span><br><span class="line">1290</span><br><span class="line">1291</span><br><span class="line">1292</span><br><span class="line">1293</span><br><span class="line">1294</span><br><span class="line">1295</span><br><span class="line">1296</span><br><span class="line">1297</span><br><span class="line">1298</span><br><span class="line">1299</span><br><span class="line">1300</span><br><span class="line">1301</span><br><span class="line">1302</span><br><span class="line">1303</span><br><span class="line">1304</span><br><span class="line">1305</span><br><span class="line">1306</span><br><span class="line">1307</span><br><span class="line">1308</span><br><span class="line">1309</span><br><span class="line">1310</span><br><span class="line">1311</span><br><span class="line">1312</span><br><span class="line">1313</span><br><span class="line">1314</span><br><span class="line">1315</span><br><span class="line">1316</span><br><span class="line">1317</span><br><span class="line">1318</span><br><span class="line">1319</span><br><span class="line">1320</span><br><span class="line">1321</span><br><span class="line">1322</span><br><span class="line">1323</span><br><span class="line">1324</span><br><span class="line">1325</span><br><span class="line">1326</span><br><span class="line">1327</span><br><span class="line">1328</span><br><span class="line">1329</span><br><span class="line">1330</span><br><span class="line">1331</span><br><span class="line">1332</span><br><span class="line">1333</span><br><span class="line">1334</span><br><span class="line">1335</span><br><span class="line">1336</span><br><span class="line">1337</span><br><span class="line">1338</span><br><span class="line">1339</span><br><span class="line">1340</span><br><span class="line">1341</span><br><span class="line">1342</span><br><span class="line">1343</span><br><span class="line">1344</span><br><span class="line">1345</span><br><span class="line">1346</span><br><span class="line">1347</span><br><span class="line">1348</span><br><span class="line">1349</span><br><span class="line">1350</span><br><span class="line">1351</span><br><span class="line">1352</span><br><span class="line">1353</span><br><span class="line">1354</span><br><span class="line">1355</span><br><span class="line">1356</span><br><span class="line">1357</span><br><span class="line">1358</span><br><span class="line">1359</span><br><span class="line">1360</span><br><span class="line">1361</span><br><span class="line">1362</span><br><span class="line">1363</span><br><span class="line">1364</span><br><span class="line">1365</span><br><span class="line">1366</span><br><span class="line">1367</span><br><span class="line">1368</span><br><span class="line">1369</span><br><span class="line">1370</span><br><span class="line">1371</span><br><span class="line">1372</span><br><span class="line">1373</span><br><span class="line">1374</span><br><span class="line">1375</span><br><span class="line">1376</span><br><span class="line">1377</span><br><span class="line">1378</span><br><span class="line">1379</span><br><span class="line">1380</span><br><span class="line">1381</span><br><span class="line">1382</span><br><span class="line">1383</span><br><span class="line">1384</span><br><span class="line">1385</span><br><span class="line">1386</span><br><span class="line">1387</span><br><span class="line">1388</span><br><span class="line">1389</span><br><span class="line">1390</span><br><span class="line">1391</span><br><span class="line">1392</span><br><span class="line">1393</span><br><span class="line">1394</span><br><span class="line">1395</span><br><span class="line">1396</span><br><span class="line">1397</span><br><span class="line">1398</span><br><span class="line">1399</span><br><span class="line">1400</span><br><span class="line">1401</span><br><span class="line">1402</span><br><span class="line">1403</span><br><span class="line">1404</span><br><span class="line">1405</span><br><span class="line">1406</span><br><span class="line">1407</span><br><span class="line">1408</span><br><span class="line">1409</span><br><span class="line">1410</span><br><span class="line">1411</span><br><span class="line">1412</span><br><span class="line">1413</span><br><span class="line">1414</span><br><span class="line">1415</span><br><span class="line">1416</span><br><span class="line">1417</span><br><span class="line">1418</span><br><span class="line">1419</span><br><span class="line">1420</span><br><span class="line">1421</span><br><span class="line">1422</span><br><span class="line">1423</span><br><span class="line">1424</span><br><span class="line">1425</span><br><span class="line">1426</span><br><span class="line">1427</span><br><span class="line">1428</span><br><span class="line">1429</span><br><span class="line">1430</span><br><span class="line">1431</span><br><span class="line">1432</span><br><span class="line">1433</span><br><span class="line">1434</span><br><span class="line">1435</span><br><span class="line">1436</span><br><span class="line">1437</span><br><span class="line">1438</span><br><span class="line">1439</span><br><span class="line">1440</span><br><span class="line">1441</span><br><span class="line">1442</span><br><span class="line">1443</span><br><span class="line">1444</span><br><span class="line">1445</span><br><span class="line">1446</span><br><span class="line">1447</span><br><span class="line">1448</span><br><span class="line">1449</span><br><span class="line">1450</span><br><span class="line">1451</span><br><span class="line">1452</span><br><span class="line">1453</span><br><span class="line">1454</span><br><span class="line">1455</span><br><span class="line">1456</span><br><span class="line">1457</span><br><span class="line">1458</span><br><span class="line">1459</span><br><span class="line">1460</span><br><span class="line">1461</span><br><span class="line">1462</span><br><span class="line">1463</span><br><span class="line">1464</span><br><span class="line">1465</span><br><span class="line">1466</span><br><span class="line">1467</span><br><span class="line">1468</span><br><span class="line">1469</span><br><span class="line">1470</span><br><span class="line">1471</span><br><span class="line">1472</span><br><span class="line">1473</span><br><span class="line">1474</span><br><span class="line">1475</span><br><span class="line">1476</span><br><span class="line">1477</span><br><span class="line">1478</span><br><span class="line">1479</span><br><span class="line">1480</span><br><span class="line">1481</span><br><span class="line">1482</span><br><span class="line">1483</span><br><span class="line">1484</span><br><span class="line">1485</span><br><span class="line">1486</span><br><span class="line">1487</span><br><span class="line">1488</span><br><span class="line">1489</span><br><span class="line">1490</span><br><span class="line">1491</span><br><span class="line">1492</span><br><span class="line">1493</span><br><span class="line">1494</span><br><span class="line">1495</span><br><span class="line">1496</span><br><span class="line">1497</span><br><span class="line">1498</span><br><span class="line">1499</span><br><span class="line">1500</span><br><span class="line">1501</span><br><span class="line">1502</span><br><span class="line">1503</span><br><span class="line">1504</span><br><span class="line">1505</span><br><span class="line">1506</span><br><span class="line">1507</span><br><span class="line">1508</span><br><span class="line">1509</span><br><span class="line">1510</span><br><span class="line">1511</span><br><span class="line">1512</span><br><span class="line">1513</span><br><span class="line">1514</span><br><span class="line">1515</span><br><span class="line">1516</span><br><span class="line">1517</span><br><span class="line">1518</span><br><span class="line">1519</span><br><span class="line">1520</span><br><span class="line">1521</span><br><span class="line">1522</span><br><span class="line">1523</span><br><span class="line">1524</span><br><span class="line">1525</span><br><span class="line">1526</span><br><span class="line">1527</span><br><span class="line">1528</span><br><span class="line">1529</span><br><span class="line">1530</span><br><span class="line">1531</span><br><span class="line">1532</span><br><span class="line">1533</span><br><span class="line">1534</span><br><span class="line">1535</span><br><span class="line">1536</span><br><span class="line">1537</span><br><span class="line">1538</span><br><span class="line">1539</span><br><span class="line">1540</span><br><span class="line">1541</span><br><span class="line">1542</span><br><span class="line">1543</span><br><span class="line">1544</span><br><span class="line">1545</span><br><span class="line">1546</span><br><span class="line">1547</span><br><span class="line">1548</span><br><span class="line">1549</span><br><span class="line">1550</span><br><span class="line">1551</span><br><span class="line">1552</span><br><span class="line">1553</span><br><span class="line">1554</span><br><span class="line">1555</span><br><span class="line">1556</span><br><span class="line">1557</span><br><span class="line">1558</span><br><span class="line">1559</span><br><span class="line">1560</span><br><span class="line">1561</span><br><span class="line">1562</span><br><span class="line">1563</span><br><span class="line">1564</span><br><span class="line">1565</span><br><span class="line">1566</span><br><span class="line">1567</span><br><span class="line">1568</span><br><span class="line">1569</span><br><span class="line">1570</span><br><span class="line">1571</span><br><span class="line">1572</span><br><span class="line">1573</span><br><span class="line">1574</span><br><span class="line">1575</span><br><span class="line">1576</span><br><span class="line">1577</span><br><span class="line">1578</span><br><span class="line">1579</span><br><span class="line">1580</span><br><span class="line">1581</span><br><span class="line">1582</span><br><span class="line">1583</span><br><span class="line">1584</span><br><span class="line">1585</span><br><span class="line">1586</span><br><span class="line">1587</span><br><span class="line">1588</span><br><span class="line">1589</span><br><span class="line">1590</span><br><span class="line">1591</span><br><span class="line">1592</span><br><span class="line">1593</span><br><span class="line">1594</span><br><span class="line">1595</span><br><span class="line">1596</span><br><span class="line">1597</span><br><span class="line">1598</span><br><span class="line">1599</span><br><span class="line">1600</span><br><span class="line">1601</span><br><span class="line">1602</span><br><span class="line">1603</span><br><span class="line">1604</span><br><span class="line">1605</span><br><span class="line">1606</span><br><span class="line">1607</span><br><span class="line">1608</span><br><span class="line">1609</span><br><span class="line">1610</span><br><span class="line">1611</span><br><span class="line">1612</span><br><span class="line">1613</span><br><span class="line">1614</span><br><span class="line">1615</span><br><span class="line">1616</span><br><span class="line">1617</span><br><span class="line">1618</span><br><span class="line">1619</span><br><span class="line">1620</span><br><span class="line">1621</span><br><span class="line">1622</span><br><span class="line">1623</span><br><span class="line">1624</span><br><span class="line">1625</span><br><span class="line">1626</span><br><span class="line">1627</span><br><span class="line">1628</span><br><span class="line">1629</span><br><span class="line">1630</span><br><span class="line">1631</span><br><span class="line">1632</span><br><span class="line">1633</span><br><span class="line">1634</span><br><span class="line">1635</span><br><span class="line">1636</span><br><span class="line">1637</span><br><span class="line">1638</span><br><span class="line">1639</span><br><span class="line">1640</span><br><span class="line">1641</span><br><span class="line">1642</span><br><span class="line">1643</span><br><span class="line">1644</span><br><span class="line">1645</span><br><span class="line">1646</span><br><span class="line">1647</span><br><span class="line">1648</span><br><span class="line">1649</span><br><span class="line">1650</span><br><span class="line">1651</span><br><span class="line">1652</span><br><span class="line">1653</span><br><span class="line">1654</span><br><span class="line">1655</span><br><span class="line">1656</span><br><span class="line">1657</span><br><span class="line">1658</span><br><span class="line">1659</span><br><span class="line">1660</span><br><span class="line">1661</span><br><span class="line">1662</span><br><span class="line">1663</span><br><span class="line">1664</span><br><span class="line">1665</span><br><span class="line">1666</span><br><span class="line">1667</span><br><span class="line">1668</span><br><span class="line">1669</span><br><span class="line">1670</span><br><span class="line">1671</span><br><span class="line">1672</span><br><span class="line">1673</span><br><span class="line">1674</span><br><span class="line">1675</span><br><span class="line">1676</span><br><span class="line">1677</span><br><span class="line">1678</span><br><span class="line">1679</span><br><span class="line">1680</span><br><span class="line">1681</span><br><span class="line">1682</span><br><span class="line">1683</span><br><span class="line">1684</span><br><span class="line">1685</span><br><span class="line">1686</span><br><span class="line">1687</span><br><span class="line">1688</span><br><span class="line">1689</span><br><span class="line">1690</span><br><span class="line">1691</span><br><span class="line">1692</span><br><span class="line">1693</span><br><span class="line">1694</span><br><span class="line">1695</span><br><span class="line">1696</span><br><span class="line">1697</span><br><span class="line">1698</span><br><span class="line">1699</span><br><span class="line">1700</span><br><span class="line">1701</span><br><span class="line">1702</span><br><span class="line">1703</span><br><span class="line">1704</span><br><span class="line">1705</span><br><span class="line">1706</span><br><span class="line">1707</span><br><span class="line">1708</span><br><span class="line">1709</span><br><span class="line">1710</span><br><span class="line">1711</span><br><span class="line">1712</span><br><span class="line">1713</span><br><span class="line">1714</span><br><span class="line">1715</span><br><span class="line">1716</span><br><span class="line">1717</span><br><span class="line">1718</span><br><span class="line">1719</span><br><span class="line">1720</span><br><span class="line">1721</span><br><span class="line">1722</span><br><span class="line">1723</span><br><span class="line">1724</span><br><span class="line">1725</span><br><span class="line">1726</span><br><span class="line">1727</span><br><span class="line">1728</span><br><span class="line">1729</span><br><span class="line">1730</span><br><span class="line">1731</span><br><span class="line">1732</span><br><span class="line">1733</span><br><span class="line">1734</span><br><span class="line">1735</span><br><span class="line">1736</span><br><span class="line">1737</span><br><span class="line">1738</span><br><span class="line">1739</span><br><span class="line">1740</span><br><span class="line">1741</span><br><span class="line">1742</span><br><span class="line">1743</span><br><span class="line">1744</span><br><span class="line">1745</span><br><span class="line">1746</span><br><span class="line">1747</span><br><span class="line">1748</span><br><span class="line">1749</span><br><span class="line">1750</span><br><span class="line">1751</span><br><span class="line">1752</span><br><span class="line">1753</span><br><span class="line">1754</span><br><span class="line">1755</span><br><span class="line">1756</span><br><span class="line">1757</span><br><span class="line">1758</span><br><span class="line">1759</span><br><span class="line">1760</span><br><span class="line">1761</span><br><span class="line">1762</span><br><span class="line">1763</span><br><span class="line">1764</span><br><span class="line">1765</span><br><span class="line">1766</span><br><span class="line">1767</span><br><span class="line">1768</span><br><span class="line">1769</span><br><span class="line">1770</span><br><span class="line">1771</span><br><span class="line">1772</span><br><span class="line">1773</span><br><span class="line">1774</span><br><span class="line">1775</span><br><span class="line">1776</span><br><span class="line">1777</span><br><span class="line">1778</span><br><span class="line">1779</span><br><span class="line">1780</span><br><span class="line">1781</span><br><span class="line">1782</span><br><span class="line">1783</span><br><span class="line">1784</span><br><span class="line">1785</span><br><span class="line">1786</span><br><span class="line">1787</span><br><span class="line">1788</span><br><span class="line">1789</span><br><span class="line">1790</span><br><span class="line">1791</span><br><span class="line">1792</span><br><span class="line">1793</span><br><span class="line">1794</span><br><span class="line">1795</span><br><span class="line">1796</span><br><span class="line">1797</span><br><span class="line">1798</span><br><span class="line">1799</span><br><span class="line">1800</span><br><span class="line">1801</span><br><span class="line">1802</span><br><span class="line">1803</span><br><span class="line">1804</span><br><span class="line">1805</span><br><span class="line">1806</span><br><span class="line">1807</span><br><span class="line">1808</span><br><span class="line">1809</span><br><span class="line">1810</span><br><span class="line">1811</span><br><span class="line">1812</span><br><span class="line">1813</span><br><span class="line">1814</span><br><span class="line">1815</span><br><span class="line">1816</span><br><span class="line">1817</span><br><span class="line">1818</span><br><span class="line">1819</span><br><span class="line">1820</span><br><span class="line">1821</span><br><span class="line">1822</span><br><span class="line">1823</span><br><span class="line">1824</span><br><span class="line">1825</span><br><span class="line">1826</span><br><span class="line">1827</span><br><span class="line">1828</span><br><span class="line">1829</span><br><span class="line">1830</span><br><span class="line">1831</span><br><span class="line">1832</span><br><span class="line">1833</span><br><span class="line">1834</span><br><span class="line">1835</span><br><span class="line">1836</span><br><span class="line">1837</span><br><span class="line">1838</span><br><span class="line">1839</span><br><span class="line">1840</span><br><span class="line">1841</span><br><span class="line">1842</span><br><span class="line">1843</span><br><span class="line">1844</span><br><span class="line">1845</span><br><span class="line">1846</span><br><span class="line">1847</span><br><span class="line">1848</span><br><span class="line">1849</span><br><span class="line">1850</span><br><span class="line">1851</span><br><span class="line">1852</span><br><span class="line">1853</span><br><span class="line">1854</span><br><span class="line">1855</span><br><span class="line">1856</span><br><span class="line">1857</span><br><span class="line">1858</span><br><span class="line">1859</span><br><span class="line">1860</span><br><span class="line">1861</span><br><span class="line">1862</span><br><span class="line">1863</span><br><span class="line">1864</span><br><span class="line">1865</span><br><span class="line">1866</span><br><span class="line">1867</span><br><span class="line">1868</span><br><span class="line">1869</span><br><span class="line">1870</span><br><span class="line">1871</span><br><span class="line">1872</span><br><span class="line">1873</span><br><span class="line">1874</span><br><span class="line">1875</span><br><span class="line">1876</span><br><span class="line">1877</span><br><span class="line">1878</span><br><span class="line">1879</span><br><span class="line">1880</span><br><span class="line">1881</span><br><span class="line">1882</span><br><span class="line">1883</span><br><span class="line">1884</span><br><span class="line">1885</span><br><span class="line">1886</span><br><span class="line">1887</span><br><span class="line">1888</span><br><span class="line">1889</span><br><span class="line">1890</span><br><span class="line">1891</span><br><span class="line">1892</span><br><span class="line">1893</span><br><span class="line">1894</span><br><span class="line">1895</span><br><span class="line">1896</span><br><span class="line">1897</span><br><span class="line">1898</span><br><span class="line">1899</span><br><span class="line">1900</span><br><span class="line">1901</span><br><span class="line">1902</span><br><span class="line">1903</span><br><span class="line">1904</span><br><span class="line">1905</span><br><span class="line">1906</span><br><span class="line">1907</span><br><span class="line">1908</span><br><span class="line">1909</span><br><span class="line">1910</span><br><span class="line">1911</span><br><span class="line">1912</span><br><span class="line">1913</span><br><span class="line">1914</span><br><span class="line">1915</span><br><span class="line">1916</span><br><span class="line">1917</span><br><span class="line">1918</span><br><span class="line">1919</span><br><span class="line">1920</span><br><span class="line">1921</span><br><span class="line">1922</span><br><span class="line">1923</span><br><span class="line">1924</span><br><span class="line">1925</span><br><span class="line">1926</span><br><span class="line">1927</span><br><span class="line">1928</span><br><span class="line">1929</span><br><span class="line">1930</span><br><span class="line">1931</span><br><span class="line">1932</span><br><span class="line">1933</span><br><span class="line">1934</span><br><span class="line">1935</span><br><span class="line">1936</span><br><span class="line">1937</span><br><span class="line">1938</span><br><span class="line">1939</span><br><span class="line">1940</span><br><span class="line">1941</span><br><span class="line">1942</span><br><span class="line">1943</span><br><span class="line">1944</span><br><span class="line">1945</span><br><span class="line">1946</span><br><span class="line">1947</span><br><span class="line">1948</span><br><span class="line">1949</span><br><span class="line">1950</span><br><span class="line">1951</span><br><span class="line">1952</span><br><span class="line">1953</span><br><span class="line">1954</span><br><span class="line">1955</span><br><span class="line">1956</span><br><span class="line">1957</span><br><span class="line">1958</span><br><span class="line">1959</span><br><span class="line">1960</span><br><span class="line">1961</span><br><span class="line">1962</span><br><span class="line">1963</span><br><span class="line">1964</span><br><span class="line">1965</span><br><span class="line">1966</span><br><span class="line">1967</span><br><span class="line">1968</span><br><span class="line">1969</span><br><span class="line">1970</span><br><span class="line">1971</span><br><span class="line">1972</span><br><span class="line">1973</span><br><span class="line">1974</span><br><span class="line">1975</span><br><span class="line">1976</span><br><span class="line">1977</span><br><span class="line">1978</span><br><span class="line">1979</span><br><span class="line">1980</span><br><span class="line">1981</span><br><span class="line">1982</span><br><span class="line">1983</span><br><span class="line">1984</span><br><span class="line">1985</span><br><span class="line">1986</span><br><span class="line">1987</span><br><span class="line">1988</span><br><span class="line">1989</span><br><span class="line">1990</span><br><span class="line">1991</span><br><span class="line">1992</span><br><span class="line">1993</span><br><span class="line">1994</span><br><span class="line">1995</span><br><span class="line">1996</span><br><span class="line">1997</span><br><span class="line">1998</span><br><span class="line">1999</span><br><span class="line">2000</span><br><span class="line">2001</span><br><span class="line">2002</span><br><span class="line">2003</span><br><span class="line">2004</span><br><span class="line">2005</span><br><span class="line">2006</span><br><span class="line">2007</span><br><span class="line">2008</span><br><span class="line">2009</span><br><span class="line">2010</span><br><span class="line">2011</span><br><span class="line">2012</span><br><span class="line">2013</span><br><span class="line">2014</span><br><span class="line">2015</span><br><span class="line">2016</span><br><span class="line">2017</span><br><span class="line">2018</span><br><span class="line">2019</span><br><span class="line">2020</span><br><span class="line">2021</span><br><span class="line">2022</span><br><span class="line">2023</span><br><span class="line">2024</span><br><span class="line">2025</span><br><span class="line">2026</span><br><span class="line">2027</span><br><span class="line">2028</span><br><span class="line">2029</span><br><span class="line">2030</span><br><span class="line">2031</span><br><span class="line">2032</span><br><span class="line">2033</span><br><span class="line">2034</span><br><span class="line">2035</span><br><span class="line">2036</span><br><span class="line">2037</span><br><span class="line">2038</span><br><span class="line">2039</span><br><span class="line">2040</span><br><span class="line">2041</span><br><span class="line">2042</span><br><span class="line">2043</span><br><span class="line">2044</span><br><span class="line">2045</span><br><span class="line">2046</span><br><span class="line">2047</span><br><span class="line">2048</span><br><span class="line">2049</span><br><span class="line">2050</span><br><span class="line">2051</span><br><span class="line">2052</span><br><span class="line">2053</span><br><span class="line">2054</span><br><span class="line">2055</span><br><span class="line">2056</span><br><span class="line">2057</span><br><span class="line">2058</span><br><span class="line">2059</span><br><span class="line">2060</span><br><span class="line">2061</span><br><span class="line">2062</span><br><span class="line">2063</span><br><span class="line">2064</span><br><span class="line">2065</span><br><span class="line">2066</span><br><span class="line">2067</span><br><span class="line">2068</span><br><span class="line">2069</span><br><span class="line">2070</span><br><span class="line">2071</span><br><span class="line">2072</span><br><span class="line">2073</span><br><span class="line">2074</span><br><span class="line">2075</span><br><span class="line">2076</span><br><span class="line">2077</span><br><span class="line">2078</span><br><span class="line">2079</span><br><span class="line">2080</span><br><span class="line">2081</span><br><span class="line">2082</span><br><span class="line">2083</span><br><span class="line">2084</span><br><span class="line">2085</span><br><span class="line">2086</span><br><span class="line">2087</span><br><span class="line">2088</span><br><span class="line">2089</span><br><span class="line">2090</span><br><span class="line">2091</span><br><span class="line">2092</span><br><span class="line">2093</span><br><span class="line">2094</span><br><span class="line">2095</span><br><span class="line">2096</span><br><span class="line">2097</span><br><span class="line">2098</span><br><span class="line">2099</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#查看flows流表表5规则</span></span><br><span class="line"></span><br><span class="line">root@master01:~<span class="comment"># ovs-ofctl dump-flows br-int </span></span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.911s, table=0, n\_packets=0, n\_bytes=0, priority=180,vlan\_tci=0x0000/0x1000 actions=conjunction(100,2/2)</span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.911s, table=0, n\_packets=0, n\_bytes=0, priority=180,conj\_id=100,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-br-int-to&quot;</span>,vlan\_tci=0x0000/0x1000 actions=load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],load:0x7-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],mod\_dl\_src:52:54:00:02:e6:d9,resubmit(,8)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516665.727s, table=0, n\_packets=0, n\_bytes=0, priority=105,tun\_id=0x800000/0x800000,<span class="keyword">in</span>\_port=<span class="string">&quot;ovn-69fc44-0&quot;</span> actions=load:0x1-&gt;NXM\_NX\_REG15\[15\],move:NXM\_NX\_TUN\_ID\[12..22\]-&gt;NXM\_NX\_REG15\[0..10\],move:NXM\_NX\_TUN\_ID\[0..11\]-&gt;OXM\_OF\_METADATA\[0..11\],resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516665.627s, table=0, n\_packets=0, n\_bytes=0, priority=105,tun\_id=0x800000/0x800000,<span class="keyword">in</span>\_port=<span class="string">&quot;ovn-eca30b-0&quot;</span> actions=load:0x1-&gt;NXM\_NX\_REG15\[15\],move:NXM\_NX\_TUN\_ID\[12..22\]-&gt;NXM\_NX\_REG15\[0..10\],move:NXM\_NX\_TUN\_ID\[0..11\]-&gt;OXM\_OF\_METADATA\[0..11\],resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x848b5a20, duration=516666.934s, table=0, n\_packets=610894, n\_bytes=54665832, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;ovn-k8s-mp0&quot;</span> actions=load:0xb-&gt;NXM\_NX\_REG13\[\],load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],load:0x5-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],resubmit(,8)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516665.727s, table=0, n\_packets=8, n\_bytes=2262, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;ovn-69fc44-0&quot;</span> actions=move:NXM\_NX\_TUN\_ID\[12..23\]-&gt;NXM\_NX\_REG15\[0..11\],move:NXM\_NX\_TUN\_ID\[0..11\]-&gt;OXM\_OF\_METADATA\[0..11\],resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516665.627s, table=0, n\_packets=8, n\_bytes=2262, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;ovn-eca30b-0&quot;</span> actions=move:NXM\_NX\_TUN\_ID\[12..23\]-&gt;NXM\_NX\_REG15\[0..11\],move:NXM\_NX\_TUN\_ID\[0..11\]-&gt;OXM\_OF\_METADATA\[0..11\],resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=0, n\_packets=508557, n\_bytes=49520457, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;2328014c696cfb7&quot;</span> actions=load:0x6-&gt;NXM\_NX\_REG13\[\],load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],load:0x5-&gt;OXM\_OF\_METADATA\[\],load:0x3-&gt;NXM\_NX\_REG14\[\],resubmit(,8)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=0, n\_packets=1010, n\_bytes=154146, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-br-int-to&quot;</span>,vlan\_tci=0x0000/0x1000 actions=load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],load:0x7-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],resubmit(,8)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=0, n\_packets=0, n\_bytes=0, priority=100,<span class="keyword">in</span>\_port=<span class="string">&quot;patch-br-int-to&quot;</span>,dl\_vlan=0 actions=strip\_vlan,load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],load:0x7-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],resubmit(,8)</span><br><span class="line"></span><br><span class="line"> cookie=0xf8fad2d7, duration=516666.962s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x5,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xf8fad2d7, duration=516666.958s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x3,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xf8fad2d7, duration=516666.958s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x2,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5407afde, duration=516666.936s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x1,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5407afde, duration=516666.934s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x6,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xf8fad2d7, duration=516666.921s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x7,dl\_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfc4f3354, duration=516666.962s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x5,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfc4f3354, duration=516666.958s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x3,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfc4f3354, duration=516666.958s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x2,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5407afde, duration=516666.936s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x1,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5407afde, duration=516666.934s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x6,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfc4f3354, duration=516666.922s, table=8, n\_packets=0, n\_bytes=0, priority=100,metadata=0x7,vlan\_tci=0x1000/0x1000 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xde30b18e, duration=516666.963s, table=8, n\_packets=1165387, n\_bytes=108374792, priority=50,metadata=0x5 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,73),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xde30b18e, duration=516666.958s, table=8, n\_packets=0, n\_bytes=0, priority=50,metadata=0x3 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,73),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xde30b18e, duration=516666.958s, table=8, n\_packets=25, n\_bytes=1958, priority=50,metadata=0x2 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,73),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xde30b18e, duration=516666.921s, table=8, n\_packets=1106, n\_bytes=247672, priority=50,metadata=0x7 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,73),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x8a5acdf, duration=516666.958s, table=8, n\_packets=154, n\_bytes=10856, priority=50,reg14=0x3,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0xa580a7b0201-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xcf506b95, duration=516666.957s, table=8, n\_packets=0, n\_bytes=0, priority=50,reg14=0x4,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0xa580a7b0001-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xd43aa856, duration=516666.957s, table=8, n\_packets=0, n\_bytes=0, priority=50,reg14=0x1,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0xa5864400001-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xd924daf6, duration=516666.957s, table=8, n\_packets=0, n\_bytes=0, priority=50,reg14=0x2,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0xa580a7b0101-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x11d5aec5, duration=516666.934s, table=8, n\_packets=903, n\_bytes=63114, priority=50,reg14=0x2,metadata=0x6,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0x52540002e6d9-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x1623f0b1, duration=516666.934s, table=8, n\_packets=0, n\_bytes=0, priority=50,reg14=0x1,metadata=0x6,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0xa5864400002-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0xf81b969, duration=516666.958s, table=8, n\_packets=45811, n\_bytes=4175155, priority=50,reg14=0x3,metadata=0x1,dl\_dst=0a:58:0a:7b:02:01 actions=load:0xa580a7b0201-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x7487b972, duration=516666.958s, table=8, n\_packets=24, n\_bytes=1916, priority=50,reg14=0x1,metadata=0x1,dl\_dst=0a:58:64:40:00:01 actions=load:0xa5864400001-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f0d286b, duration=516666.934s, table=8, n\_packets=103, n\_bytes=90864, priority=50,reg14=0x2,metadata=0x6,dl\_dst=52:54:00:02:e6:d9 actions=load:0x52540002e6d9-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x92d53e03, duration=516666.934s, table=8, n\_packets=17, n\_bytes=4566, priority=50,reg14=0x1,metadata=0x6,dl\_dst=0a:58:64:40:00:02 actions=load:0xa5864400002-&gt;NXM\_NX\_XXREG0\[64..111\],resubmit(,9)</span><br><span class="line"></span><br><span class="line"> cookie=0x368fab82, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=110,arp,reg14=0x1,metadata=0x1,arp\_spa=100.64.0.0/16,arp\_tpa=100.64.0.1,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xc7957151, duration=516666.934s, table=9, n\_packets=0, n\_bytes=0, priority=110,arp,reg14=0x1,metadata=0x6,arp\_spa=100.64.0.0/16,arp\_tpa=100.64.0.2,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x86887091, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=110,arp,reg14=0x3,metadata=0x1,arp\_spa=10.123.2.0/24,arp\_tpa=10.123.2.1,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xafa2f36f, duration=516666.934s, table=9, n\_packets=0, n\_bytes=0, priority=110,arp,reg14=0x2,metadata=0x6,arp\_spa=192.168.200.0/24,arp\_tpa=192.168.200.10,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x1efeb934, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x1,metadata=0x1,arp\_spa=100.64.0.0/16,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xe9108eb0, duration=516666.934s, table=9, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x1,metadata=0x6,arp\_spa=100.64.0.0/16,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c15b6d1, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x3,metadata=0x1,arp\_spa=10.123.2.0/24,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x8768de4d, duration=516666.935s, table=9, n\_packets=13, n\_bytes=546, priority=100,arp,reg14=0x2,metadata=0x6,arp\_spa=192.168.200.0/24,arp\_op=1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xa6ce12e2, duration=516666.937s, table=9, n\_packets=0, n\_bytes=0, priority=100,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_TLL\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xaae0d4bf, duration=516666.936s, table=9, n\_packets=1, n\_bytes=86, priority=100,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_SLL\[\],push:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xa6ce12e2, duration=516666.934s, table=9, n\_packets=0, n\_bytes=0, priority=100,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_TLL\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xaae0d4bf, duration=516666.934s, table=9, n\_packets=3, n\_bytes=258, priority=100,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_SLL\[\],push:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_REG15\[\],push:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_REG14\[\],pop:NXM\_NX\_REG15\[\],pop:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_DST\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,66),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[3\],pop:NXM\_OF\_ETH\_DST\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_NX\_REG15\[\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x3b6bece6, duration=516666.937s, table=9, n\_packets=0, n\_bytes=0, priority=100,arp,metadata=0x1,arp\_op=2 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x3b6bece6, duration=516666.935s, table=9, n\_packets=5, n\_bytes=210, priority=100,arp,metadata=0x6,arp\_op=2 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],load:0-&gt;NXM\_NX\_REG10\[6\],resubmit(,67),move:NXM\_NX\_REG10\[6\]-&gt;OXM\_OF\_PKT\_REG4\[2\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],load:0x1-&gt;OXM\_OF\_PKT\_REG4\[3\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x9cdebcad, duration=516666.963s, table=9, n\_packets=163, n\_bytes=11582, priority=50,reg0=0x8000/0x8000,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9cdebcad, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9cdebcad, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9cdebcad, duration=516666.922s, table=9, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xd38caa84, duration=516666.963s, table=9, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xd38caa84, duration=516666.958s, table=9, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xd38caa84, duration=516666.958s, table=9, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x73be89d8, duration=516666.936s, table=9, n\_packets=45988, n\_bytes=4187841, priority=0,metadata=0x1 actions=load:0x1-&gt;OXM\_OF\_PKT\_REG4\[2\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x73be89d8, duration=516666.935s, table=9, n\_packets=1002, n\_bytes=157530, priority=0,metadata=0x6 actions=load:0x1-&gt;OXM\_OF\_PKT\_REG4\[2\],resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0xd38caa84, duration=516666.921s, table=9, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,10)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e798d0a, duration=516666.937s, table=10, n\_packets=45989, n\_bytes=4187927, priority=100,reg9=0/0x8,metadata=0x1 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e798d0a, duration=516666.934s, table=10, n\_packets=1018, n\_bytes=158334, priority=100,reg9=0/0x8,metadata=0x6 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e798d0a, duration=516666.936s, table=10, n\_packets=0, n\_bytes=0, priority=100,reg9=0x4/0x4,metadata=0x1 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e798d0a, duration=516666.934s, table=10, n\_packets=3, n\_bytes=126, priority=100,reg9=0x4/0x4,metadata=0x6 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x4ba7fcc, duration=516666.937s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=136,icmp\_code=0,nd\_tll=00:00:00:00:00:00 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x4ba7fcc, duration=516666.934s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=136,icmp\_code=0,nd\_tll=00:00:00:00:00:00 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x846685c1, duration=516666.937s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x1,ipv6\_src=::,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x846685c1, duration=516666.934s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x6,ipv6\_src=::,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x846685c1, duration=516666.937s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_sll=00:00:00:00:00:00 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x846685c1, duration=516666.934s, table=10, n\_packets=0, n\_bytes=0, priority=95,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_sll=00:00:00:00:00:00 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xad274bdf, duration=516666.937s, table=10, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_SLL\[\],push:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x379a83f8, duration=516666.936s, table=10, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_TLL\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xad274bdf, duration=516666.934s, table=10, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_SLL\[\],push:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x379a83f8, duration=516666.934s, table=10, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=push:NXM\_NX\_XXREG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ND\_TLL\[\],push:NXM\_NX\_ND\_TARGET\[\],pop:NXM\_NX\_XXREG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.04.00.00.00.00),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_XXREG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x5bfa8029, duration=516666.958s, table=10, n\_packets=0, n\_bytes=0, priority=90,arp,metadata=0x1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.01.00.00.00.00),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x71585b2b, duration=516665.566s, table=10, n\_packets=2, n\_bytes=84, priority=90,arp,metadata=0x6 actions=push:NXM\_NX\_REG0\[\],push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_NX\_REG0\[\],pop:NXM\_OF\_ETH\_SRC\[\],controller(userdata=00.00.00.01.00.00.00.00,meter\_id=1),pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_NX\_REG0\[\],resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xe60ad1b7, duration=516666.963s, table=10, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xe60ad1b7, duration=516666.958s, table=10, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xe60ad1b7, duration=516666.958s, table=10, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0xe60ad1b7, duration=516666.921s, table=10, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,11)</span><br><span class="line"></span><br><span class="line"> cookie=0x1746b1da, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:1,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x17dcf7eb, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:201,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x386fba4b, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,ipv6\_dst=fe80::858:64ff:fe40:1,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x6c6a3d29, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:1,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xa12389ee, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x1,ipv6\_dst=fe80::858:64ff:fe40:1,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xbcbe0a06, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:101,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xbf31c7a8, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:201,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xc6f66e13, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:101,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xbbaf0359, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x6,ipv6\_dst=fe80::5054:ff:fe02:e6d9,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x7fb32308, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x6,ipv6\_dst=fe80::5054:ff:fe02:e6d9,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xb3a86294, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,udp6,metadata=0x6,ipv6\_dst=fe80::858:64ff:fe40:2,tp\_src=547,tp\_dst=546 actions=load:0-&gt;NXM\_NX\_XXREG0\[96..127\],controller(userdata=00.00.00.13.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x9174a3a9, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,metadata=0x6,ipv6\_dst=fe80::858:64ff:fe40:2,icmp\_type=128,icmp\_code=0 actions=push:NXM\_NX\_IPV6\_SRC\[\],push:NXM\_NX\_IPV6\_DST\[\],pop:NXM\_NX\_IPV6\_SRC\[\],pop:NXM\_NX\_IPV6\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0x81-&gt;NXM\_NX\_ICMPV6\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x3340c4e7, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.2.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x3340c4e7, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.2.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x45283fdb, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.0.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x45283fdb, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.0.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa249ed33, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.1.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa249ed33, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=10.123.1.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xd1ce4946, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=100.64.255.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xd1ce4946, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x1,nw\_src=100.64.0.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfe379e99, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x6,nw\_src=192.168.200.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfe379e99, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x6,nw\_src=192.168.200.10 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xb417758a, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x6,nw\_src=100.64.0.2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xb417758a, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg9=0/0x1,metadata=0x6,nw\_src=100.64.255.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa9fbe22e, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x3,metadata=0x1,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.03.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xa9fbe22e, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x3,metadata=0x1,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.03.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xdd49e473, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x1,metadata=0x1,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.64.40.00.01.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.01.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xdd49e473, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x1,metadata=0x1,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.64.40.00.01.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.01.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x2738c168, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x2,metadata=0x6,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.c0.a8.c8.0a.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.02.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00,meter\_id=2)</span><br><span class="line"></span><br><span class="line"> cookie=0x6784bd20, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x1,metadata=0x6,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.64.40.00.02.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.01.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00,meter\_id=2)</span><br><span class="line"></span><br><span class="line"> cookie=0x2738c168, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x2,metadata=0x6,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.c0.a8.c8.0a.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.02.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00,meter\_id=2)</span><br><span class="line"></span><br><span class="line"> cookie=0x6784bd20, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x1,metadata=0x6,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.80.00.16.04.80.00.18.04.00.00.00.00.00.19.00.10.80.00.16.04.64.40.00.02.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.01.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00,meter\_id=2)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc5f6acf, duration=516665.577s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x4,metadata=0x1,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc5f6acf, duration=516665.577s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x4,metadata=0x1,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x3fbbf5bc, duration=516665.466s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x2,metadata=0x1,nw\_ttl=0,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.02.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x3fbbf5bc, duration=516665.466s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,reg14=0x2,metadata=0x1,nw\_ttl=1,nw\_frag=not\_later actions=controller(userdata=00.00.00.0a.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.02.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.04.06.00.30.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.02.06.00.30.00.00.00.00.00.00.00.19.00.10.80.00.26.01.0b.00.00.00.00.00.00.00.00.19.00.10.80.00.28.01.00.00.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1b.00.00.00.00.10.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.0e.04.00.20.00.00.00.00.00.00.ff.ff.00.18.00.00.23.20.00.1c.00.00.00.00.10.04.00.20.00.00.00.00.00.00.00.19.00.10.00.01.3a.01.fe.00.00.00.00.00.00.00.00.19.00.10.00.01.1e.04.00.00.00.02.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_dst=127.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_dst=0.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_dst=127.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_dst=0.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_src=255.255.255.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_src=255.255.255.255 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_src=127.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_src=0.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_src=127.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_src=0.0.0.0/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,nw\_src=224.0.0.0/4 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7b917e41, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x6,nw\_src=224.0.0.0/4 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x2fe5e262, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x1,ipv6\_dst=ff02::1:ff7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x2fe5e262, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x4028b1da, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x1,metadata=0x1,ipv6\_dst=fe80::858:64ff:fe40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x4028b1da, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x1,metadata=0x1,ipv6\_dst=ff02::1:ff40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x6392dc4c, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x1,metadata=0x6,ipv6\_dst=ff02::1:ff40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x6392dc4c, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x1,metadata=0x6,ipv6\_dst=fe80::858:64ff:fe40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x7768a46f, duration=516666.934s, table=11, n\_packets=1, n\_bytes=86, priority=90,icmp6,reg14=0x2,metadata=0x6,ipv6\_dst=ff02::1:ff02:e6d9,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::5054:ff:fe02:e6d9 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x7768a46f, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x2,metadata=0x6,ipv6\_dst=fe80::5054:ff:fe02:e6d9,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::5054:ff:fe02:e6d9 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.08.06.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.80.00.3e.10.80.00.34.10.00.00.00.00.00.1c.00.18.00.30.00.40.00.00.00.00.00.01.de.10.80.00.42.06.00.00.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x296c55e3, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x1,nw\_dst=10.123.2.1,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x422de9b6, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x1,nw\_dst=10.123.0.1,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xd7b7b5b9, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x1,nw\_dst=100.64.0.1,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xeb4e689d, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x1,nw\_dst=10.123.1.1,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ec7ac36, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x6,nw\_dst=100.64.0.2,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xaed328e, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,icmp,metadata=0x6,nw\_dst=192.168.200.10,icmp\_type=8,icmp\_code=0 actions=push:NXM\_OF\_IP\_SRC\[\],push:NXM\_OF\_IP\_DST\[\],pop:NXM\_OF\_IP\_SRC\[\],pop:NXM\_OF\_IP\_DST\[\],load:0xff-&gt;NXM\_NX\_IP\_TTL\[\],load:0-&gt;NXM\_OF\_ICMP\_TYPE\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x59a8f1f5, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x1,metadata=0x1,arp\_spa=100.64.0.0/16,arp\_tpa=100.64.0.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xae4f7442, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x1,metadata=0x6,arp\_spa=100.64.0.0/16,arp\_tpa=100.64.0.2,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x5b0b7845, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x4,metadata=0x1,arp\_spa=10.123.0.0/24,arp\_tpa=10.123.0.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xb674096d, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x3,metadata=0x1,arp\_spa=10.123.2.0/24,arp\_tpa=10.123.2.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xe13598c3, duration=516666.957s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x2,metadata=0x1,arp\_spa=10.123.1.0/24,arp\_tpa=10.123.1.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xff6f2a2c, duration=516666.935s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,reg14=0x2,metadata=0x6,arp\_spa=192.168.200.0/24,arp\_tpa=192.168.200.10,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xffd196fc, duration=516666.922s, table=11, n\_packets=0, n\_bytes=0, priority=90,arp,metadata=0x6,arp\_tpa=192.168.200.10,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_OF\_ETH\_SRC\[\],load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],move:NXM\_NX\_XXREG0\[64..111\]-&gt;NXM\_NX\_ARP\_SHA\[\],push:NXM\_OF\_ARP\_SPA\[\],push:NXM\_OF\_ARP\_TPA\[\],pop:NXM\_OF\_ARP\_SPA\[\],pop:NXM\_OF\_ARP\_TPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b4e5aee, duration=516666.936s, table=11, n\_packets=150, n\_bytes=10500, priority=84,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.936s, table=11, n\_packets=1, n\_bytes=86, priority=85,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x1b4e5aee, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=84,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=85,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=85,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x1b4e5aee, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=84,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.934s, table=11, n\_packets=2, n\_bytes=172, priority=85,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x1b4e5aee, duration=516666.934s, table=11, n\_packets=876, n\_bytes=61320, priority=84,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=85,arp,metadata=0x1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa1ba5fee, duration=516666.934s, table=11, n\_packets=18, n\_bytes=756, priority=85,arp,metadata=0x6 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5fe2f54b, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=83,ipv6,metadata=0x1,ipv6\_dst=ff00::/fff0:ffff:ffff:ffff:ffff:ffff:ffff:ffff actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x5fe2f54b, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=83,ipv6,metadata=0x6,ipv6\_dst=ff00::/fff0:ffff:ffff:ffff:ffff:ffff:ffff:ffff actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xe3e7736c, duration=516666.937s, table=11, n\_packets=3, n\_bytes=270, priority=82,ipv6,metadata=0x1,dl\_dst=33:33:00:00:00:00/ff:ff:00:00:00:00,ipv6\_dst=ff00::/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xe3e7736c, duration=516666.934s, table=11, n\_packets=11, n\_bytes=990, priority=82,ipv6,metadata=0x6,dl\_dst=33:33:00:00:00:00/ff:ff:00:00:00:00,ipv6\_dst=ff00::/8 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xe3e7736c, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=82,ip,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00,nw\_dst=224.0.0.0/4 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xe3e7736c, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=82,ip,metadata=0x6,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00,nw\_dst=224.0.0.0/4 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x182d067d, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ip,metadata=0x1,nw\_dst=10.123.1.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x790ed19e, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ip,metadata=0x1,nw\_dst=10.123.0.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9ffe07bf, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ip,metadata=0x1,nw\_dst=100.64.0.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa879320f, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ip,metadata=0x1,nw\_dst=10.123.2.1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x1e11ad52, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ipv6,metadata=0x1,ipv6\_dst=fe80::858:64ff:fe40:1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x37f94c21, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ipv6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6c9e8809, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ipv6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:101 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x8e569719, duration=516666.958s, table=11, n\_packets=0, n\_bytes=0, priority=60,ipv6,metadata=0x1,ipv6\_dst=fe80::858:aff:fe7b:201 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x361e3982, duration=516666.936s, table=11, n\_packets=0, n\_bytes=0, priority=50,metadata=0x1,dl\_dst=ff:ff:ff:ff:ff:ff actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x361e3982, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=50,metadata=0x6,dl\_dst=ff:ff:ff:ff:ff:ff actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xaa8a3366, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=30,ip,metadata=0x1,nw\_ttl=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xaa8a3366, duration=516666.937s, table=11, n\_packets=0, n\_bytes=0, priority=30,ip,metadata=0x1,nw\_ttl=1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xaa8a3366, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=30,ip,metadata=0x6,nw\_ttl=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xaa8a3366, duration=516666.934s, table=11, n\_packets=0, n\_bytes=0, priority=30,ip,metadata=0x6,nw\_ttl=1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x507ab33, duration=516666.966s, table=11, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x507ab33, duration=516666.960s, table=11, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x507ab33, duration=516666.958s, table=11, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x640f30c1, duration=516666.936s, table=11, n\_packets=45835, n\_bytes=4177071, priority=0,metadata=0x1 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x640f30c1, duration=516666.934s, table=11, n\_packets=115, n\_bytes=95220, priority=0,metadata=0x6 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x507ab33, duration=516666.921s, table=11, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,12)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ac96094, duration=516666.966s, table=12, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ac96094, duration=516666.960s, table=12, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ac96094, duration=516666.958s, table=12, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ac96094, duration=516666.921s, table=12, n\_packets=0, n\_bytes=0, priority=110,metadata=0x7,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xf6aed15d, duration=516666.934s, table=12, n\_packets=16, n\_bytes=4524, priority=110,ip,reg14=0x1,metadata=0x6,nw\_dst=100.64.0.2 actions=ct(table=13,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb1035b75, duration=516666.921s, table=12, n\_packets=37, n\_bytes=82269, priority=110,ip,reg14=0x2,metadata=0x6,nw\_dst=192.168.200.10 actions=ct(table=13,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=150, n\_bytes=10500, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,udp,metadata=0x5,tp\_src=546,tp\_dst=547 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,udp6,metadata=0x5,tp\_src=546,tp\_dst=547 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,udp,metadata=0x3,tp\_src=546,tp\_dst=547 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,udp6,metadata=0x3,tp\_src=546,tp\_dst=547 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=2, n\_bytes=180, priority=110,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x6e4c0e85, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x39c31663, duration=516665.574s, table=12, n\_packets=6, n\_bytes=252, priority=110,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x39c31663, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x57ba3cf3, duration=516666.934s, table=12, n\_packets=45811, n\_bytes=4175155, priority=110,ip,reg14=0x1,metadata=0x5 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x57ba3cf3, duration=516666.934s, table=12, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x1,metadata=0x5 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xdd816013, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x1,metadata=0x3 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xdd816013, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=110,ip,reg14=0x1,metadata=0x3 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x87d9b4d1, duration=516665.574s, table=12, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x87d9b4d1, duration=516665.574s, table=12, n\_packets=1111899, n\_bytes=103868079, priority=100,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x87d9b4d1, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0x87d9b4d1, duration=516665.462s, table=12, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xa954bc7, duration=516666.922s, table=12, n\_packets=0, n\_bytes=0, priority=90,ip,metadata=0x6,nw\_dst=192.168.200.10 actions=ct(table=13,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xd801b085, duration=516666.963s, table=12, n\_packets=7354, n\_bytes=308868, priority=0,metadata=0x5 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xd801b085, duration=516666.958s, table=12, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xd801b085, duration=516666.958s, table=12, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xe1646756, duration=516666.936s, table=12, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xe1646756, duration=516666.934s, table=12, n\_packets=938, n\_bytes=69747, priority=0,metadata=0x6 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xd801b085, duration=516666.921s, table=12, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,13)</span><br><span class="line"></span><br><span class="line"> cookie=0xb623a0d0, duration=516666.976s, table=13, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x1,metadata=0x5 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xb623a0d0, duration=516666.976s, table=13, n\_packets=45811, n\_bytes=4175155, priority=110,ip,reg14=0x1,metadata=0x5 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xc15b6232, duration=516666.962s, table=13, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x1,metadata=0x3 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xc15b6232, duration=516666.962s, table=13, n\_packets=0, n\_bytes=0, priority=110,ip,reg14=0x1,metadata=0x3 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xef56706, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x1,metadata=0x2 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xef56706, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,ip,reg14=0x1,metadata=0x2 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x99fef9ae, duration=516666.934s, table=13, n\_packets=24, n\_bytes=1916, priority=110,ip,reg14=0x2,metadata=0x2 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x99fef9ae, duration=516666.934s, table=13, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg14=0x2,metadata=0x2 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xe403549c, duration=516666.923s, table=13, n\_packets=99, n\_bytes=90696, priority=110,ip,reg14=0x2,metadata=0x7 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x685cb292, duration=516666.921s, table=13, n\_packets=1, n\_bytes=86, priority=110,ipv6,reg14=0x1,metadata=0x7 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x685cb292, duration=516666.921s, table=13, n\_packets=90, n\_bytes=93230, priority=110,ip,reg14=0x1,metadata=0x7 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xe403549c, duration=516666.921s, table=13, n\_packets=890, n\_bytes=62568, priority=110,ipv6,reg14=0x2,metadata=0x7 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x4dbe2254, duration=516666.964s, table=13, n\_packets=160, n\_bytes=11108, priority=110,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x4dbe2254, duration=516666.960s, table=13, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x4dbe2254, duration=516666.958s, table=13, n\_packets=1, n\_bytes=42, priority=110,metadata=0x2,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x4dbe2254, duration=516666.922s, table=13, n\_packets=19, n\_bytes=798, priority=110,metadata=0x7,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.964s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.964s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.923s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.923s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.920s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.923s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.922s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.921s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.921s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.959s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a3d537c, duration=516666.921s, table=13, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x8147f01b, duration=516666.963s, table=13, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x8147f01b, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x8147f01b, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x8147f01b, duration=516666.922s, table=13, n\_packets=0, n\_bytes=0, priority=110,metadata=0x7,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x1d33d816, duration=516665.566s, table=13, n\_packets=0, n\_bytes=0, priority=110,tcp,metadata=0x6,nw\_dst=10.86.0.10 actions=load:0xa56000a-&gt;NXM\_NX\_XXREG0\[96..127\],move:NXM\_OF\_TCP\_DST\[\]-&gt;OXM\_OF\_PKT\_REG4\[16..31\],ct(table=14,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5eb7ff63, duration=516665.566s, table=13, n\_packets=0, n\_bytes=0, priority=110,udp,metadata=0x6,nw\_dst=10.86.0.10 actions=load:0xa56000a-&gt;NXM\_NX\_XXREG0\[96..127\],move:NXM\_OF\_UDP\_DST\[\]-&gt;OXM\_OF\_PKT\_REG4\[16..31\],ct(table=14,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xbf22b605, duration=516665.565s, table=13, n\_packets=37, n\_bytes=6437, priority=110,tcp,metadata=0x6,nw\_dst=10.86.0.1 actions=load:0xa560001-&gt;NXM\_NX\_XXREG0\[96..127\],move:NXM\_OF\_TCP\_DST\[\]-&gt;OXM\_OF\_PKT\_REG4\[16..31\],ct(table=14,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x37f87885, duration=516462.831s, table=13, n\_packets=13, n\_bytes=1032, priority=110,tcp,metadata=0x6,nw\_dst=10.86.4.249 actions=load:0xa5604f9-&gt;NXM\_NX\_XXREG0\[96..127\],move:NXM\_OF\_TCP\_DST\[\]-&gt;OXM\_OF\_PKT\_REG4\[16..31\],ct(table=14,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x39c93e3b, duration=516442.476s, table=13, n\_packets=12, n\_bytes=958, priority=110,tcp,metadata=0x6,nw\_dst=10.86.248.2 actions=load:0xa56f802-&gt;NXM\_NX\_XXREG0\[96..127\],move:NXM\_OF\_TCP\_DST\[\]-&gt;OXM\_OF\_PKT\_REG4\[16..31\],ct(table=14,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xe0f2f2d4, duration=516666.971s, table=13, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xe0f2f2d4, duration=516666.967s, table=13, n\_packets=1111899, n\_bytes=103868079, priority=100,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xe0f2f2d4, duration=516666.961s, table=13, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xe0f2f2d4, duration=516666.961s, table=13, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xaca15964, duration=516666.963s, table=13, n\_packets=7354, n\_bytes=308868, priority=0,metadata=0x5 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xaca15964, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xaca15964, duration=516666.958s, table=13, n\_packets=0, n\_bytes=0, priority=0,metadata=0x2 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x533fb5a3, duration=516666.936s, table=13, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x533fb5a3, duration=516666.934s, table=13, n\_packets=929, n\_bytes=148113, priority=0,metadata=0x6 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0xaca15964, duration=516666.921s, table=13, n\_packets=7, n\_bytes=294, priority=0,metadata=0x7 actions=resubmit(,14)</span><br><span class="line"></span><br><span class="line"> cookie=0x22723c7, duration=516666.966s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp6,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x183ff6d9, duration=516666.966s, table=14, n\_packets=4, n\_bytes=418, priority=120,udp,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x3279b13e, duration=516666.966s, table=14, n\_packets=1111895, n\_bytes=103867661, priority=120,tcp,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f32406b, duration=516666.964s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp6,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f998175, duration=516666.964s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp6,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xf265bcde, duration=516666.962s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp,reg0=0x4/0x4,metadata=0x5 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x22723c7, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp6,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x183ff6d9, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x3279b13e, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f32406b, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp6,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f998175, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp6,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xf265bcde, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp,reg0=0x4/0x4,metadata=0x3 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x22723c7, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp6,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x183ff6d9, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x3279b13e, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f32406b, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp6,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f998175, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp6,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xf265bcde, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp,reg0=0x4/0x4,metadata=0x2 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x183ff6d9, duration=516666.923s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x3279b13e, duration=516666.922s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f32406b, duration=516666.922s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp6,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x22723c7, duration=516666.921s, table=14, n\_packets=0, n\_bytes=0, priority=120,udp6,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_UDP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x5f998175, duration=516666.921s, table=14, n\_packets=0, n\_bytes=0, priority=120,tcp6,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG1\[\],move:NXM\_OF\_TCP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xf265bcde, duration=516666.920s, table=14, n\_packets=0, n\_bytes=0, priority=120,sctp,reg0=0x4/0x4,metadata=0x7 actions=move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[64..95\],move:OXM\_OF\_SCTP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[32..47\],ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x1e30da0c, duration=516665.566s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,udp,reg0=0xa56000a,reg9=0x350000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x9f441c57, duration=516665.566s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,tcp,reg0=0xa56000a,reg9=0x350000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0xd06324a0, duration=516665.566s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,tcp,reg0=0xa56000a,reg9=0x23c10000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0xc6585f4c, duration=516665.565s, table=14, n\_packets=36, n\_bytes=6363, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,tcp,reg0=0xa560001,reg9=0x1bb0000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x34e59135, duration=516462.831s, table=14, n\_packets=10, n\_bytes=810, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,tcp,reg0=0xa5604f9,reg9=0x500000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x503fcdc1, duration=516442.476s, table=14, n\_packets=10, n\_bytes=810, priority=120,ct\_state=+est+trk,ct\_mark=0x2/0x2,tcp,reg0=0xa56f802,reg9=0x500000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x66d4f295, duration=516665.565s, table=14, n\_packets=1, n\_bytes=74, priority=120,ct\_state=+new+trk,tcp,reg0=0xa560001,reg9=0x1bb0000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:2</span><br><span class="line"></span><br><span class="line"> cookie=0x5e0554aa, duration=516544.354s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,reg0=0xa56000a,reg9=0x23c10000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:3</span><br><span class="line"></span><br><span class="line"> cookie=0x33f1f455, duration=516544.354s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,udp,reg0=0xa56000a,reg9=0x350000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:4</span><br><span class="line"></span><br><span class="line"> cookie=0xf126b1ee, duration=516544.354s, table=14, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,reg0=0xa56000a,reg9=0x350000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:4</span><br><span class="line"></span><br><span class="line"> cookie=0x47d264aa, duration=516460.636s, table=14, n\_packets=3, n\_bytes=222, priority=120,ct\_state=+new+trk,tcp,reg0=0xa5604f9,reg9=0x500000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:7</span><br><span class="line"></span><br><span class="line"> cookie=0x189e6a55, duration=516439.270s, table=14, n\_packets=2, n\_bytes=148, priority=120,ct\_state=+new+trk,tcp,reg0=0xa56f802,reg9=0x500000/0xffff0000,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[3\],group:9</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.963s, table=14, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x5 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.963s, table=14, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x5 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x3 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x3 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x2 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x2 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.922s, table=14, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x7 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb37ae1ca, duration=516666.921s, table=14, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x7 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.966s, table=14, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x5 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.966s, table=14, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x5 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x3 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x3 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x2 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.958s, table=14, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x2 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.923s, table=14, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x7 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x7ec2f89, duration=516666.922s, table=14, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x7 actions=ct(table=15,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x6a1241e0, duration=516666.964s, table=14, n\_packets=53325, n\_bytes=4495131, priority=0,metadata=0x5 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a1241e0, duration=516666.960s, table=14, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a1241e0, duration=516666.958s, table=14, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0xbaedf69e, duration=516666.936s, table=14, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0xbaedf69e, duration=516666.934s, table=14, n\_packets=929, n\_bytes=148113, priority=0,metadata=0x6 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a1241e0, duration=516666.922s, table=14, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,15)</span><br><span class="line"></span><br><span class="line"> cookie=0x3b343c50, duration=516666.976s, table=15, n\_packets=0, n\_bytes=0, priority=0,metadata=0x5 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x3b343c50, duration=516666.962s, table=15, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x19b9f669, duration=516666.937s, table=15, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x19b9f669, duration=516666.934s, table=15, n\_packets=991, n\_bytes=156540, priority=0,metadata=0x6 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x54c57bab, duration=516666.923s, table=15, n\_packets=25, n\_bytes=1958, priority=65535,metadata=0x2 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x54c57bab, duration=516666.921s, table=15, n\_packets=1106, n\_bytes=247672, priority=65535,metadata=0x7 actions=resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdbc1581, duration=516666.966s, table=15, n\_packets=103348, n\_bytes=7647824, priority=7,ct\_state=+new-est+trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdbc1581, duration=516666.960s, table=15, n\_packets=0, n\_bytes=0, priority=7,ct\_state=+new-est+trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x3aa1f6c9, duration=516666.976s, table=15, n\_packets=0, n\_bytes=0, priority=6,ct\_state=-new+est-rpl+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x6efa6709, duration=516666.976s, table=15, n\_packets=522192, n\_bytes=46725669, priority=4,ct\_state=-new+est-rpl+trk,ct\_mark=0/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x3aa1f6c9, duration=516666.962s, table=15, n\_packets=0, n\_bytes=0, priority=6,ct\_state=-new+est-rpl+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x6efa6709, duration=516666.962s, table=15, n\_packets=0, n\_bytes=0, priority=4,ct\_state=-new+est-rpl+trk,ct\_mark=0/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xf786c373, duration=516666.967s, table=15, n\_packets=53325, n\_bytes=4495131, priority=5,ct\_state=-trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xf786c373, duration=516666.961s, table=15, n\_packets=0, n\_bytes=0, priority=5,ct\_state=-trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bef1838, duration=516666.976s, table=15, n\_packets=0, n\_bytes=0, priority=3,ct\_state=-est+trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bef1838, duration=516666.962s, table=15, n\_packets=0, n\_bytes=0, priority=3,ct\_state=-est+trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x83d9d1d5, duration=516666.976s, table=15, n\_packets=0, n\_bytes=0, priority=2,ct\_state=+est+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xe2597b88, duration=516666.967s, table=15, n\_packets=486359, n\_bytes=49494586, priority=1,ct\_state=+est+trk,ct\_mark=0/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0x83d9d1d5, duration=516666.961s, table=15, n\_packets=0, n\_bytes=0, priority=2,ct\_state=+est+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xe2597b88, duration=516666.961s, table=15, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,16)</span><br><span class="line"></span><br><span class="line"> cookie=0xc5e81291, duration=516666.976s, table=16, n\_packets=575363, n\_bytes=51209944, priority=0,metadata=0x5 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc5e81291, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x76ee754, duration=516666.936s, table=16, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x76ee754, duration=516666.934s, table=16, n\_packets=991, n\_bytes=156540, priority=0,metadata=0x6 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x4612643c, duration=516666.923s, table=16, n\_packets=25, n\_bytes=1958, priority=65535,metadata=0x2 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x4612643c, duration=516666.923s, table=16, n\_packets=1106, n\_bytes=247672, priority=65535,metadata=0x7 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6484062b, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+est+rpl+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6484062b, duration=516666.962s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+est+rpl+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6484062b, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+inv+trk,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6484062b, duration=516666.962s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+inv+trk,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=1, n\_bytes=86, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=150, n\_bytes=10500, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.976s, table=16, n\_packets=3, n\_bytes=270, priority=65532,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x6f334a3f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc85e246f, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new-est+rel-inv+trk,ct\_mark=0/0x1,metadata=0x5 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc85e246f, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new-est+rel-inv+trk,ct\_mark=0/0x1,metadata=0x3 actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe06a2785, duration=516666.976s, table=16, n\_packets=486359, n\_bytes=49494586, priority=65532,ct\_state=-new+est-rel+rpl-inv+trk,ct\_mark=0/0x1,metadata=0x5 actions=load:0-&gt;NXM\_NX\_XXREG0\[105\],load:0-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe06a2785, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new+est-rel+rpl-inv+trk,ct\_mark=0/0x1,metadata=0x3 actions=load:0-&gt;NXM\_NX\_XXREG0\[105\],load:0-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x604dd2b4, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=34000,metadata=0x5,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0x604dd2b4, duration=516666.962s, table=16, n\_packets=0, n\_bytes=0, priority=34000,metadata=0x3,dl\_dst=0e:b9:fd:4b:22:ab actions=resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0164900, duration=516666.976s, table=16, n\_packets=103348, n\_bytes=7647824, priority=1,ct\_state=-est+trk,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0164900, duration=516666.976s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0164900, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xc0164900, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe25596f6, duration=516666.967s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe25596f6, duration=516666.967s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe25596f6, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xe25596f6, duration=516666.961s, table=16, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,17)</span><br><span class="line"></span><br><span class="line"> cookie=0xa9d4d04a, duration=516666.963s, table=17, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0xa9d4d04a, duration=516666.958s, table=17, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0xa9d4d04a, duration=516666.958s, table=17, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0x695aab8c, duration=516666.936s, table=17, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0x695aab8c, duration=516666.934s, table=17, n\_packets=991, n\_bytes=156540, priority=0,metadata=0x6 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0xa9d4d04a, duration=516666.921s, table=17, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,18)</span><br><span class="line"></span><br><span class="line"> cookie=0x585dbd39, duration=516666.964s, table=18, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x585dbd39, duration=516666.960s, table=18, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x585dbd39, duration=516666.958s, table=18, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x9b7e889d, duration=516666.937s, table=18, n\_packets=45985, n\_bytes=4187571, priority=0,metadata=0x1 actions=load:0-&gt;NXM\_NX\_XXREG1\[0..31\],resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x9b7e889d, duration=516666.934s, table=18, n\_packets=991, n\_bytes=156540, priority=0,metadata=0x6 actions=load:0-&gt;NXM\_NX\_XXREG1\[0..31\],resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x585dbd39, duration=516666.922s, table=18, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,19)</span><br><span class="line"></span><br><span class="line"> cookie=0x7295aeb1, duration=516666.936s, table=19, n\_packets=0, n\_bytes=0, priority=10550,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7295aeb1, duration=516666.936s, table=19, n\_packets=150, n\_bytes=10500, priority=10550,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7295aeb1, duration=516666.934s, table=19, n\_packets=876, n\_bytes=61320, priority=10550,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7295aeb1, duration=516666.934s, table=19, n\_packets=0, n\_bytes=0, priority=10550,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x2b86235, duration=516666.958s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x4,metadata=0x1,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x8580afffe7b0001-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:0a:58:0a:7b:00:01,load:0x4-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x24ab03b9, duration=516666.958s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x1,metadata=0x1,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x85864fffe400001-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x483c9ce1, duration=516666.958s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x3,metadata=0x1,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x8580afffe7b0201-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:0a:58:0a:7b:02:01,load:0x3-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc002555, duration=516666.957s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x2,metadata=0x1,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x8580afffe7b0101-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:0a:58:0a:7b:01:01,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0xedeb88db, duration=516666.934s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x2,metadata=0x6,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x505400fffe02e6d9-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:52:54:00:02:e6:d9,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x18129767, duration=516666.934s, table=19, n\_packets=0, n\_bytes=0, priority=194,ipv6,reg14=0x1,metadata=0x6,ipv6\_dst=fe80::/64 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_NX\_IPV6\_DST\[\]-&gt;NXM\_NX\_XXREG0\[\],load:0x85864fffe400002-&gt;NXM\_NX\_XXREG1\[0..63\],load:0xfe80000000000000-&gt;NXM\_NX\_XXREG1\[64..127\],mod\_dl\_src:0a:58:64:40:00:02,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0xc7270564, duration=516666.976s, table=19, n\_packets=2, n\_bytes=148, priority=120,ct\_state=+new+trk,tcp,metadata=0x5,nw\_dst=10.86.0.1,tp\_dst=443 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa560001-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x1bb-&gt;NXM\_NX\_XXREG0\[32..47\],group:1</span><br><span class="line"></span><br><span class="line"> cookie=0xc7270564, duration=516666.961s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x3,nw\_dst=10.86.0.1,tp\_dst=443 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa560001-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x1bb-&gt;NXM\_NX\_XXREG0\[32..47\],group:1</span><br><span class="line"></span><br><span class="line"> cookie=0x48ac2e36, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,udp,metadata=0x3,nw\_dst=10.86.0.10,tp\_dst=53 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x35-&gt;NXM\_NX\_XXREG0\[32..47\],group:5</span><br><span class="line"></span><br><span class="line"> cookie=0x48ac2e36, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,udp,metadata=0x5,nw\_dst=10.86.0.10,tp\_dst=53 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x35-&gt;NXM\_NX\_XXREG0\[32..47\],group:5</span><br><span class="line"></span><br><span class="line"> cookie=0x55fbcde6, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x3,nw\_dst=10.86.0.10,tp\_dst=9153 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x23c1-&gt;NXM\_NX\_XXREG0\[32..47\],group:6</span><br><span class="line"></span><br><span class="line"> cookie=0x55fbcde6, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x5,nw\_dst=10.86.0.10,tp\_dst=9153 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x23c1-&gt;NXM\_NX\_XXREG0\[32..47\],group:6</span><br><span class="line"></span><br><span class="line"> cookie=0x1a3ecb57, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x3,nw\_dst=10.86.0.10,tp\_dst=53 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x35-&gt;NXM\_NX\_XXREG0\[32..47\],group:5</span><br><span class="line"></span><br><span class="line"> cookie=0x1a3ecb57, duration=516544.354s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x5,nw\_dst=10.86.0.10,tp\_dst=53 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56000a-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x35-&gt;NXM\_NX\_XXREG0\[32..47\],group:5</span><br><span class="line"></span><br><span class="line"> cookie=0x818d5bdf, duration=516460.635s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x3,nw\_dst=10.86.4.249,tp\_dst=80 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa5604f9-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x50-&gt;NXM\_NX\_XXREG0\[32..47\],group:8</span><br><span class="line"></span><br><span class="line"> cookie=0x818d5bdf, duration=516460.635s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x5,nw\_dst=10.86.4.249,tp\_dst=80 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa5604f9-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x50-&gt;NXM\_NX\_XXREG0\[32..47\],group:8</span><br><span class="line"></span><br><span class="line"> cookie=0xa30a93c6, duration=516439.270s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x3,nw\_dst=10.86.248.2,tp\_dst=80 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56f802-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x50-&gt;NXM\_NX\_XXREG0\[32..47\],group:10</span><br><span class="line"></span><br><span class="line"> cookie=0xa30a93c6, duration=516439.270s, table=19, n\_packets=0, n\_bytes=0, priority=120,ct\_state=+new+trk,tcp,metadata=0x5,nw\_dst=10.86.248.2,tp\_dst=80 actions=load:0-&gt;NXM\_NX\_XXREG0\[97\],load:0xa56f802-&gt;NXM\_NX\_XXREG0\[64..95\],load:0x50-&gt;NXM\_NX\_XXREG0\[32..47\],group:10</span><br><span class="line"></span><br><span class="line"> cookie=0xdfb124bf, duration=516666.920s, table=19, n\_packets=0, n\_bytes=0, priority=97,ip,reg7=0,metadata=0x1,nw\_dst=100.64.0.2 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0x64400002-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x11c6092e, duration=516665.561s, table=19, n\_packets=0, n\_bytes=0, priority=97,ip,reg7=0,metadata=0x1,nw\_dst=100.64.0.4 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0x64400004-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x3b5f11cc, duration=516665.446s, table=19, n\_packets=0, n\_bytes=0, priority=97,ip,reg7=0,metadata=0x1,nw\_dst=100.64.0.3 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0x64400003-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b66bca4, duration=516666.958s, table=19, n\_packets=12, n\_bytes=958, priority=74,ip,metadata=0x1,nw\_dst=10.123.1.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0101-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:01:01,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x6c82a3e3, duration=516666.958s, table=19, n\_packets=0, n\_bytes=0, priority=74,ip,metadata=0x1,nw\_dst=10.123.2.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0201-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:02:01,load:0x3-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0xd3450ace, duration=516666.957s, table=19, n\_packets=12, n\_bytes=958, priority=74,ip,metadata=0x1,nw\_dst=10.123.0.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:00:01,load:0x4-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x31453574, duration=516666.934s, table=19, n\_packets=0, n\_bytes=0, priority=74,ip,metadata=0x6,nw\_dst=192.168.200.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xc0a8c80a-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:52:54:00:02:e6:d9,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0xf9fcbb62, duration=516666.934s, table=19, n\_packets=45811, n\_bytes=4175155, priority=72,ip,metadata=0x1,nw\_src=10.123.2.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0xa7b0202-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0201-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:02:01,load:0x3-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x7e92bf26, duration=516665.574s, table=19, n\_packets=0, n\_bytes=0, priority=72,ip,metadata=0x1,nw\_src=10.123.0.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0xa7b0002-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:00:01,load:0x4-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x1f629e13, duration=516665.462s, table=19, n\_packets=0, n\_bytes=0, priority=72,ip,metadata=0x1,nw\_src=10.123.1.0/24 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0xa7b0102-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0101-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:01:01,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x1ddd2a7f, duration=516666.958s, table=19, n\_packets=0, n\_bytes=0, priority=50,ip,metadata=0x1,nw\_dst=100.64.0.0/16 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x3de2d88b, duration=516666.934s, table=19, n\_packets=0, n\_bytes=0, priority=50,ip,metadata=0x6,nw\_dst=100.64.0.0/16 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],move:NXM\_OF\_IP\_DST\[\]-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400002-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:02,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x55834562, duration=516666.934s, table=19, n\_packets=25, n\_bytes=1990, priority=49,ip,reg7=0,metadata=0x6,nw\_dst=10.123.0.0/16 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0x64400001-&gt;NXM\_NX\_XXREG0\[96..127\],load:0x64400002-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:64:40:00:02,load:0x1-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x31b0b019, duration=516666.922s, table=19, n\_packets=90, n\_bytes=93230, priority=1,ip,reg7=0,metadata=0x6 actions=dec\_ttl(),load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],load:0xc0a8c801-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xc0a8c80a-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:52:54:00:02:e6:d9,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x7b252dc5, duration=516666.963s, table=19, n\_packets=1165222, n\_bytes=108363062, priority=0,metadata=0x5 actions=resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x7b252dc5, duration=516666.959s, table=19, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x7b252dc5, duration=516666.958s, table=19, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x7b252dc5, duration=516666.921s, table=19, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,20)</span><br><span class="line"></span><br><span class="line"> cookie=0x934d1f6d, duration=516666.937s, table=20, n\_packets=45835, n\_bytes=4177071, priority=150,reg8=0/0xffff,metadata=0x1 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x934d1f6d, duration=516666.935s, table=20, n\_packets=115, n\_bytes=95220, priority=150,reg8=0/0xffff,metadata=0x6 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f178db0, duration=516666.963s, table=20, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f178db0, duration=516666.958s, table=20, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f178db0, duration=516666.958s, table=20, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f178db0, duration=516666.921s, table=20, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,21)</span><br><span class="line"></span><br><span class="line"> cookie=0x2588989b, duration=516666.923s, table=21, n\_packets=0, n\_bytes=0, priority=1004,ip,reg14=0x3,metadata=0x1,nw\_dst=192.168.200.10 actions=load:0xa7b0202-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0201-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:02:01,load:0x3-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x20fdc614, duration=516665.560s, table=21, n\_packets=0, n\_bytes=0, priority=1004,ip,reg14=0x4,metadata=0x1,nw\_dst=192.168.200.102 actions=load:0xa7b0002-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0001-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:00:01,load:0x4-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x60955d8a, duration=516665.443s, table=21, n\_packets=0, n\_bytes=0, priority=1004,ip,reg14=0x2,metadata=0x1,nw\_dst=192.168.200.101 actions=load:0xa7b0102-&gt;NXM\_NX\_XXREG0\[96..127\],load:0xa7b0101-&gt;NXM\_NX\_XXREG0\[64..95\],mod\_dl\_src:0a:58:0a:7b:01:01,load:0x2-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.966s, table=21, n\_packets=103346, n\_bytes=7647676, priority=100,ip,reg0=0x2/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.966s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.963s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.963s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.960s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.960s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.958s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.922s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.922s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f6a10f4, duration=516666.922s, table=21, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x23b961d0, duration=516666.920s, table=21, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x1afb9dcf, duration=516666.966s, table=21, n\_packets=1061878, n\_bytes=100715534, priority=0,metadata=0x5 actions=resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x1afb9dcf, duration=516666.960s, table=21, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x1afb9dcf, duration=516666.958s, table=21, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0xd711a1db, duration=516666.936s, table=21, n\_packets=45835, n\_bytes=4177071, priority=0,metadata=0x1 actions=load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0xd711a1db, duration=516666.934s, table=21, n\_packets=115, n\_bytes=95220, priority=0,metadata=0x6 actions=load:0-&gt;OXM\_OF\_PKT\_REG4\[32..47\],resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0x1afb9dcf, duration=516666.923s, table=21, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,22)</span><br><span class="line"></span><br><span class="line"> cookie=0xbccadd95, duration=516666.937s, table=22, n\_packets=45835, n\_bytes=4177071, priority=150,reg8=0/0xffff,metadata=0x1 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xbccadd95, duration=516666.934s, table=22, n\_packets=115, n\_bytes=95220, priority=150,reg8=0/0xffff,metadata=0x6 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xe12326e7, duration=516666.967s, table=22, n\_packets=1008553, n\_bytes=96220403, priority=100,ct\_state=+trk,ip,metadata=0x5 actions=load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,68),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[102\],load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,69),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[108\],resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xe12326e7, duration=516666.967s, table=22, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+trk,ipv6,metadata=0x5 actions=load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,68),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[102\],load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,69),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[108\],resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xe12326e7, duration=516666.961s, table=22, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+trk,ip,metadata=0x3 actions=load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,68),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[102\],load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,69),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[108\],resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xe12326e7, duration=516666.961s, table=22, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+trk,ipv6,metadata=0x3 actions=load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,68),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[102\],load:0-&gt;NXM\_NX\_REG10\[7\],resubmit(,69),move:NXM\_NX\_REG10\[7\]-&gt;NXM\_NX\_XXREG0\[108\],resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0x463d0bef, duration=516666.965s, table=22, n\_packets=156671, n\_bytes=12142807, priority=0,metadata=0x5 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0x463d0bef, duration=516666.960s, table=22, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0x463d0bef, duration=516666.958s, table=22, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0x463d0bef, duration=516666.921s, table=22, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,23)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc0a4889, duration=516666.936s, table=23, n\_packets=0, n\_bytes=0, priority=500,ipv6,metadata=0x1,dl\_dst=33:33:00:00:00:00/ff:ff:00:00:00:00,ipv6\_dst=ff00::/8 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc0a4889, duration=516666.934s, table=23, n\_packets=0, n\_bytes=0, priority=500,ipv6,metadata=0x6,dl\_dst=33:33:00:00:00:00/ff:ff:00:00:00:00,ipv6\_dst=ff00::/8 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc0a4889, duration=516666.936s, table=23, n\_packets=0, n\_bytes=0, priority=500,ip,metadata=0x1,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00,nw\_dst=224.0.0.0/4 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc0a4889, duration=516666.934s, table=23, n\_packets=0, n\_bytes=0, priority=500,ip,metadata=0x6,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00,nw\_dst=224.0.0.0/4 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c0e46c4, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+new+trk,ipv6,reg0=0x40/0x40,metadata=0x5 actions=resubmit(,70),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c0e46c4, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+new+trk,ip,reg0=0x40/0x40,metadata=0x5 actions=resubmit(,70),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c0e46c4, duration=516666.961s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+new+trk,ipv6,reg0=0x40/0x40,metadata=0x3 actions=resubmit(,70),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c0e46c4, duration=516666.961s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+new+trk,ip,reg0=0x40/0x40,metadata=0x3 actions=resubmit(,70),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xdf063dbe, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ip,reg0=0x40/0x40,metadata=0x5 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xdf063dbe, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ipv6,reg0=0x40/0x40,metadata=0x5 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xdf063dbe, duration=516666.961s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ip,reg0=0x40/0x40,metadata=0x3 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xdf063dbe, duration=516666.961s, table=23, n\_packets=0, n\_bytes=0, priority=100,ct\_state=+est+trk,ipv6,reg0=0x40/0x40,metadata=0x3 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0xb90e8789, duration=516666.934s, table=23, n\_packets=45811, n\_bytes=4175155, priority=100,reg0=0xa7b0202,reg15=0x3,metadata=0x1 actions=mod\_dl\_dst:9e:c7:54:ba:d3:31,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x4f5c7161, duration=516666.934s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0x64400002,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:02,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d49f6a, duration=516665.574s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xa7b0002,reg15=0x4,metadata=0x1 actions=mod\_dl\_dst:9e:c7:54:ba:d3:31,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xe53cdf2, duration=516665.566s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0x64400004,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:04,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xe25820f8, duration=516665.462s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xa7b0102,reg15=0x2,metadata=0x1 actions=mod\_dl\_dst:9e:c7:54:ba:d3:31,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xcd7e0a30, duration=516665.454s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0x64400003,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:03,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x839f9b65, duration=516657.902s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xa7b0203,reg15=0x3,metadata=0x1 actions=mod\_dl\_dst:0a:58:0a:7b:02:03,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xd47c0dd5, duration=516462.796s, table=23, n\_packets=12, n\_bytes=958, priority=100,reg0=0xa7b0003,reg15=0x4,metadata=0x1 actions=mod\_dl\_dst:0a:58:0a:7b:00:03,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x3aec0cf4, duration=516442.445s, table=23, n\_packets=12, n\_bytes=958, priority=100,reg0=0xa7b0103,reg15=0x2,metadata=0x1 actions=mod\_dl\_dst:0a:58:0a:7b:01:03,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xae9b54a, duration=516666.934s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xfe800000,reg1=0,reg2=0x85864ff,reg3=0xfe400002,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:02,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x61850bed, duration=516665.566s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xfe800000,reg1=0,reg2=0x85864ff,reg3=0xfe400004,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:04,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x253c4975, duration=516665.454s, table=23, n\_packets=0, n\_bytes=0, priority=100,reg0=0xfe800000,reg1=0,reg2=0x85864ff,reg3=0xfe400003,reg15=0x1,metadata=0x1 actions=mod\_dl\_dst:0a:58:64:40:00:03,resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x28aa7273, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=90,ipv6,reg0=0x1000/0x1000,metadata=0x5 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x28aa7273, duration=516666.976s, table=23, n\_packets=0, n\_bytes=0, priority=90,ip,reg0=0x1000/0x1000,metadata=0x5 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x28aa7273, duration=516666.962s, table=23, n\_packets=0, n\_bytes=0, priority=90,ipv6,reg0=0x1000/0x1000,metadata=0x3 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x28aa7273, duration=516666.962s, table=23, n\_packets=0, n\_bytes=0, priority=90,ip,reg0=0x1000/0x1000,metadata=0x3 actions=ct(table=24,zone=NXM\_NX\_REG12\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x4dc4de4f, duration=516666.921s, table=23, n\_packets=0, n\_bytes=0, priority=1,ip,metadata=0x6,nw\_dst=192.168.200.10 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x63b8230, duration=516666.966s, table=23, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x63b8230, duration=516666.960s, table=23, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x63b8230, duration=516666.958s, table=23, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x63b8230, duration=516666.921s, table=23, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x8906c324, duration=516666.936s, table=23, n\_packets=0, n\_bytes=0, priority=0,ip,metadata=0x1 actions=push:NXM\_NX\_REG0\[\],push:NXM\_NX\_XXREG0\[96..127\],pop:NXM\_NX\_REG0\[\],mod\_dl\_dst:00:00:00:00:00:00,resubmit(,66),pop:NXM\_NX\_REG0\[\],resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xd670e5bc, duration=516666.936s, table=23, n\_packets=0, n\_bytes=0, priority=0,ipv6,metadata=0x1 actions=mod\_dl\_dst:00:00:00:00:00:00,resubmit(,66),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0xd670e5bc, duration=516666.935s, table=23, n\_packets=0, n\_bytes=0, priority=0,ipv6,metadata=0x6 actions=mod\_dl\_dst:00:00:00:00:00:00,resubmit(,66),resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x8906c324, duration=516666.934s, table=23, n\_packets=115, n\_bytes=95220, priority=0,ip,metadata=0x6 actions=push:NXM\_NX\_REG0\[\],push:NXM\_NX\_XXREG0\[96..127\],pop:NXM\_NX\_REG0\[\],mod\_dl\_dst:00:00:00:00:00:00,resubmit(,66),pop:NXM\_NX\_REG0\[\],resubmit(,24)</span><br><span class="line"></span><br><span class="line"> cookie=0x2bf22be, duration=516666.976s, table=24, n\_packets=0, n\_bytes=0, priority=2000,reg0=0x4000/0x4000,metadata=0x5 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x7040ba45, duration=516666.963s, table=24, n\_packets=0, n\_bytes=0, priority=1000,reg0=0x4000/0x4000,metadata=0x5 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0x7040ba45, duration=516666.959s, table=24, n\_packets=0, n\_bytes=0, priority=1000,reg0=0x4000/0x4000,metadata=0x3 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0x7040ba45, duration=516666.958s, table=24, n\_packets=0, n\_bytes=0, priority=1000,reg0=0x4000/0x4000,metadata=0x2 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0x7040ba45, duration=516666.923s, table=24, n\_packets=0, n\_bytes=0, priority=1000,reg0=0x4000/0x4000,metadata=0x7 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0x3736ec5e, duration=516666.976s, table=24, n\_packets=0, n\_bytes=0, priority=1,reg0=0x40/0x40,metadata=0x5 actions=push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_OF\_ETH\_DST\[\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x3736ec5e, duration=516666.962s, table=24, n\_packets=0, n\_bytes=0, priority=1,reg0=0x40/0x40,metadata=0x3 actions=push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_OF\_ETH\_DST\[\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x3736ec5e, duration=516666.976s, table=24, n\_packets=0, n\_bytes=0, priority=1,reg0=0x1000/0x1000,metadata=0x5 actions=push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_OF\_ETH\_DST\[\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x3736ec5e, duration=516666.962s, table=24, n\_packets=0, n\_bytes=0, priority=1,reg0=0x1000/0x1000,metadata=0x3 actions=push:NXM\_OF\_ETH\_SRC\[\],push:NXM\_OF\_ETH\_DST\[\],pop:NXM\_OF\_ETH\_SRC\[\],pop:NXM\_OF\_ETH\_DST\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d0038b8, duration=516666.963s, table=24, n\_packets=1165224, n\_bytes=108363210, priority=0,metadata=0x5 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d0038b8, duration=516666.958s, table=24, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d0038b8, duration=516666.958s, table=24, n\_packets=25, n\_bytes=1958, priority=0,metadata=0x2 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x696ac297, duration=516666.937s, table=24, n\_packets=45835, n\_bytes=4177071, priority=0,metadata=0x1 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x696ac297, duration=516666.934s, table=24, n\_packets=115, n\_bytes=95220, priority=0,metadata=0x6 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d0038b8, duration=516666.921s, table=24, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,25)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f8081a3, duration=516666.976s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x1,metadata=0x5,arp\_tpa=10.123.2.1,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x8d75859c, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x1,metadata=0x3,arp\_tpa=10.123.1.1,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xeb76d805, duration=516666.958s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x1,metadata=0x2,arp\_tpa=100.64.0.1,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xa5dda7a9, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x2,metadata=0x5,arp\_tpa=10.123.2.2,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x6fb73ed8, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x2,metadata=0x2,arp\_tpa=100.64.0.2,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x6b01b833, duration=516657.435s, table=25, n\_packets=0, n\_bytes=0, priority=100,arp,reg14=0x3,metadata=0x5,arp\_tpa=10.123.2.3,arp\_op=1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x9bbe435e, duration=516666.976s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x5,ipv6\_dst=ff02::1:ff7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x9bbe435e, duration=516666.976s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x5,ipv6\_dst=fe80::858:aff:fe7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xf7e0409e, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x3,ipv6\_dst=fe80::858:aff:fe7b:101,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:101 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xf7e0409e, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x3,ipv6\_dst=ff02::1:ff7b:101,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:101 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xc64778d9, duration=516666.958s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xc64778d9, duration=516666.958s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x1,metadata=0x2,ipv6\_dst=ff02::1:ff40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x11cb83b5, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x2,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x11cb83b5, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=100,icmp6,reg14=0x2,metadata=0x2,ipv6\_dst=ff02::1:ff40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x16997871, duration=516666.922s, table=25, n\_packets=1010, n\_bytes=154146, priority=100,reg14=0x2,metadata=0x7 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x225c444d, duration=516666.976s, table=25, n\_packets=7356, n\_bytes=308952, priority=50,arp,metadata=0x5,arp\_tpa=10.123.2.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:0a:7b:02:01,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa580a7b0201-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0201-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xdee7c26e, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x3,arp\_tpa=10.123.1.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:0a:7b:01:01,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa580a7b0101-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0101-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x4105320f, duration=516666.958s, table=25, n\_packets=1, n\_bytes=42, priority=50,arp,metadata=0x2,arp\_tpa=100.64.0.1,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:64:40:00:01,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa5864400001-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0x64400001-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x72d8dfbc, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x2,arp\_tpa=100.64.0.2,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:64:40:00:02,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa5864400002-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0x64400002-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x4e26fa07, duration=516666.934s, table=25, n\_packets=2, n\_bytes=84, priority=50,arp,metadata=0x5,arp\_tpa=10.123.2.2,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:9e:c7:54:ba:d3:31,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0x9ec754bad331-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0202-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xb5c88f87, duration=516665.566s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x2,arp\_tpa=100.64.0.4,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:64:40:00:04,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa5864400004-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0x64400004-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xed2efb50, duration=516665.462s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x3,arp\_tpa=10.123.1.2,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:9e:c7:54:ba:d3:31,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0x9ec754bad331-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0102-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xf900a8a1, duration=516665.454s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x2,arp\_tpa=100.64.0.3,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:64:40:00:03,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa5864400003-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0x64400003-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xf04eb9d7, duration=516657.902s, table=25, n\_packets=1, n\_bytes=42, priority=50,arp,metadata=0x5,arp\_tpa=10.123.2.3,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:0a:7b:02:03,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa580a7b0203-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0203-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xd956f4e3, duration=516442.445s, table=25, n\_packets=0, n\_bytes=0, priority=50,arp,metadata=0x3,arp\_tpa=10.123.1.3,arp\_op=1 actions=move:NXM\_OF\_ETH\_SRC\[\]-&gt;NXM\_OF\_ETH\_DST\[\],mod\_dl\_src:0a:58:0a:7b:01:03,load:0x2-&gt;NXM\_OF\_ARP\_OP\[\],move:NXM\_NX\_ARP\_SHA\[\]-&gt;NXM\_NX\_ARP\_THA\[\],load:0xa580a7b0103-&gt;NXM\_NX\_ARP\_SHA\[\],move:NXM\_OF\_ARP\_SPA\[\]-&gt;NXM\_OF\_ARP\_TPA\[\],load:0xa7b0103-&gt;NXM\_OF\_ARP\_SPA\[\],move:NXM\_NX\_REG14\[\]-&gt;NXM\_NX\_REG15\[\],load:0x1-&gt;NXM\_NX\_REG10\[0\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xe8a04bf2, duration=516666.976s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x5,ipv6\_dst=ff02::1:ff7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.0a.7b.02.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.02.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.02.01.00.19.00.10.80.00.42.06.0a.58.0a.7b.02.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xe8a04bf2, duration=516666.976s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x5,ipv6\_dst=fe80::858:aff:fe7b:201,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.0a.7b.02.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.02.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.02.01.00.19.00.10.80.00.42.06.0a.58.0a.7b.02.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x31be3c26, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x3,ipv6\_dst=fe80::858:aff:fe7b:101,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:101 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.0a.7b.01.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.01.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.01.01.00.19.00.10.80.00.42.06.0a.58.0a.7b.01.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x31be3c26, duration=516666.962s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x3,ipv6\_dst=ff02::1:ff7b:101,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:101 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.0a.7b.01.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.01.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.0a.ff.fe.7b.01.01.00.19.00.10.80.00.42.06.0a.58.0a.7b.01.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x81833c42, duration=516666.958s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.01.00.19.00.10.80.00.42.06.0a.58.64.40.00.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x81833c42, duration=516666.958s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=ff02::1:ff40:1,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.01.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.01.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.01.00.19.00.10.80.00.42.06.0a.58.64.40.00.01.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x839358c0, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.02.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.02.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.02.00.19.00.10.80.00.42.06.0a.58.64.40.00.02.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x839358c0, duration=516666.934s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=ff02::1:ff40:2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.02.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.02.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.02.00.19.00.10.80.00.42.06.0a.58.64.40.00.02.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x9944d51, duration=516665.566s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:4,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:4 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.04.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.04.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.04.00.19.00.10.80.00.42.06.0a.58.64.40.00.04.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x9944d51, duration=516665.566s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=ff02::1:ff40:4,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:4 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.04.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.04.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.04.00.19.00.10.80.00.42.06.0a.58.64.40.00.04.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xbc353c40, duration=516665.454s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=ff02::1:ff40:3,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:3 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.03.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.03.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.03.00.19.00.10.80.00.42.06.0a.58.64.40.00.03.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xbc353c40, duration=516665.454s, table=25, n\_packets=0, n\_bytes=0, priority=50,icmp6,metadata=0x2,ipv6\_dst=fe80::858:64ff:fe40:3,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:3 actions=controller(userdata=00.00.00.0c.00.00.00.00.00.19.00.10.80.00.08.06.0a.58.64.40.00.03.00.00.00.19.00.18.80.00.34.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.03.00.19.00.18.80.00.3e.10.fe.80.00.00.00.00.00.00.08.58.64.ff.fe.40.00.03.00.19.00.10.80.00.42.06.0a.58.64.40.00.03.00.00.00.1c.00.18.00.20.00.00.00.00.00.00.00.01.1c.04.00.01.1e.04.00.00.00.00.00.19.00.10.00.01.15.08.00.00.00.01.00.00.00.01.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x2facb28, duration=516666.966s, table=25, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x2facb28, duration=516666.960s, table=25, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x2facb28, duration=516666.958s, table=25, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xbfde3d87, duration=516666.937s, table=25, n\_packets=45835, n\_bytes=4177071, priority=0,metadata=0x1 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0xbfde3d87, duration=516666.934s, table=25, n\_packets=115, n\_bytes=95220, priority=0,metadata=0x6 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x2facb28, duration=516666.922s, table=25, n\_packets=96, n\_bytes=93526, priority=0,metadata=0x7 actions=resubmit(,26)</span><br><span class="line"></span><br><span class="line"> cookie=0x76b32985, duration=516666.958s, table=26, n\_packets=45811, n\_bytes=4175155, priority=50,reg15=0x3,metadata=0x1 actions=load:0x5-&gt;NXM\_NX\_REG15\[\],resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xf9e0863f, duration=516665.577s, table=26, n\_packets=12, n\_bytes=958, priority=50,reg15=0x4,metadata=0x1 actions=load:0x6-&gt;NXM\_NX\_REG15\[\],resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0x9b4df28f, duration=516665.466s, table=26, n\_packets=12, n\_bytes=958, priority=50,reg15=0x2,metadata=0x1 actions=load:0x7-&gt;NXM\_NX\_REG15\[\],resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xf0b01d, duration=516666.966s, table=26, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xf0b01d, duration=516666.960s, table=26, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xf0b01d, duration=516666.958s, table=26, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xa3b2d964, duration=516666.936s, table=26, n\_packets=0, n\_bytes=0, priority=0,metadata=0x1 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xa3b2d964, duration=516666.934s, table=26, n\_packets=115, n\_bytes=95220, priority=0,metadata=0x6 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0xf0b01d, duration=516666.921s, table=26, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,27)</span><br><span class="line"></span><br><span class="line"> cookie=0x5c24158e, duration=516666.958s, table=27, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x1,dl\_dst=00:00:00:00:00:00 actions=controller(userdata=00.00.00.00.00.00.00.00.00.19.00.10.80.00.06.06.ff.ff.ff.ff.ff.ff.00.00.00.1c.00.18.00.20.00.40.00.00.00.00.00.01.de.10.80.00.2c.04.00.00.00.00.00.1c.00.18.00.20.00.60.00.00.00.00.00.01.de.10.80.00.2e.04.00.00.00.00.00.19.00.10.80.00.2a.02.00.01.00.00.00.00.00.00.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xad9f1461, duration=516666.937s, table=27, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x1,dl\_dst=00:00:00:00:00:00 actions=controller(userdata=00.00.00.09.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.00.01.de.10.80.00.3e.10.00.00.00.00.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xad9f1461, duration=516666.935s, table=27, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x6,dl\_dst=00:00:00:00:00:00 actions=controller(userdata=00.00.00.09.00.00.00.00.00.1c.00.18.00.80.00.00.00.00.00.00.00.01.de.10.80.00.3e.10.00.00.00.00.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x8c04f822, duration=516665.566s, table=27, n\_packets=1, n\_bytes=74, priority=100,ip,metadata=0x6,dl\_dst=00:00:00:00:00:00 actions=controller(userdata=00.00.00.00.00.00.00.00.00.19.00.10.80.00.06.06.ff.ff.ff.ff.ff.ff.00.00.00.1c.00.18.00.20.00.40.00.00.00.00.00.01.de.10.80.00.2c.04.00.00.00.00.00.1c.00.18.00.20.00.60.00.00.00.00.00.01.de.10.80.00.2e.04.00.00.00.00.00.19.00.10.80.00.2a.02.00.01.00.00.00.00.00.00.ff.ff.00.10.00.00.23.20.00.0e.ff.f8.25.00.00.00,meter\_id=4)</span><br><span class="line"></span><br><span class="line"> cookie=0xd83dcdd2, duration=516666.963s, table=27, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,28)</span><br><span class="line"></span><br><span class="line"> cookie=0xd83dcdd2, duration=516666.958s, table=27, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,28)</span><br><span class="line"></span><br><span class="line"> cookie=0xd83dcdd2, duration=516666.958s, table=27, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,28)</span><br><span class="line"></span><br><span class="line"> cookie=0x16bddd6f, duration=516666.936s, table=27, n\_packets=45835, n\_bytes=4177071, priority=0,metadata=0x1 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x16bddd6f, duration=516666.934s, table=27, n\_packets=114, n\_bytes=95146, priority=0,metadata=0x6 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xd83dcdd2, duration=516666.921s, table=27, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,28)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb533577, duration=516666.962s, table=28, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,29)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb533577, duration=516666.958s, table=28, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,29)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb533577, duration=516666.958s, table=28, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,29)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb533577, duration=516666.921s, table=28, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,29)</span><br><span class="line"></span><br><span class="line"> cookie=0x5dac9310, duration=516666.964s, table=29, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,30)</span><br><span class="line"></span><br><span class="line"> cookie=0x5dac9310, duration=516666.960s, table=29, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,30)</span><br><span class="line"></span><br><span class="line"> cookie=0x5dac9310, duration=516666.958s, table=29, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,30)</span><br><span class="line"></span><br><span class="line"> cookie=0x5dac9310, duration=516666.921s, table=29, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,30)</span><br><span class="line"></span><br><span class="line"> cookie=0xa807918e, duration=516666.963s, table=30, n\_packets=1157864, n\_bytes=108054090, priority=0,metadata=0x5 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0xa807918e, duration=516666.958s, table=30, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0xa807918e, duration=516666.958s, table=30, n\_packets=24, n\_bytes=1916, priority=0,metadata=0x2 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0xa807918e, duration=516666.922s, table=30, n\_packets=1106, n\_bytes=247672, priority=0,metadata=0x7 actions=resubmit(,31)</span><br><span class="line"></span><br><span class="line"> cookie=0x1784dfb7, duration=516666.976s, table=31, n\_packets=45811, n\_bytes=4175155, priority=50,metadata=0x5,dl\_dst=0a:58:0a:7b:02:01 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xfd9decbe, duration=516666.962s, table=31, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_dst=0e:b9:fd:4b:22:ab actions=controller(userdata=00.00.00.12.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xbce155ad, duration=516666.962s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x3,dl\_dst=0a:58:0a:7b:01:01 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xfd9decbe, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=0e:b9:fd:4b:22:ab actions=controller(userdata=00.00.00.12.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x4a73d39b, duration=516666.958s, table=31, n\_packets=24, n\_bytes=1916, priority=50,metadata=0x2,dl\_dst=0a:58:64:40:00:01 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xfd9decbe, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_dst=0e:b9:fd:4b:22:ab actions=controller(userdata=00.00.00.12.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0xc15b7f3c, duration=516666.934s, table=31, n\_packets=501161, n\_bytes=49213187, priority=50,metadata=0x5,dl\_dst=9e:c7:54:ba:d3:31 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x5de5533b, duration=516666.934s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x2,dl\_dst=0a:58:64:40:00:02 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xfd9decbe, duration=516666.923s, table=31, n\_packets=0, n\_bytes=0, priority=110,metadata=0x7,dl\_dst=0e:b9:fd:4b:22:ab actions=controller(userdata=00.00.00.12.00.00.00.00)</span><br><span class="line"></span><br><span class="line"> cookie=0x9fa3e94b, duration=516666.921s, table=31, n\_packets=104, n\_bytes=90950, priority=50,metadata=0x7,dl\_dst=52:54:00:02:e6:d9 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x85908eea, duration=516665.566s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x2,dl\_dst=0a:58:64:40:00:04 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xed2efdef, duration=516665.462s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x3,dl\_dst=9e:c7:54:ba:d3:31 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x8a886450, duration=516665.454s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x2,dl\_dst=0a:58:64:40:00:03 actions=load:0x4-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2f98ec18, duration=516657.902s, table=31, n\_packets=610605, n\_bytes=54630584, priority=50,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x359f76b2, duration=516442.445s, table=31, n\_packets=0, n\_bytes=0, priority=50,metadata=0x3,dl\_dst=0a:58:0a:7b:01:03 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x3ecfc9b8, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x2,arp\_tpa=100.64.0.1,arp\_op=1 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2614c142, duration=516666.936s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x5,arp\_tpa=10.123.2.1,arp\_op=1 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xb00a0539, duration=516666.934s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x2,arp\_tpa=100.64.0.2,arp\_op=1 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x85268a8b, duration=516666.923s, table=31, n\_packets=5, n\_bytes=210, priority=80,arp,reg10=0/0x2,metadata=0x7,arp\_tpa=192.168.200.10,arp\_op=1 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xeded1aec, duration=516665.566s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x2,arp\_tpa=100.64.0.4,arp\_op=1 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x6a73ee4, duration=516665.462s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x3,arp\_tpa=10.123.1.1,arp\_op=1 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b01f586, duration=516665.454s, table=31, n\_packets=0, n\_bytes=0, priority=80,arp,reg10=0/0x2,metadata=0x2,arp\_tpa=100.64.0.3,arp\_op=1 actions=load:0x4-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xcaba128e, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:1 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x755a41d9, duration=516666.936s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:201 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xaa707874, duration=516666.935s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:2 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x36ef4607, duration=516666.921s, table=31, n\_packets=1, n\_bytes=86, priority=80,icmp6,reg10=0/0x2,metadata=0x7,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::5054:ff:fe02:e6d9 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xe217894b, duration=516665.566s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:4 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x30b08ca, duration=516665.462s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:aff:fe7b:101 actions=<span class="built_in">clone</span>(load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,37)),load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xdf8b5a4, duration=516665.454s, table=31, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg10=0/0x2,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0,nd\_target=fe80::858:64ff:fe40:3 actions=load:0x4-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x1c974c15, duration=516666.934s, table=31, n\_packets=0, n\_bytes=0, priority=75,icmp6,metadata=0x5,dl\_src=0a:58:0a:7b:02:01,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2cef37a2, duration=516666.922s, table=31, n\_packets=0, n\_bytes=0, priority=75,icmp6,metadata=0x7,dl\_src=52:54:00:02:e6:d9,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xa426a7fd, duration=516665.462s, table=31, n\_packets=0, n\_bytes=0, priority=75,icmp6,metadata=0x3,dl\_src=0a:58:0a:7b:01:01,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x1c974c15, duration=516666.934s, table=31, n\_packets=0, n\_bytes=0, priority=75,arp,metadata=0x5,dl\_src=0a:58:0a:7b:02:01,arp\_op=1 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2cef37a2, duration=516666.922s, table=31, n\_packets=4, n\_bytes=168, priority=75,arp,metadata=0x7,dl\_src=52:54:00:02:e6:d9,arp\_op=1 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0xa426a7fd, duration=516665.462s, table=31, n\_packets=0, n\_bytes=0, priority=75,arp,metadata=0x3,dl\_src=0a:58:0a:7b:01:01,arp\_op=1 actions=load:0x8005-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2fa47ba0, duration=516666.966s, table=31, n\_packets=154, n\_bytes=10856, priority=70,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0x8000-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2fa47ba0, duration=516666.960s, table=31, n\_packets=0, n\_bytes=0, priority=70,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0x8000-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2fa47ba0, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=70,metadata=0x2,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0x8000-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x2fa47ba0, duration=516666.921s, table=31, n\_packets=902, n\_bytes=63028, priority=70,metadata=0x7,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0x8000-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x8c65889b, duration=516666.963s, table=31, n\_packets=0, n\_bytes=0, priority=0,metadata=0x5 actions=load:0-&gt;NXM\_NX\_REG15\[\],resubmit(,71),resubmit(,32)</span><br><span class="line"></span><br><span class="line"> cookie=0x8c65889b, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=load:0-&gt;NXM\_NX\_REG15\[\],resubmit(,71),resubmit(,32)</span><br><span class="line"></span><br><span class="line"> cookie=0x8c65889b, duration=516666.958s, table=31, n\_packets=0, n\_bytes=0, priority=0,metadata=0x2 actions=load:0-&gt;NXM\_NX\_REG15\[\],resubmit(,71),resubmit(,32)</span><br><span class="line"></span><br><span class="line"> cookie=0x8c65889b, duration=516666.923s, table=31, n\_packets=90, n\_bytes=93230, priority=0,metadata=0x7 actions=load:0-&gt;NXM\_NX\_REG15\[\],resubmit(,71),resubmit(,32)</span><br><span class="line"></span><br><span class="line"> cookie=0xfa4ece33, duration=516666.962s, table=32, n\_packets=0, n\_bytes=0, priority=50,reg15=0,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfa4ece33, duration=516666.958s, table=32, n\_packets=0, n\_bytes=0, priority=50,reg15=0,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfa4ece33, duration=516666.958s, table=32, n\_packets=0, n\_bytes=0, priority=50,reg15=0,metadata=0x2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x50a5435a, duration=516665.565s, table=32, n\_packets=90, n\_bytes=93230, priority=50,reg15=0,metadata=0x7 actions=load:0x8001-&gt;NXM\_NX\_REG15\[\],resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x582cc55, duration=516666.966s, table=32, n\_packets=0, n\_bytes=0, priority=0,metadata=0x5 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x582cc55, duration=516666.960s, table=32, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x582cc55, duration=516666.958s, table=32, n\_packets=0, n\_bytes=0, priority=0,metadata=0x2 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x582cc55, duration=516666.921s, table=32, n\_packets=0, n\_bytes=0, priority=0,metadata=0x7 actions=resubmit(,37)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516667.214s, table=37, n\_packets=0, n\_bytes=0, priority=150,reg10=0x2/0x3 actions=resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516667.214s, table=37, n\_packets=0, n\_bytes=0, priority=150,reg10=0x10/0x10 actions=resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0xff0e0093, duration=516666.955s, table=37, n\_packets=154, n\_bytes=10856, priority=100,reg15=0x8000,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\],resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x8be6c76f, duration=516665.566s, table=37, n\_packets=12, n\_bytes=958, priority=100,reg15=0x6,metadata=0x1 actions=load:0x6001-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-69fc44-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x655e8a1a, duration=516665.550s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x3,metadata=0x2 actions=load:0x3002-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-69fc44-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b5ce155, duration=516665.454s, table=37, n\_packets=12, n\_bytes=958, priority=100,reg15=0x7,metadata=0x1 actions=load:0x7001-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0xe680a366, duration=516665.433s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x2,metadata=0x3 actions=load:0x2003-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x5992340c, duration=516665.433s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x4,metadata=0x2 actions=load:0x4002-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x65cae9cd, duration=516665.433s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x8000,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\],load:0x800003-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span></span><br><span class="line"></span><br><span class="line"> cookie=0x237912b4, duration=516665.433s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x8005,metadata=0x3 actions=load:0x805003-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span></span><br><span class="line"></span><br><span class="line"> cookie=0x574a92c2, duration=516665.433s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x8000,metadata=0x2 actions=load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\],load:0x800002-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span>,output:<span class="string">&quot;ovn-69fc44-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x470fdff2, duration=516441.970s, table=37, n\_packets=0, n\_bytes=0, priority=100,reg15=0x3,metadata=0x3 actions=load:0x3003-&gt;NXM\_NX\_TUN\_ID\[0..23\],output:<span class="string">&quot;ovn-eca30b-0&quot;</span>,resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516667.214s, table=37, n\_packets=1212135, n\_bytes=112872783, priority=0 actions=resubmit(,38)</span><br><span class="line"></span><br><span class="line"> cookie=0x156bb221, duration=516666.957s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x1,metadata=0x1 actions=load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xdbac9e8c, duration=516666.957s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x2,metadata=0x1 actions=load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x796c3583, duration=516666.955s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x4,metadata=0x1 actions=load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xeb13f530, duration=516666.955s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_REG11\[\],load:0x3-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x22cc0c78, duration=516666.955s, table=38, n\_packets=45811, n\_bytes=4175155, priority=100,reg15=0x5,metadata=0x1 actions=load:0x3-&gt;NXM\_NX\_REG15\[\],load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xfa0378d7, duration=516666.955s, table=38, n\_packets=24, n\_bytes=1916, priority=100,reg15=0x1,metadata=0x2 actions=load:0xa-&gt;NXM\_NX\_REG11\[\],load:0x5-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x68b5734b, duration=516666.955s, table=38, n\_packets=45811, n\_bytes=4175155, priority=100,reg15=0x1,metadata=0x5 actions=load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xb59d3fb0, duration=516666.955s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x3,metadata=0x1 actions=load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x574a92c2, duration=516666.934s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x8000,metadata=0x2 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x6d3b0d82, duration=516666.934s, table=38, n\_packets=26, n\_bytes=2032, priority=100,reg15=0x1,metadata=0x6 actions=load:0xc-&gt;NXM\_NX\_REG11\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xa36892e9, duration=516666.934s, table=38, n\_packets=17, n\_bytes=4566, priority=100,reg15=0x2,metadata=0x2 actions=load:0xa-&gt;NXM\_NX\_REG11\[\],load:0x5-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x848b5a20, duration=516666.934s, table=38, n\_packets=501163, n\_bytes=49213271, priority=100,reg15=0x2,metadata=0x5 actions=load:0xb-&gt;NXM\_NX\_REG13\[\],load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xf7794a0b, duration=516666.920s, table=38, n\_packets=110, n\_bytes=91246, priority=100,reg15=0x1,metadata=0x7 actions=load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.920s, table=38, n\_packets=91, n\_bytes=93316, priority=100,reg15=0x2,metadata=0x6 actions=load:0xc-&gt;NXM\_NX\_REG11\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xa771085, duration=516666.920s, table=38, n\_packets=902, n\_bytes=63028, priority=100,reg15=0x8000,metadata=0x7 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x1-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xc4b6cbe0, duration=516666.911s, table=38, n\_packets=90, n\_bytes=93230, priority=100,reg15=0x8001,metadata=0x7 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8001-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x2,metadata=0x7 actions=load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0x47f6a653, duration=516666.911s, table=38, n\_packets=10, n\_bytes=464, priority=100,reg15=0x8005,metadata=0x7 actions=load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8005-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=38, n\_packets=617960, n\_bytes=54939494, priority=100,reg15=0x3,metadata=0x5 actions=load:0x6-&gt;NXM\_NX\_REG13\[\],load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],resubmit(,39)</span><br><span class="line"></span><br><span class="line"> cookie=0xff0e0093, duration=516539.196s, table=38, n\_packets=145, n\_bytes=10150, priority=100,reg15=0x8000,metadata=0x5 actions=load:0xb-&gt;NXM\_NX\_REG13\[\],load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x6-&gt;NXM\_NX\_REG13\[\],load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8000-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x4aca2dd3, duration=516539.196s, table=38, n\_packets=0, n\_bytes=0, priority=100,reg15=0x8005,metadata=0x5 actions=load:0xb-&gt;NXM\_NX\_REG13\[\],load:0x2-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x6-&gt;NXM\_NX\_REG13\[\],load:0x3-&gt;NXM\_NX\_REG15\[\],resubmit(,39),load:0x8005-&gt;NXM\_NX\_REG15\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=39, n\_packets=0, n\_bytes=0, priority=160,reg10=0x400/0x400,reg15=0x2,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=39, n\_packets=0, n\_bytes=0, priority=160,reg10=0x10/0x10,reg15=0x2,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x796c3583, duration=516666.957s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x4,reg15=0x4,metadata=0x1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x156bb221, duration=516666.957s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfa0378d7, duration=516666.957s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x68b5734b, duration=516666.955s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xdbac9e8c, duration=516666.955s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x2,reg15=0x2,metadata=0x1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xeb13f530, duration=516666.955s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xb59d3fb0, duration=516666.955s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x3,reg15=0x3,metadata=0x1 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x848b5a20, duration=516666.934s, table=39, n\_packets=154, n\_bytes=10856, priority=100,reg10=0/0x1,reg14=0x2,reg15=0x2,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xa36892e9, duration=516666.934s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x2,reg15=0x2,metadata=0x2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x6d3b0d82, duration=516666.934s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x6 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xf7794a0b, duration=516666.920s, table=39, n\_packets=6, n\_bytes=296, priority=100,reg10=0/0x1,reg14=0x1,reg15=0x1,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.920s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x2,reg15=0x2,metadata=0x6 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=39, n\_packets=907, n\_bytes=63282, priority=100,reg10=0/0x1,reg14=0x2,reg15=0x2,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=39, n\_packets=0, n\_bytes=0, priority=100,reg10=0/0x1,reg14=0x3,reg15=0x3,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516667.214s, table=39, n\_packets=1212445, n\_bytes=112898183, priority=0 actions=load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,40)</span><br><span class="line"></span><br><span class="line"> cookie=0x22592598, duration=516666.976s, table=40, n\_packets=45811, n\_bytes=4175155, priority=110,ip,reg15=0x1,metadata=0x5 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x22592598, duration=516666.976s, table=40, n\_packets=154, n\_bytes=10856, priority=110,ipv6,reg15=0x1,metadata=0x5 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x28dfa24f, duration=516666.962s, table=40, n\_packets=0, n\_bytes=0, priority=110,ip,reg15=0x1,metadata=0x3 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x28dfa24f, duration=516666.962s, table=40, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x1,metadata=0x3 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x214058df, duration=516666.958s, table=40, n\_packets=24, n\_bytes=1916, priority=110,ip,reg15=0x1,metadata=0x2 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x214058df, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x1,metadata=0x2 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x257b2456, duration=516666.934s, table=40, n\_packets=16, n\_bytes=4524, priority=110,ip,reg15=0x2,metadata=0x2 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x257b2456, duration=516666.934s, table=40, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x2,metadata=0x2 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xa436525, duration=516666.923s, table=40, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x2,metadata=0x7 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f9597a0, duration=516666.922s, table=40, n\_packets=99, n\_bytes=90696, priority=110,ip,reg15=0x1,metadata=0x7 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x8f9597a0, duration=516666.922s, table=40, n\_packets=890, n\_bytes=62568, priority=110,ipv6,reg15=0x1,metadata=0x7 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xa436525, duration=516666.921s, table=40, n\_packets=90, n\_bytes=93230, priority=110,ip,reg15=0x2,metadata=0x7 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.923s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.921s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.921s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=151, n\_bytes=10570, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.923s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.923s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.921s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.921s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x2,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x7c953716, duration=516666.922s, table=40, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x7,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xd7ef2420, duration=516666.963s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xd7ef2420, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xd7ef2420, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xd7ef2420, duration=516666.921s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x7,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdfc9ea6, duration=516666.962s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdfc9ea6, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdfc9ea6, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xfdfc9ea6, duration=516666.922s, table=40, n\_packets=18, n\_bytes=756, priority=110,metadata=0x7,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x4687fa4d, duration=516666.976s, table=40, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x4687fa4d, duration=516666.976s, table=40, n\_packets=1111899, n\_bytes=103868079, priority=100,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x4687fa4d, duration=516666.962s, table=40, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x4687fa4d, duration=516666.962s, table=40, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[98\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x90e1392d, duration=516666.963s, table=40, n\_packets=7360, n\_bytes=309120, priority=0,metadata=0x5 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x90e1392d, duration=516666.958s, table=40, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x90e1392d, duration=516666.958s, table=40, n\_packets=1, n\_bytes=42, priority=0,metadata=0x2 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ade42a4, duration=516666.936s, table=40, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=load:0-&gt;OXM\_OF\_PKT\_REG4\[4\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ade42a4, duration=516666.934s, table=40, n\_packets=117, n\_bytes=95348, priority=0,metadata=0x6 actions=load:0-&gt;OXM\_OF\_PKT\_REG4\[4\],resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0x90e1392d, duration=516666.923s, table=40, n\_packets=4, n\_bytes=168, priority=0,metadata=0x7 actions=resubmit(,41)</span><br><span class="line"></span><br><span class="line"> cookie=0xcaa81023, duration=516666.963s, table=41, n\_packets=0, n\_bytes=0, priority=110,metadata=0x5,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xcaa81023, duration=516666.958s, table=41, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xcaa81023, duration=516666.958s, table=41, n\_packets=0, n\_bytes=0, priority=110,metadata=0x2,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xcaa81023, duration=516666.922s, table=41, n\_packets=0, n\_bytes=0, priority=110,metadata=0x7,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,udp,metadata=0x5,tp\_src=546,tp\_dst=547 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,udp6,metadata=0x5,tp\_src=546,tp\_dst=547 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,udp,metadata=0x3,tp\_src=546,tp\_dst=547 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,udp6,metadata=0x3,tp\_src=546,tp\_dst=547 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x12de1ca2, duration=516665.574s, table=41, n\_packets=303, n\_bytes=21250, priority=110,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x12de1ca2, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xd8ab4f97, duration=516666.934s, table=41, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x1,metadata=0x5 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xd8ab4f97, duration=516666.934s, table=41, n\_packets=45811, n\_bytes=4175155, priority=110,ip,reg15=0x1,metadata=0x5 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xb50f88da, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,ip,reg15=0x1,metadata=0x3 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0xb50f88da, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg15=0x1,metadata=0x3 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9c65cc7a, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=110,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x41367521, duration=516665.574s, table=41, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x41367521, duration=516665.574s, table=41, n\_packets=1111899, n\_bytes=103868079, priority=100,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x182a87b3, duration=516665.566s, table=41, n\_packets=0, n\_bytes=0, priority=50,ipv6,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[0\],ct(table=42,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x182a87b3, duration=516665.566s, table=41, n\_packets=115, n\_bytes=95220, priority=50,ip,metadata=0x6 actions=load:0x1-&gt;NXM\_NX\_REG10\[0\],ct(table=42,zone=NXM\_NX\_REG11\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x41367521, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=100,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x41367521, duration=516665.462s, table=41, n\_packets=0, n\_bytes=0, priority=100,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[96\],resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9377a7e3, duration=516666.963s, table=41, n\_packets=7360, n\_bytes=309120, priority=0,metadata=0x5 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9377a7e3, duration=516666.958s, table=41, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9377a7e3, duration=516666.958s, table=41, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x69b1f871, duration=516666.937s, table=41, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x69b1f871, duration=516666.934s, table=41, n\_packets=1, n\_bytes=42, priority=0,metadata=0x6 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x9377a7e3, duration=516666.922s, table=41, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,42)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.966s, table=42, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x5 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.966s, table=42, n\_packets=1111899, n\_bytes=103868079, priority=110,ip,reg0=0x4/0x4,metadata=0x5 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.960s, table=42, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x3 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.960s, table=42, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x3 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.958s, table=42, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x2 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.958s, table=42, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x2 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.922s, table=42, n\_packets=0, n\_bytes=0, priority=110,ipv6,reg0=0x4/0x4,metadata=0x7 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x2d47d424, duration=516666.921s, table=42, n\_packets=0, n\_bytes=0, priority=110,ip,reg0=0x4/0x4,metadata=0x7 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\],nat)</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.966s, table=42, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x5 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.966s, table=42, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x5 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.960s, table=42, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x3 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.960s, table=42, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x3 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.958s, table=42, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x2 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.958s, table=42, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x2 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.923s, table=42, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x1/0x1,metadata=0x7 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3593c112, duration=516666.921s, table=42, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x1/0x1,metadata=0x7 actions=ct(table=43,zone=NXM\_NX\_REG13\[0..15\])</span><br><span class="line"></span><br><span class="line"> cookie=0x1af813d1, duration=516665.566s, table=42, n\_packets=0, n\_bytes=0, priority=50,ct\_state=+new+trk,ipv6,metadata=0x6 actions=ct(commit,zone=NXM\_NX\_REG11\[0..15\],nat(src)),resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x1af813d1, duration=516665.566s, table=42, n\_packets=5, n\_bytes=370, priority=50,ct\_state=+new+trk,ip,metadata=0x6 actions=ct(commit,zone=NXM\_NX\_REG11\[0..15\],nat(src)),resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b45d3c1, duration=516666.966s, table=42, n\_packets=53476, n\_bytes=4505701, priority=0,metadata=0x5 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b45d3c1, duration=516666.960s, table=42, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b45d3c1, duration=516666.958s, table=42, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x51502c8c, duration=516666.937s, table=42, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x51502c8c, duration=516666.934s, table=42, n\_packets=111, n\_bytes=94904, priority=0,metadata=0x6 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x1b45d3c1, duration=516666.921s, table=42, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,43)</span><br><span class="line"></span><br><span class="line"> cookie=0x64d06070, duration=516666.976s, table=43, n\_packets=0, n\_bytes=0, priority=0,metadata=0x5 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x64d06070, duration=516666.962s, table=43, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xc69b5d42, duration=516666.936s, table=43, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xc69b5d42, duration=516666.934s, table=43, n\_packets=55, n\_bytes=86921, priority=0,metadata=0x6 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x4ae3cec8, duration=516666.923s, table=43, n\_packets=41, n\_bytes=6482, priority=65535,metadata=0x2 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x4ae3cec8, duration=516666.922s, table=43, n\_packets=1101, n\_bytes=247418, priority=65535,metadata=0x7 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x89e228d5, duration=516666.936s, table=43, n\_packets=0, n\_bytes=0, priority=120,icmp6,metadata=0x1,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x89e228d5, duration=516666.934s, table=43, n\_packets=0, n\_bytes=0, priority=120,icmp6,metadata=0x6,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x1cae8cb1, duration=516666.934s, table=43, n\_packets=24, n\_bytes=1916, priority=110,ip,reg10=0x8/0x8,reg15=0x1,metadata=0x6 actions=ct(commit,table=44,zone=NXM\_NX\_REG12\[0..15\],nat(src=100.64.0.2))</span><br><span class="line"></span><br><span class="line"> cookie=0x669f7f95, duration=516666.922s, table=43, n\_packets=37, n\_bytes=6437, priority=110,ip,reg10=0x8/0x8,reg15=0x2,metadata=0x6 actions=ct(commit,table=44,zone=NXM\_NX\_REG12\[0..15\],nat(src=192.168.200.10))</span><br><span class="line"></span><br><span class="line"> cookie=0x663cd1c9, duration=516666.923s, table=43, n\_packets=0, n\_bytes=0, priority=17,ct\_state=-trk,ip,metadata=0x6,nw\_src=10.123.0.0/16 actions=ct(commit,table=44,zone=NXM\_NX\_REG12\[0..15\],nat(src=192.168.200.10))</span><br><span class="line"></span><br><span class="line"> cookie=0x663cd1c9, duration=516666.922s, table=43, n\_packets=0, n\_bytes=0, priority=17,ct\_state=-rpl+trk,ip,metadata=0x6,nw\_src=10.123.0.0/16 actions=ct(commit,table=44,zone=NXM\_NX\_REG12\[0..15\],nat(src=192.168.200.10))</span><br><span class="line"></span><br><span class="line"> cookie=0xcbf809a6, duration=516666.976s, table=43, n\_packets=103350, n\_bytes=7647972, priority=7,ct\_state=+new-est+trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xcbf809a6, duration=516666.961s, table=43, n\_packets=0, n\_bytes=0, priority=7,ct\_state=+new-est+trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x5e5921c9, duration=516666.976s, table=43, n\_packets=0, n\_bytes=0, priority=6,ct\_state=-new+est-rpl+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xd5f32575, duration=516666.976s, table=43, n\_packets=567999, n\_bytes=50900456, priority=4,ct\_state=-new+est-rpl+trk,ct\_mark=0/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x5e5921c9, duration=516666.962s, table=43, n\_packets=0, n\_bytes=0, priority=6,ct\_state=-new+est-rpl+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[103\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xd5f32575, duration=516666.961s, table=43, n\_packets=0, n\_bytes=0, priority=4,ct\_state=-new+est-rpl+trk,ct\_mark=0/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xa940193, duration=516666.976s, table=43, n\_packets=7667, n\_bytes=330766, priority=5,ct\_state=-trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0xa940193, duration=516666.962s, table=43, n\_packets=0, n\_bytes=0, priority=5,ct\_state=-trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[104\],load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x9fdccb11, duration=516666.976s, table=43, n\_packets=0, n\_bytes=0, priority=3,ct\_state=-est+trk,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x9fdccb11, duration=516666.961s, table=43, n\_packets=0, n\_bytes=0, priority=3,ct\_state=-est+trk,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x55242f86, duration=516666.976s, table=43, n\_packets=0, n\_bytes=0, priority=2,ct\_state=+est+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x9128de9f, duration=516666.976s, table=43, n\_packets=486359, n\_bytes=49494586, priority=1,ct\_state=+est+trk,ct\_mark=0/0x1,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x55242f86, duration=516666.962s, table=43, n\_packets=0, n\_bytes=0, priority=2,ct\_state=+est+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[105\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x9128de9f, duration=516666.961s, table=43, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0/0x1,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[106\],resubmit(,44)</span><br><span class="line"></span><br><span class="line"> cookie=0x15b75145, duration=516666.976s, table=44, n\_packets=98976, n\_bytes=8658914, priority=0,metadata=0x5 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x15b75145, duration=516666.962s, table=44, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x1c692fb0, duration=516666.937s, table=44, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x1c692fb0, duration=516666.934s, table=44, n\_packets=116, n\_bytes=95274, priority=0,metadata=0x6 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x30f48146, duration=516666.923s, table=44, n\_packets=41, n\_bytes=6482, priority=65535,metadata=0x2 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x30f48146, duration=516666.922s, table=44, n\_packets=1101, n\_bytes=247418, priority=65535,metadata=0x7 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x97848851, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+est+rpl+trk,ct\_mark=0x1/0x1,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x97848851, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+est+rpl+trk,ct\_mark=0x1/0x1,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x97848851, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+inv+trk,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x97848851, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=+inv+trk,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0xd36fbcd4, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new-est+rel-inv+trk,ct\_mark=0/0x1,metadata=0x5 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xd36fbcd4, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new-est+rel-inv+trk,ct\_mark=0/0x1,metadata=0x3 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xeab120f2, duration=516666.967s, table=44, n\_packets=486359, n\_bytes=49494586, priority=65532,ct\_state=-new+est-rel+rpl-inv+trk,ct\_mark=0/0x1,metadata=0x5 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xeab120f2, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,ct\_state=-new+est-rel+rpl-inv+trk,ct\_mark=0/0x1,metadata=0x3 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.967s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.967s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.967s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=132 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=130 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_src=fe80::/10,icmp\_type=131 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.967s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.967s, table=44, n\_packets=1, n\_bytes=86, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.966s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.966s, table=44, n\_packets=301, n\_bytes=21070, priority=65532,icmp6,metadata=0x5,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=136,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=135,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=134,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,nw\_ttl=255,icmp\_type=133,icmp\_code=0 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.966s, table=44, n\_packets=3, n\_bytes=270, priority=65532,icmp6,metadata=0x5,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xfb78b303, duration=516666.960s, table=44, n\_packets=0, n\_bytes=0, priority=65532,icmp6,metadata=0x3,ipv6\_dst=ff02::16,icmp\_type=143 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xb043b08, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=34000,metadata=0x5,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xb043b08, duration=516666.962s, table=44, n\_packets=0, n\_bytes=0, priority=34000,metadata=0x3,dl\_src=0e:b9:fd:4b:22:ab actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x9fe0d8e2, duration=516666.935s, table=44, n\_packets=476385, n\_bytes=42550882, priority=2001,ip,reg0=0x100/0x100,metadata=0x5,nw\_src=10.123.2.2 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xf929a988, duration=516665.462s, table=44, n\_packets=0, n\_bytes=0, priority=2001,ip,reg0=0x100/0x100,metadata=0x3,nw\_src=10.123.1.2 actions=resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x4ba42f13, duration=516666.934s, table=44, n\_packets=103344, n\_bytes=7647456, priority=2001,ip,reg0=0x80/0x80,metadata=0x5,nw\_src=10.123.2.2 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xb363ac7e, duration=516665.462s, table=44, n\_packets=0, n\_bytes=0, priority=2001,ip,reg0=0x80/0x80,metadata=0x3,nw\_src=10.123.1.2 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x663c29cf, duration=516666.976s, table=44, n\_packets=6, n\_bytes=516, priority=1,ct\_state=-est+trk,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x663c29cf, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x663c29cf, duration=516666.962s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x663c29cf, duration=516666.962s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=-est+trk,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xa0529773, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ip,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xa0529773, duration=516666.976s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ipv6,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xa0529773, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ip,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0xa0529773, duration=516666.961s, table=44, n\_packets=0, n\_bytes=0, priority=1,ct\_state=+est+trk,ct\_mark=0x1/0x1,ipv6,metadata=0x3 actions=load:0x1-&gt;NXM\_NX\_XXREG0\[97\],resubmit(,45)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ed01fd2, duration=516666.963s, table=45, n\_packets=1165375, n\_bytes=108373780, priority=0,metadata=0x5 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ed01fd2, duration=516666.959s, table=45, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ed01fd2, duration=516666.958s, table=45, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x4559d9fd, duration=516666.937s, table=45, n\_packets=45811, n\_bytes=4175155, priority=0,metadata=0x1 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x4559d9fd, duration=516666.934s, table=45, n\_packets=116, n\_bytes=95274, priority=0,metadata=0x6 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x6ed01fd2, duration=516666.921s, table=45, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,46)</span><br><span class="line"></span><br><span class="line"> cookie=0x28b0b9, duration=516666.958s, table=46, n\_packets=0, n\_bytes=0, priority=100,reg15=0x2,metadata=0x1 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x6852b7d2, duration=516666.958s, table=46, n\_packets=45811, n\_bytes=4175155, priority=100,reg15=0x3,metadata=0x1 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x7473d146, duration=516666.958s, table=46, n\_packets=0, n\_bytes=0, priority=100,reg15=0x4,metadata=0x1 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0xb2c429dc, duration=516666.958s, table=46, n\_packets=0, n\_bytes=0, priority=100,reg15=0x1,metadata=0x1 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x1777ee9d, duration=516666.934s, table=46, n\_packets=25, n\_bytes=1958, priority=100,reg15=0x1,metadata=0x6 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x936d43b8, duration=516666.934s, table=46, n\_packets=91, n\_bytes=93316, priority=100,reg15=0x2,metadata=0x6 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x335f36f7, duration=516666.966s, table=46, n\_packets=1165375, n\_bytes=108373780, priority=0,metadata=0x5 actions=resubmit(,47)</span><br><span class="line"></span><br><span class="line"> cookie=0x335f36f7, duration=516666.960s, table=46, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,47)</span><br><span class="line"></span><br><span class="line"> cookie=0x335f36f7, duration=516666.958s, table=46, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,47)</span><br><span class="line"></span><br><span class="line"> cookie=0x335f36f7, duration=516666.922s, table=46, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,47)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.966s, table=47, n\_packets=103350, n\_bytes=7647972, priority=100,ip,reg0=0x2/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.966s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.965s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.965s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x5 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.960s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.960s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.960s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.960s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x3 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.958s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.958s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.958s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.958s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x2 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.922s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2002/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.922s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4b82fc79, duration=516666.921s, table=47, n\_packets=0, n\_bytes=0, priority=100,ipv6,reg0=0x2002/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\],move:NXM\_NX\_XXREG0\[0..31\]-&gt;NXM\_NX\_CT\_LABEL\[96..127\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x3304e1c8, duration=516666.920s, table=47, n\_packets=0, n\_bytes=0, priority=100,ip,reg0=0x2/0x2002,metadata=0x7 actions=ct(commit,zone=NXM\_NX\_REG13\[0..15\],nat(src),<span class="built_in">exec</span>(load:0-&gt;NXM\_NX\_CT\_MARK\[0\])),resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bdd3b6a, duration=516666.964s, table=47, n\_packets=1062025, n\_bytes=100725808, priority=0,metadata=0x5 actions=resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bdd3b6a, duration=516666.960s, table=47, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bdd3b6a, duration=516666.958s, table=47, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0x4bdd3b6a, duration=516666.923s, table=47, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,48)</span><br><span class="line"></span><br><span class="line"> cookie=0xc52e3b81, duration=516666.963s, table=48, n\_packets=305, n\_bytes=21426, priority=100,metadata=0x5,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0xc52e3b81, duration=516666.958s, table=48, n\_packets=0, n\_bytes=0, priority=100,metadata=0x3,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0xc52e3b81, duration=516666.958s, table=48, n\_packets=0, n\_bytes=0, priority=100,metadata=0x2,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0xc52e3b81, duration=516666.920s, table=48, n\_packets=908, n\_bytes=63324, priority=100,metadata=0x7,dl\_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0x4d2f1139, duration=516666.964s, table=48, n\_packets=1165070, n\_bytes=108352354, priority=0,metadata=0x5 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,75),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0x4d2f1139, duration=516666.960s, table=48, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,75),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0x4d2f1139, duration=516666.958s, table=48, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,75),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0x4d2f1139, duration=516666.922s, table=48, n\_packets=193, n\_bytes=184094, priority=0,metadata=0x7 actions=load:0-&gt;NXM\_NX\_REG10\[12\],resubmit(,75),move:NXM\_NX\_REG10\[12\]-&gt;NXM\_NX\_XXREG0\[111\],resubmit(,49)</span><br><span class="line"></span><br><span class="line"> cookie=0x9e28cf2a, duration=516666.963s, table=49, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x5 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9e28cf2a, duration=516666.958s, table=49, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x3 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9e28cf2a, duration=516666.958s, table=49, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x2 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x9e28cf2a, duration=516666.922s, table=49, n\_packets=0, n\_bytes=0, priority=50,reg0=0x8000/0x8000,metadata=0x7 actions=drop</span><br><span class="line"></span><br><span class="line"> cookie=0x7a8d9e8, duration=516666.966s, table=49, n\_packets=1165375, n\_bytes=108373780, priority=0,metadata=0x5 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x7a8d9e8, duration=516666.960s, table=49, n\_packets=0, n\_bytes=0, priority=0,metadata=0x3 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x7a8d9e8, duration=516666.958s, table=49, n\_packets=41, n\_bytes=6482, priority=0,metadata=0x2 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x7a8d9e8, duration=516666.922s, table=49, n\_packets=1101, n\_bytes=247418, priority=0,metadata=0x7 actions=resubmit(,64)</span><br><span class="line"></span><br><span class="line"> cookie=0x796c3583, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x4,metadata=0x1 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x156bb221, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x1 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xb59d3fb0, duration=516666.955s, table=64, n\_packets=45811, n\_bytes=4175155, priority=100,reg10=0x1/0x1,reg15=0x3,metadata=0x1 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xeb13f530, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x3 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfa0378d7, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x2 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x68b5734b, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x5 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xdbac9e8c, duration=516666.955s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x2,metadata=0x1 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x6d3b0d82, duration=516666.934s, table=64, n\_packets=25, n\_bytes=1958, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x6 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x848b5a20, duration=516666.934s, table=64, n\_packets=2, n\_bytes=84, priority=100,reg10=0x1/0x1,reg15=0x2,metadata=0x5 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xa36892e9, duration=516666.934s, table=64, n\_packets=1, n\_bytes=42, priority=100,reg10=0x1/0x1,reg15=0x2,metadata=0x2 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xf7794a0b, duration=516666.920s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x1,metadata=0x7 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.920s, table=64, n\_packets=91, n\_bytes=93316, priority=100,reg10=0x1/0x1,reg15=0x2,metadata=0x6 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=64, n\_packets=0, n\_bytes=0, priority=100,reg10=0x1/0x1,reg15=0x2,metadata=0x7 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=64, n\_packets=7355, n\_bytes=308910, priority=100,reg10=0x1/0x1,reg15=0x3,metadata=0x5 actions=push:NXM\_OF\_IN\_PORT\[\],load:0xffff-&gt;NXM\_OF\_IN\_PORT\[\],resubmit(,65),pop:NXM\_OF\_IN\_PORT\[\]</span><br><span class="line"></span><br><span class="line"> cookie=0x0, duration=516667.214s, table=64, n\_packets=1159156, n\_bytes=108318518, priority=0 actions=resubmit(,65)</span><br><span class="line"></span><br><span class="line"> cookie=0x156bb221, duration=516666.957s, table=65, n\_packets=0, n\_bytes=0, priority=100,reg15=0x1,metadata=0x1 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0xa-&gt;NXM\_NX\_REG11\[\],load:0x5-&gt;NXM\_NX\_REG12\[\],load:0x2-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xdbac9e8c, duration=516666.957s, table=65, n\_packets=0, n\_bytes=0, priority=100,reg15=0x2,metadata=0x1 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x1-&gt;NXM\_NX\_REG11\[\],load:0x3-&gt;NXM\_NX\_REG12\[\],load:0x3-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xfa0378d7, duration=516666.955s, table=65, n\_packets=24, n\_bytes=1916, priority=100,reg15=0x1,metadata=0x2 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],load:0x1-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xb59d3fb0, duration=516666.955s, table=65, n\_packets=45811, n\_bytes=4175155, priority=100,reg15=0x3,metadata=0x1 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x8-&gt;NXM\_NX\_REG11\[\],load:0x2-&gt;NXM\_NX\_REG12\[\],load:0x5-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xeb13f530, duration=516666.955s, table=65, n\_packets=0, n\_bytes=0, priority=100,reg15=0x1,metadata=0x3 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],load:0x1-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0x68b5734b, duration=516666.955s, table=65, n\_packets=45965, n\_bytes=4186011, priority=100,reg15=0x1,metadata=0x5 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x4-&gt;NXM\_NX\_REG11\[\],load:0x9-&gt;NXM\_NX\_REG12\[\],load:0x1-&gt;OXM\_OF\_METADATA\[\],load:0x3-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xa36892e9, duration=516666.934s, table=65, n\_packets=17, n\_bytes=4566, priority=100,reg15=0x2,metadata=0x2 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0xc-&gt;NXM\_NX\_REG11\[\],load:0x6-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0x848b5a20, duration=516666.934s, table=65, n\_packets=501163, n\_bytes=49213271, priority=100,reg15=0x2,metadata=0x5 actions=output:<span class="string">&quot;ovn-k8s-mp0&quot;</span></span><br><span class="line"></span><br><span class="line"> cookie=0x6d3b0d82, duration=516666.934s, table=65, n\_packets=25, n\_bytes=1958, priority=100,reg15=0x1,metadata=0x6 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0xa-&gt;NXM\_NX\_REG11\[\],load:0x5-&gt;NXM\_NX\_REG12\[\],load:0x2-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0x83df61eb, duration=516666.920s, table=65, n\_packets=91, n\_bytes=93316, priority=100,reg15=0x2,metadata=0x6 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0xd-&gt;NXM\_NX\_REG11\[\],load:0xe-&gt;NXM\_NX\_REG12\[\],load:0x7-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xf7794a0b, duration=516666.920s, table=65, n\_packets=1006, n\_bytes=153978, priority=100,reg15=0x1,metadata=0x7 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0xc-&gt;NXM\_NX\_REG11\[\],load:0x6-&gt;OXM\_OF\_METADATA\[\],load:0x2-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xc0ac4f38, duration=516666.911s, table=65, n\_packets=95, n\_bytes=93440, priority=100,reg15=0x2,metadata=0x7 actions=output:<span class="string">&quot;patch-br-int-to&quot;</span></span><br><span class="line"></span><br><span class="line"> cookie=0x796c3583, duration=516666.955s, table=65, n\_packets=0, n\_bytes=0, priority=100,reg15=0x4,metadata=0x1 actions=<span class="built_in">clone</span>(ct\_clear,load:0-&gt;NXM\_NX\_REG11\[\],load:0-&gt;NXM\_NX\_REG12\[\],load:0-&gt;NXM\_NX\_REG13\[\],load:0x4-&gt;OXM\_OF\_METADATA\[\],load:0x1-&gt;NXM\_NX\_REG14\[\],load:0-&gt;NXM\_NX\_REG10\[\],load:0-&gt;NXM\_NX\_REG15\[\],load:0-&gt;NXM\_NX\_REG0\[\],load:0-&gt;NXM\_NX\_REG1\[\],load:0-&gt;NXM\_NX\_REG2\[\],load:0-&gt;NXM\_NX\_REG3\[\],load:0-&gt;NXM\_NX\_REG4\[\],load:0-&gt;NXM\_NX\_REG5\[\],load:0-&gt;NXM\_NX\_REG6\[\],load:0-&gt;NXM\_NX\_REG7\[\],load:0-&gt;NXM\_NX\_REG8\[\],load:0-&gt;NXM\_NX\_REG9\[\],resubmit(,8))</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=65, n\_packets=618108, n\_bytes=54949854, priority=100,reg15=0x3,metadata=0x5 actions=output:<span class="string">&quot;2328014c696cfb7&quot;</span></span><br><span class="line"></span><br><span class="line"> cookie=0x3c0edb62, duration=507402.208s, table=66, n\_packets=90, n\_bytes=93230, priority=100,reg0=0xc0a8c801,reg15=0x2,metadata=0x6 actions=mod\_dl\_dst:52:54:00:d0:14:23,load:0x1-&gt;NXM\_NX\_REG10\[6\]</span><br><span class="line"></span><br><span class="line"> cookie=0xe25fac7c, duration=507402.207s, table=66, n\_packets=24, n\_bytes=1916, priority=100,reg0=0x64400001,reg15=0x1,metadata=0x6 actions=mod\_dl\_dst:0a:58:64:40:00:01,load:0x1-&gt;NXM\_NX\_REG10\[6\]</span><br><span class="line"></span><br><span class="line"> cookie=0x3c0edb62, duration=507402.208s, table=67, n\_packets=3, n\_bytes=126, priority=100,arp,reg0=0xc0a8c801,reg14=0x2,metadata=0x6,dl\_src=52:54:00:d0:14:23 actions=load:0x1-&gt;NXM\_NX\_REG10\[6\]</span><br><span class="line"></span><br><span class="line"> cookie=0xe25fac7c, duration=507402.207s, table=67, n\_packets=0, n\_bytes=0, priority=100,arp,reg0=0x64400001,reg14=0x1,metadata=0x6,dl\_src=0a:58:64:40:00:01 actions=load:0x1-&gt;NXM\_NX\_REG10\[6\]</span><br><span class="line"></span><br><span class="line"> cookie=0xd7be12d7, duration=516666.923s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,tcp,reg1=0xa560001,reg2=0x1bb/0xffff,nw\_src=192.168.122.10,nw\_dst=192.168.122.10,tp\_dst=6443 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0xd7be12d7,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.0.1,nw\_proto=6,NXM\_OF\_TCP\_SRC\[\]=NXM\_OF\_TCP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0x6f0291d, duration=516654.471s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,tcp,reg1=0xa56000a,reg2=0x35/0xffff,nw\_src=10.123.2.3,nw\_dst=10.123.2.3,tp\_dst=53 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0x6f0291d,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.0.10,nw\_proto=6,NXM\_OF\_TCP\_SRC\[\]=NXM\_OF\_TCP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0x6f0291d, duration=516654.471s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,tcp,reg1=0xa56000a,reg2=0x23c1/0xffff,nw\_src=10.123.2.3,nw\_dst=10.123.2.3,tp\_dst=9153 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0x6f0291d,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.0.10,nw\_proto=6,NXM\_OF\_TCP\_SRC\[\]=NXM\_OF\_TCP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0x8b37e95, duration=516654.471s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,udp,reg1=0xa56000a,reg2=0x35/0xffff,nw\_src=10.123.2.3,nw\_dst=10.123.2.3,tp\_dst=53 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0x8b37e95,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.0.10,nw\_proto=17,NXM\_OF\_UDP\_SRC\[\]=NXM\_OF\_UDP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0xb135b18a, duration=516460.635s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,tcp,reg1=0xa5604f9,reg2=0x50/0xffff,nw\_src=10.123.0.3,nw\_dst=10.123.0.3,tp\_dst=80 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0xb135b18a,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.4.249,nw\_proto=6,NXM\_OF\_TCP\_SRC\[\]=NXM\_OF\_TCP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0x3315155a, duration=516439.270s, table=68, n\_packets=0, n\_bytes=0, priority=100,ct\_mark=0x2/0x2,tcp,reg1=0xa56f802,reg2=0x50/0xffff,nw\_src=10.123.1.3,nw\_dst=10.123.1.3,tp\_dst=80 actions=load:0x1-&gt;NXM\_NX\_REG10\[7\],learn(table=69,delete\_learned,cookie=0x3315155a,OXM\_OF\_METADATA\[\],eth\_type=0x800,NXM\_OF\_IP\_SRC\[\],ip\_dst=10.86.248.2,nw\_proto=6,NXM\_OF\_TCP\_SRC\[\]=NXM\_OF\_TCP\_DST\[\],load:0x1-&gt;NXM\_NX\_REG10\[7\])</span><br><span class="line"></span><br><span class="line"> cookie=0x8b37e95, duration=516666.977s, table=70, n\_packets=0, n\_bytes=0, priority=100,udp,reg1=0xa56000a,reg2=0x35/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.0.10))</span><br><span class="line"></span><br><span class="line"> cookie=0x6f0291d, duration=516666.977s, table=70, n\_packets=0, n\_bytes=0, priority=100,tcp,reg1=0xa56000a,reg2=0x35/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.0.10))</span><br><span class="line"></span><br><span class="line"> cookie=0x6f0291d, duration=516666.977s, table=70, n\_packets=0, n\_bytes=0, priority=100,tcp,reg1=0xa56000a,reg2=0x23c1/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.0.10))</span><br><span class="line"></span><br><span class="line"> cookie=0xd7be12d7, duration=516666.923s, table=70, n\_packets=0, n\_bytes=0, priority=100,tcp,reg1=0xa560001,reg2=0x1bb/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.0.1))</span><br><span class="line"></span><br><span class="line"> cookie=0xb135b18a, duration=516462.831s, table=70, n\_packets=0, n\_bytes=0, priority=100,tcp,reg1=0xa5604f9,reg2=0x50/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.4.249))</span><br><span class="line"></span><br><span class="line"> cookie=0x3315155a, duration=516442.476s, table=70, n\_packets=0, n\_bytes=0, priority=100,tcp,reg1=0xa56f802,reg2=0x50/0xffff actions=ct(commit,zone=NXM\_NX\_REG12\[0..15\],nat(src=10.86.248.2))</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=73, n\_packets=7355, n\_bytes=308910, priority=95,arp,reg14=0x3,metadata=0x5 actions=resubmit(,74)</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=73, n\_packets=501048, n\_bytes=49200691, priority=90,ip,reg14=0x3,metadata=0x5,dl\_src=0a:58:0a:7b:02:03,nw\_src=10.123.2.3 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=73, n\_packets=0, n\_bytes=0, priority=90,udp,reg14=0x3,metadata=0x5,dl\_src=0a:58:0a:7b:02:03,nw\_src=0.0.0.0,nw\_dst=255.255.255.255,tp\_src=68,tp\_dst=67 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=73, n\_packets=154, n\_bytes=10856, priority=80,reg14=0x3,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=7355, n\_bytes=308910, priority=90,arp,reg14=0x3,metadata=0x5,dl\_src=0a:58:0a:7b:02:03,arp\_spa=10.123.2.3,arp\_sha=0a:58:0a:7b:02:03 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=225,icmp\_type=135,icmp\_code=0,nd\_sll=00:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=225,icmp\_type=135,icmp\_code=0,nd\_sll=0a:58:0a:7b:02:03 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=225,icmp\_type=136,icmp\_code=0,nd\_tll=00:00:00:00:00:00 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=90,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=225,icmp\_type=136,icmp\_code=0,nd\_tll=0a:58:0a:7b:02:03 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=80,arp,reg14=0x3,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=255,icmp\_type=136 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=74, n\_packets=0, n\_bytes=0, priority=80,icmp6,reg14=0x3,metadata=0x5,nw\_ttl=255,icmp\_type=135 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=610605, n\_bytes=54630584, priority=95,ip,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03,nw\_dst=10.123.2.3 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=0, n\_bytes=0, priority=95,ip,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03,nw\_dst=255.255.255.255 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=0, n\_bytes=0, priority=95,ip,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03,nw\_dst=224.0.0.0/4 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=0, n\_bytes=0, priority=90,ip,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=0, n\_bytes=0, priority=90,ipv6,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=7355, n\_bytes=308910, priority=85,reg15=0x3,metadata=0x5,dl\_dst=0a:58:0a:7b:02:03 actions=load:0-&gt;NXM\_NX\_REG10\[12\]</span><br><span class="line"></span><br><span class="line"> cookie=0xfc497f61, duration=516657.435s, table=75, n\_packets=0, n\_bytes=0, priority=80,reg15=0x3,metadata=0x5 actions=load:0x1-&gt;NXM\_NX\_REG10\[12\]</span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;h3 id=&quot;OSI模型第二层【数据链路层】&quot;&gt;&lt;a href=&quot;#OSI模型第二层【数据链路层】&quot; class=&quot;headerlink&quot; title=&quot;OSI模型第二层【数据链路层】&quot;&gt;&lt;/a&gt;OSI模型第二层【数据链路层】&lt;/h3&gt;&lt;p&gt;&lt;em&gt;dl&lt;/em&gt; &lt;em&gt;即是&lt;/em&gt; &lt;em&gt;data link&lt;/em&gt; &lt;em&gt;的缩写。&lt;/em&gt;&lt;/p&gt;
&lt;h4 id=&quot;dl-type-ethertype&quot;&gt;&lt;a href=&quot;#dl-type-ethertype&quot; class=&quot;headerlink&quot; title=&quot;dl_type&amp;#x3D;ethertype&quot;&gt;&lt;/a&gt;dl_type&amp;#x3D;ethertype&lt;/h4&gt;&lt;p&gt;匹配以太网协议类型以太类型，以10到65535之间的整数（包括0和65535）指定，以十进制或以0x前缀的十六进制数表示，示例如下。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;dl_type&amp;#x3D;0x0800 匹配IPv4数据包，等同于dl_type&amp;#x3D;ip 。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;dl_type&amp;#x3D;0x086dd 匹配IPv6数据包，等同于dl_type&amp;#x3D;ipv6 。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;dl_type&amp;#x3D;0x0806 匹配ARP数据包，等同于dl_type&amp;#x3D;arp 。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;dl_type&amp;#x3D;0x8035 匹配RARP数据包，等同于 dl_type&amp;#x3D;rarp。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>kubeadm 安装v1.24.x版本k8s</title>
    <link href="https://www.flftuu.com/2023/02/03/kubeadm-%E5%AE%89%E8%A3%85v1-24-x%E7%89%88%E6%9C%ACk8s/"/>
    <id>https://www.flftuu.com/2023/02/03/kubeadm-%E5%AE%89%E8%A3%85v1-24-x%E7%89%88%E6%9C%ACk8s/</id>
    <published>2023-02-03T06:53:00.000Z</published>
    <updated>2023-11-07T09:47:33.534Z</updated>
    
    <content type="html"><![CDATA[<h3 id="ubuntu安装containerd"><a href="#ubuntu安装containerd" class="headerlink" title="ubuntu安装containerd"></a>ubuntu安装containerd</h3><p>以下以Ubuntu为例<br>说明：安装containerd与安装docker流程基本一致，差别在于不需要安装docker-ce</p><blockquote><ol><li>containerd: apt-get install -y containerd.io</li><li>docker: apt-get install docker-ce docker-ce-cli containerd.io</li></ol></blockquote><span id="more"></span><p><em><strong>卸载旧版本</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get remove docker docker-engine docker.io containerd runc</span><br><span class="line">sudo <span class="built_in">rm</span> -rf /var/lib/docker</span><br><span class="line">sudo <span class="built_in">rm</span> -rf /var/lib/containerd</span><br></pre></td></tr></table></figure><p><em><strong>准备包环境</strong></em><br>更新apt，允许使用https</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get update</span><br><span class="line">sudo apt-get install \</span><br><span class="line">    ca-certificates \</span><br><span class="line">    curl \</span><br><span class="line">    gnupg \</span><br><span class="line">    lsb-release</span><br></pre></td></tr></table></figure><p>添加docker官方GPG key</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo <span class="built_in">mkdir</span> -p /etc/apt/keyrings</span><br><span class="line">curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg</span><br></pre></td></tr></table></figure><p>设置软件仓库源</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">echo</span> \</span><br><span class="line">  <span class="string">&quot;deb [arch=<span class="subst">$(dpkg --print-architecture)</span> signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \</span></span><br><span class="line"><span class="string">  <span class="subst">$(lsb_release -cs)</span> stable&quot;</span> | sudo <span class="built_in">tee</span> /etc/apt/sources.list.d/docker.list &gt; /dev/null</span><br></pre></td></tr></table></figure><p><em><strong>安装containerd</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 安装containerd</span></span><br><span class="line">sudo apt-get update</span><br><span class="line">sudo apt-get install -y containerd.io</span><br><span class="line"></span><br><span class="line"><span class="comment"># 如果是安装docker则执行：</span></span><br><span class="line"><span class="comment">#sudo apt-get install docker-ce docker-ce-cli containerd.io</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 查看运行状态</span></span><br><span class="line">systemctl <span class="built_in">enable</span> containerd</span><br><span class="line">systemctl status containerd</span><br></pre></td></tr></table></figure><p>或者安装指定版本</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 查看版本</span></span><br><span class="line">apt-cache madison containerd</span><br><span class="line"></span><br><span class="line"><span class="comment"># 指定版本</span></span><br><span class="line">sudo apt-get install containerd=&lt;VERSION&gt;</span><br></pre></td></tr></table></figure><p><em><strong>修改配置</strong></em><br>在 Linux 上，containerd 的默认 CRI 套接字是 &#x2F;run&#x2F;containerd&#x2F;containerd.sock</p><p>生成默认配置</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">containerd config default &gt; /etc/containerd/config.toml</span><br></pre></td></tr></table></figure><p>修改CgroupDriver为systemd<br>k8s官方推荐使用systemd类型的CgroupDriver</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">[plugins.<span class="string">&quot;io.containerd.grpc.v1.cri&quot;</span>.containerd.runtimes.runc]</span><br><span class="line">  ...</span><br><span class="line">  [plugins.<span class="string">&quot;io.containerd.grpc.v1.cri&quot;</span>.containerd.runtimes.runc.options]</span><br><span class="line">    SystemdCgroup = <span class="literal">true</span></span><br></pre></td></tr></table></figure><p>重启containerd</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">systemctl restart containerd</span><br></pre></td></tr></table></figure><h3 id="离线二进制安装containerd"><a href="#离线二进制安装containerd" class="headerlink" title="离线二进制安装containerd"></a>离线二进制安装containerd</h3><p>把containerd、runc、cni-plugins、nerdctl二进制下载到本地，再上传到对应服务器，解压文件到对应目录，修改containerd配置文件，启动containerd。</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"><span class="built_in">set</span> -e</span><br><span class="line"></span><br><span class="line">ContainerdVersion=<span class="variable">$1</span></span><br><span class="line">ContainerdVersion=<span class="variable">$&#123;ContainerdVersion:-1.6.6&#125;</span></span><br><span class="line"></span><br><span class="line">RuncVersion=<span class="variable">$2</span></span><br><span class="line">RuncVersion=<span class="variable">$&#123;RuncVersion:-1.1.3&#125;</span></span><br><span class="line"></span><br><span class="line">CniVersion=<span class="variable">$3</span></span><br><span class="line">CniVersion=<span class="variable">$&#123;CniVersion:-1.1.1&#125;</span></span><br><span class="line"></span><br><span class="line">NerdctlVersion=<span class="variable">$4</span></span><br><span class="line">NerdctlVersion=<span class="variable">$&#123;NerdctlVersion:-0.21.0&#125;</span></span><br><span class="line"></span><br><span class="line">CrictlVersion=<span class="variable">$5</span></span><br><span class="line">CrictlVersion=<span class="variable">$&#123;CrictlVersion:-1.24.2&#125;</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install containerd--------------&quot;</span></span><br><span class="line">wget https://github.com/containerd/containerd/releases/download/v<span class="variable">$&#123;ContainerdVersion&#125;</span>/containerd-<span class="variable">$&#123;ContainerdVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line">tar Cxzvf /usr/local containerd-<span class="variable">$&#123;ContainerdVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install containerd service--------------&quot;</span></span><br><span class="line">wget https://raw.githubusercontent.com/containerd/containerd/681aaf68b7dcbe08a51c3372cbb8f813fb4466e0/containerd.service</span><br><span class="line"><span class="built_in">mv</span> containerd.service /lib/systemd/system/</span><br><span class="line"></span><br><span class="line"><span class="built_in">mkdir</span> -p /etc/containerd/</span><br><span class="line">containerd config default &gt; /etc/containerd/config.toml</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install runc--------------&quot;</span></span><br><span class="line">wget https://github.com/opencontainers/runc/releases/download/v<span class="variable">$&#123;RuncVersion&#125;</span>/runc.amd64</span><br><span class="line"><span class="built_in">chmod</span> +x runc.amd64</span><br><span class="line"><span class="built_in">mv</span> runc.amd64 /usr/local/bin/runc</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install cni plugins--------------&quot;</span></span><br><span class="line">wget https://github.com/containernetworking/plugins/releases/download/v<span class="variable">$&#123;CniVersion&#125;</span>/cni-plugins-linux-amd64-v<span class="variable">$&#123;CniVersion&#125;</span>.tgz</span><br><span class="line"><span class="built_in">rm</span> -fr /opt/cni/bin</span><br><span class="line"><span class="built_in">mkdir</span> -p /opt/cni/bin</span><br><span class="line">tar Cxzvf /opt/cni/bin cni-plugins-linux-amd64-v<span class="variable">$&#123;CniVersion&#125;</span>.tgz</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install nerdctl--------------&quot;</span></span><br><span class="line">wget https://github.com/containerd/nerdctl/releases/download/v<span class="variable">$&#123;NerdctlVersion&#125;</span>/nerdctl-<span class="variable">$&#123;NerdctlVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line">tar Cxzvf /usr/local/bin nerdctl-<span class="variable">$&#123;NerdctlVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;--------------install crictl--------------&quot;</span></span><br><span class="line">wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v<span class="variable">$&#123;CrictlVersion&#125;</span>/crictl-v<span class="variable">$&#123;CrictlVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line">tar Cxzvf /usr/local/bin crictl-v<span class="variable">$&#123;CrictlVersion&#125;</span>-linux-amd64.tar.gz</span><br><span class="line"></span><br><span class="line"><span class="comment"># 启动containerd服务</span></span><br><span class="line">systemctl daemon-reload</span><br><span class="line">systemctl restart contaienrd</span><br></pre></td></tr></table></figure><h3 id="安装crictl"><a href="#安装crictl" class="headerlink" title="安装crictl"></a>安装crictl</h3><p>Containerd中默认带有ctr命令工具，它是一个简单的 CLI 接口，用作 containerd 本身的一些调试用途，投入生产使用时还是应该配合docker 或者 cri-containerd。</p><p>crictl是一个命令行接口，用于与CRI兼容的容器运行时。你可以使用它来检查和调试Kubernetes节点上的容器运行时和应用程序。crictl及其源代码托管在<a href="https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md">cri-tools</a>仓库中。</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">VERSION=<span class="string">&quot;v1.26.0&quot;</span></span><br><span class="line">wget https://github.com/kubernetes-sigs/cri-tools/releases/download/<span class="variable">$VERSION</span>/crictl-<span class="variable">$VERSION</span>-linux-amd64.tar.gz</span><br><span class="line">sudo tar zxvf crictl-<span class="variable">$VERSION</span>-linux-amd64.tar.gz -C /usr/local/bin</span><br><span class="line"><span class="built_in">rm</span> -f crictl-<span class="variable">$VERSION</span>-linux-amd64.tar.gz</span><br></pre></td></tr></table></figure><p><em><strong>配置 crictl</strong></em><br>要查看或编辑当前配置，请查看或编辑&#x2F;etc&#x2F;crictl.yaml的内容</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cat</span> /etc/crictl.yaml</span><br><span class="line">runtime-endpoint: unix:///run/containerd/containerd.sock</span><br><span class="line">image-endpoint: unix:///run/containerd/containerd.sock</span><br><span class="line"><span class="built_in">timeout</span>: 10</span><br><span class="line">debug: <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># /run/containerd/containerd.sock 为containerd中的“grpc.address” 配置，两个需要对应上。</span></span><br></pre></td></tr></table></figure><p><em><strong>crictl  测试</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">root@work001:/tmp<span class="comment"># crictl version </span></span><br><span class="line">Version:  0.1.0</span><br><span class="line">RuntimeName:  containerd</span><br><span class="line">RuntimeVersion:  1.6.16</span><br><span class="line">RuntimeApiVersion:  v1</span><br></pre></td></tr></table></figure><h3 id="安装k8s"><a href="#安装k8s" class="headerlink" title="安装k8s"></a>安装k8s</h3><p><em><strong>安装kubeadm，kubelet, kubectl 指定版本</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">sudo apt-get install -y kubelet=1.24.10-00 kubeadm=1.24.10-00 kubectl=1.24.10-00 --allow-downgrades</span><br><span class="line"></span><br><span class="line"><span class="comment"># 锁定版本不升级</span></span><br><span class="line">sudo apt-mark hold kubelet kubeadm kubectl</span><br></pre></td></tr></table></figure><p><em><strong>安装master节点</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 创建master结点</span></span><br><span class="line">sudo kubeadm init --kubernetes-version=v1.24.10 --apiserver-advertise-address=192.168.122.10 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.123.0.0/16 --service-cidr=10.86.0.0/16</span><br><span class="line"></span><br><span class="line"><span class="comment"># 不安装kube-proxy 参数 --kubernetes-version=v1.24.10</span></span><br><span class="line"><span class="comment"># 输出node加入集群命令：kubeadm token create --print-join-command</span></span><br></pre></td></tr></table></figure><p><em><strong>加入node节点</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 登入各个节点</span></span><br><span class="line">kubeadm <span class="built_in">join</span> 192.168.122.10:6443 --token d2171t.6f3ybg6j313440qz --discovery-token-ca-cert-hash sha256:6674692af2959148fa84205b628646e03e81da4d75e988ba742909e821b6511a </span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;h3 id=&quot;ubuntu安装containerd&quot;&gt;&lt;a href=&quot;#ubuntu安装containerd&quot; class=&quot;headerlink&quot; title=&quot;ubuntu安装containerd&quot;&gt;&lt;/a&gt;ubuntu安装containerd&lt;/h3&gt;&lt;p&gt;以下以Ubuntu为例&lt;br&gt;说明：安装containerd与安装docker流程基本一致，差别在于不需要安装docker-ce&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;containerd: apt-get install -y containerd.io&lt;/li&gt;
&lt;li&gt;docker: apt-get install docker-ce docker-ce-cli containerd.io&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="k8s" scheme="https://www.flftuu.com/tags/k8s/"/>
    
  </entry>
  
  <entry>
    <title>multus双cni管理</title>
    <link href="https://www.flftuu.com/2023/01/19/multus%E5%8F%8Ccni%E7%AE%A1%E7%90%86/"/>
    <id>https://www.flftuu.com/2023/01/19/multus%E5%8F%8Ccni%E7%AE%A1%E7%90%86/</id>
    <published>2023-01-19T02:12:26.000Z</published>
    <updated>2023-11-07T09:47:33.535Z</updated>
    
    <content type="html"><![CDATA[<h2 id="背景目的"><a href="#背景目的" class="headerlink" title="背景目的"></a>背景目的</h2><p>随着金融，医疗，政企对网络延迟的高要求，云原生提出多网卡，实现高低延迟流量的分离处理。<br>以提高业务pod的流量处理性能。</p><p>方案架构：</p><blockquote><ol><li>Calico作为默认网络，承载管理流量与非低延时业务流量；</li><li>OVN-Kubernetes作为第二网络，承载低延时业务流量；</li></ol></blockquote><span id="more"></span><h2 id="组网架构"><a href="#组网架构" class="headerlink" title="组网架构"></a>组网架构</h2><p><img src="/2023/01/19/multus%E5%8F%8Ccni%E7%AE%A1%E7%90%86/1.jpg" alt="cni"><br><em><strong>节点ip规划</strong></em><br>master01：<br>ens1: 192.168.122.10<br>ens2: 192.168.100.10<br>ens3: 192.168.200.10</p><p>work01:<br>ens1: 192.168.122.101<br>ens2: 192.168.100.101<br>ens3: 192.168.200.101</p><p>work02:<br>ens1: 192.168.122.102<br>ens2: 192.168.100.102<br>ens3: 192.168.200.102</p><h2 id="环境搭建"><a href="#环境搭建" class="headerlink" title="环境搭建"></a>环境搭建</h2><h3 id="calico-搭建"><a href="#calico-搭建" class="headerlink" title="calico 搭建"></a>calico 搭建</h3><p><em><strong>calico 简介</strong></em><br>calico作为 Kubernetes 最长使用的一种网络插件，Calico 具有很强的扩展性，较优的资源利用和较少的依赖，相较于 Flannel 插件采用 Overlay 的网络，Calico 可以通过三层路由的方式采用性能更佳的 Underlay 网络，Calico 网络插件的转发效率是所有方案中最高的。</p><p>这里介绍calico Underlay 网络的bgp 的模式：<br>在使用 Calico 网络插件的实际生产环境当中，为了提高网络的性能和灵活性，需要将 Kubernetes 的工作节点和物理网络中的 leaf 交换机建立 bgp 邻居关系，同步 bgp 路由信息，可以将 pod 网络的路由发布到物理网络中。Calico 给出了三种类型的 BGP 互联方案，分别是 Full-mesh、Route reflectors 和 Top of Rack (ToR)。</p><blockquote><ol><li>Full-mesh<br>全互联模式，启用了 BGP 之后，Calico 的默认行为是在每个节点彼此对等的情况下创建完整的内部 BGP（iBGP）连接，这使 Calico 可以在任何 L2 网络（无论是公有云还是私有云）上运行，或者说（如果配了 IPIP ）可以在任何不禁止 IPIP 流量的网络上作为 overlay 运行。对于 vxlan overlay，Calico 不使用 BGP。<br>Full-mesh 模式对于 100 个以内的工作节点或更少节点的中小规模部署非常有用，但是在较大的规模上，Full-mesh 模式效率会降低，较大规模情况下，Calico 官方建议使用 Route reflectors。</li><li>Route reflectors<br>如果想构建内部 BGP（iBGP）大规模集群，可以使用 BGP 路由反射器来减少每个节点上使用 BGP 对等体的数量。在此模型中，某些节点充当路由反射器，并配置为在它们之间建立完整的网格。然后，将其他节点配置为与这些路由反射器的子集（通常为冗余，通常为 2 个）进行对等，从而与全网格相比减少了 BGP 对等连接的总数。</li><li>Top of Rack（ToR）<br>在本地部署中，可以将 Calico 配置为直接与物理网络基础结构对等。通常，这需要涉及到禁用 Calico 的默认 Full-mesh 行为，将所有 Calico 节点与 L3 ToR 路由器对等。</li></ol></blockquote><p>这里测试环境使用calico bgp 模式中的 Route reflectors（rr）方式</p><p><em><strong>calico 创建</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br></pre></td><td class="code"><pre><span class="line">wget -c https://raw.githubusercontent.com/projectcalico/calico/v3.24.5/manifests/calico.yaml</span><br><span class="line"></span><br><span class="line"><span class="comment"># vim calico.yaml</span></span><br><span class="line"><span class="comment"># 修改对应参数</span></span><br><span class="line">CALICO_IPV4POOL_IPIP = <span class="string">&quot;Never&quot;</span> <span class="comment"># 支持ipip模式，启用bgp</span></span><br><span class="line">IP_AUTODETECTION_METHOD = <span class="string">&quot;ens2&quot;</span> <span class="comment"># 指定calico使用的网卡</span></span><br><span class="line">CALICO_IPV4POOL_CIDR = <span class="string">&quot;10.244.0.0/16&quot;</span> <span class="comment"># 指定cluster cidr网段</span></span><br><span class="line">CALICO_IPV4POOL_BLOCK_SIZE = <span class="string">&quot;24&quot;</span> <span class="comment"># 指定node subnet的子网掩码，默认25</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 在calico-kube-controllers 部分增加</span></span><br><span class="line"> envFrom:</span><br><span class="line">          - configMapRef:</span><br><span class="line">              <span class="comment"># Allow KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT to be overridden for eBPF mode.</span></span><br><span class="line">              name: kubernetes-services-endpoint</span><br><span class="line">              optional: <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建kubernetes-services-endpoint confimap，当集群中没有kube-proxy的时候</span></span><br><span class="line"><span class="built_in">cat</span> &gt; kubernetes-services-endpoint.yaml &lt;&lt;<span class="string">EOF</span></span><br><span class="line"><span class="string">apiVersion: v1</span></span><br><span class="line"><span class="string">data:</span></span><br><span class="line"><span class="string">  KUBERNETES_SERVICE_HOST: 192.168.122.10</span></span><br><span class="line"><span class="string">  KUBERNETES_SERVICE_PORT: &quot;6443&quot;</span></span><br><span class="line"><span class="string">kind: ConfigMap</span></span><br><span class="line"><span class="string">metadata:</span></span><br><span class="line"><span class="string">  name: kubernetes-services-endpoint</span></span><br><span class="line"><span class="string">  namespace: kube-system</span></span><br><span class="line"><span class="string">EOF</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建</span></span><br><span class="line">kubectl apply -f kubernetes-services-endpoint.yaml</span><br><span class="line">kubectl apply -f calico.yaml</span><br><span class="line"><span class="comment"># 安装calicoctl 客户端</span></span><br><span class="line">kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.24.5/manifests/calicoctl.yaml</span><br></pre></td></tr></table></figure><p><em><strong>calico rr 模式</strong></em><br>更改calico 的bgp 模式为rr</p><p>选择master01 作为rr节点</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 增加label 标签</span></span><br><span class="line">kubectl label node master01 router-reflector=<span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 修改calico node 信息</span></span><br><span class="line">calicoctl get node master01 -o yaml &gt; master01.yaml</span><br><span class="line"><span class="comment"># 修改master01.yaml 的bgp 中的 asNumber，routeReflectorClusterID 信息, 如下</span></span><br><span class="line"><span class="comment"># 应用更改</span></span><br><span class="line">calicoctl apply -f  master01.yaml</span><br></pre></td></tr></table></figure><p>修改master01.yaml 信息</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">apiVersion:</span> <span class="string">projectcalico.org/v3</span></span><br><span class="line"><span class="attr">kind:</span> <span class="string">Node</span></span><br><span class="line"><span class="attr">metadata:</span></span><br><span class="line">  <span class="attr">annotations:</span></span><br><span class="line">    <span class="attr">projectcalico.org/kube-labels:</span> <span class="string">&#x27;&#123;&quot;beta.kubernetes.io/arch&quot;:&quot;amd64&quot;,&quot;beta.kubernetes.io/os&quot;:&quot;linux&quot;,&quot;kubernetes.io/arch&quot;:&quot;amd64&quot;,&quot;kubernetes.io/hostname&quot;:&quot;master01&quot;,&quot;kubernetes.io/os&quot;:&quot;linux&quot;,&quot;node-role.kubernetes.io/control-plane&quot;:&quot;&quot;,&quot;node-role.kubernetes.io/master&quot;:&quot;&quot;,&quot;node.kubernetes.io/exclude-from-external-load-balancers&quot;:&quot;&quot;,&quot;route-reflector&quot;:&quot;true&quot;&#125;&#x27;</span></span><br><span class="line">  <span class="attr">creationTimestamp:</span> <span class="string">&quot;2022-12-22T10:27:22Z&quot;</span></span><br><span class="line">  <span class="attr">labels:</span></span><br><span class="line">    <span class="attr">beta.kubernetes.io/arch:</span> <span class="string">amd64</span></span><br><span class="line">    <span class="attr">beta.kubernetes.io/os:</span> <span class="string">linux</span></span><br><span class="line">    <span class="attr">kubernetes.io/arch:</span> <span class="string">amd64</span></span><br><span class="line">    <span class="attr">kubernetes.io/hostname:</span> <span class="string">master01</span></span><br><span class="line">    <span class="attr">kubernetes.io/os:</span> <span class="string">linux</span></span><br><span class="line">    <span class="attr">node-role.kubernetes.io/control-plane:</span> <span class="string">&quot;&quot;</span></span><br><span class="line">    <span class="attr">node-role.kubernetes.io/master:</span> <span class="string">&quot;&quot;</span></span><br><span class="line">    <span class="attr">node.kubernetes.io/exclude-from-external-load-balancers:</span> <span class="string">&quot;&quot;</span></span><br><span class="line">    <span class="attr">route-reflector:</span> <span class="string">&quot;true&quot;</span></span><br><span class="line">  <span class="attr">name:</span> <span class="string">master01</span></span><br><span class="line">  <span class="attr">resourceVersion:</span> <span class="string">&quot;3402273&quot;</span></span><br><span class="line">  <span class="attr">uid:</span> <span class="string">60f03e30-b16f-44d7-92c4-97fcbc1c98a5</span></span><br><span class="line"><span class="attr">spec:</span></span><br><span class="line">  <span class="attr">addresses:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">address:</span> <span class="number">192.168</span><span class="number">.100</span><span class="number">.10</span><span class="string">/24</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">CalicoNodeIP</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">address:</span> <span class="number">192.168</span><span class="number">.122</span><span class="number">.10</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">InternalIP</span></span><br><span class="line">  <span class="attr">bgp:</span></span><br><span class="line">    <span class="attr">asNumber:</span> <span class="number">63400</span> <span class="comment"># 增加as 信息，65535以下都行</span></span><br><span class="line">    <span class="attr">ipv4Address:</span> <span class="number">192.168</span><span class="number">.100</span><span class="number">.10</span><span class="string">/24</span></span><br><span class="line">    <span class="attr">routeReflectorClusterID:</span> <span class="number">192.168</span><span class="number">.100</span><span class="number">.10</span> <span class="comment"># 增加id信息，一般是该节点ip信息</span></span><br><span class="line">  <span class="attr">orchRefs:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">nodeName:</span> <span class="string">master01</span></span><br><span class="line">    <span class="attr">orchestrator:</span> <span class="string">k8s</span></span><br><span class="line"><span class="attr">status:</span></span><br><span class="line">  <span class="attr">podCIDRs:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="number">10.244</span><span class="number">.0</span><span class="number">.0</span><span class="string">/24</span></span><br></pre></td></tr></table></figure><p>更改bpg config 信息</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 创建bgpconfig 信息</span></span><br><span class="line"><span class="built_in">cat</span> &gt; bgpconfig.yaml &lt;&lt; <span class="string">EOF</span></span><br><span class="line"><span class="string">apiVersion: projectcalico.org/v3</span></span><br><span class="line"><span class="string">kind: BGPConfiguration</span></span><br><span class="line"><span class="string">metadata:</span></span><br><span class="line"><span class="string"> name: default</span></span><br><span class="line"><span class="string">spec:</span></span><br><span class="line"><span class="string"> logSeverityScreen: Info</span></span><br><span class="line"><span class="string"> nodeToNodeMeshEnabled: false # 关闭 bgp full-mesh 模式</span></span><br><span class="line"><span class="string"> asNumber: 63400 # 同master01 节点一样设置 as号</span></span><br><span class="line"><span class="string">EOF</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 创建peer 规则信息</span></span><br><span class="line"><span class="built_in">cat</span> &gt; peer.yaml &lt;&lt; <span class="string">EOF</span></span><br><span class="line"><span class="string">apiVersion: projectcalico.org/v3</span></span><br><span class="line"><span class="string">kind: BGPPeer</span></span><br><span class="line"><span class="string">metadata:</span></span><br><span class="line"><span class="string">  name: peer-to-rrs</span></span><br><span class="line"><span class="string">spec:</span></span><br><span class="line"><span class="string">  nodeSelector: all() # 选择所有node节点启用bgp</span></span><br><span class="line"><span class="string">  peerSelector: route-reflector == &#x27;true&#x27; # 选择route-reflector=true的标签master01节点作为rr节点，下发路由信息</span></span><br><span class="line"><span class="string">EOF</span></span><br><span class="line"></span><br><span class="line">calicoctl apply -f bgpconfig.yaml</span><br><span class="line">calicoctl apply -f peer.yaml</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>查看calico bgp信息</p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 在master01节点上查看</span></span><br><span class="line">calicoctl node status </span><br><span class="line"></span><br><span class="line">Calico process is running.</span><br><span class="line"></span><br><span class="line">IPv4 BGP status</span><br><span class="line">+-----------------+---------------+-------+------------+-------------+</span><br><span class="line">|  PEER ADDRESS   |   PEER TYPE   | STATE |   SINCE    |    INFO     |</span><br><span class="line">+-----------------+---------------+-------+------------+-------------+</span><br><span class="line">| 192.168.100.101 | node specific | up    | 2023-01-16 | Established |</span><br><span class="line">| 192.168.100.102 | node specific | up    | 2023-01-16 | Established |</span><br><span class="line">+-----------------+---------------+-------+------------+-------------+</span><br><span class="line"></span><br><span class="line">IPv6 BGP status</span><br><span class="line">No IPv6 peers found.</span><br><span class="line"></span><br><span class="line"><span class="comment"># 在work01 节点上查看</span></span><br><span class="line">calicoctl node status </span><br><span class="line">Calico process is running.</span><br><span class="line"></span><br><span class="line">IPv4 BGP status</span><br><span class="line">+----------------+---------------+-------+------------+-------------+</span><br><span class="line">|  PEER ADDRESS  |   PEER TYPE   | STATE |   SINCE    |    INFO     |</span><br><span class="line">+----------------+---------------+-------+------------+-------------+</span><br><span class="line">| 192.168.100.10 | node specific | up    | 2023-01-16 | Established |</span><br><span class="line">+----------------+---------------+-------+------------+-------------+</span><br><span class="line"></span><br><span class="line">IPv6 BGP status</span><br><span class="line">No IPv6 peers found.</span><br><span class="line"></span><br><span class="line"><span class="comment"># 在work节点上看，只有一条和rr节点的peer, full-mesh 模式则和所有work节点都用peer</span></span><br></pre></td></tr></table></figure><h3 id="multus-cni-创建"><a href="#multus-cni-创建" class="headerlink" title="multus-cni 创建"></a>multus-cni 创建</h3><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 安装multus-cni</span></span><br><span class="line"></span><br><span class="line">wget -c https://raw.githubusercontent.com/k8snetworkplumbingwg/multus-cni/v3.9.3/deployments/multus-daemonset.yml</span><br><span class="line"></span><br><span class="line"><span class="comment"># 修改multus-daemonset.yml 中的</span></span><br><span class="line"><span class="comment"># kube-multus 部分增加</span></span><br><span class="line"> envFrom:</span><br><span class="line">          - configMapRef:</span><br><span class="line">              <span class="comment"># Allow KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT to be overridden for eBPF mode.</span></span><br><span class="line">              name: kubernetes-services-endpoint</span><br><span class="line">              optional: <span class="literal">true</span></span><br><span class="line"></span><br><span class="line">kubectl apply -f multus-daemonset.yml</span><br></pre></td></tr></table></figure><h3 id="ovn-k8s-创建"><a href="#ovn-k8s-创建" class="headerlink" title="ovn-k8s 创建"></a>ovn-k8s 创建</h3><p><em><strong>配置ovn-deamonset</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 注意无DPU场景gateway-mode=&quot;local&quot;，其他参数不要配</span></span><br><span class="line">$ <span class="built_in">cd</span> <span class="variable">$HOME</span>/ovn/ovn-kubernetes/dist/images</span><br><span class="line"><span class="comment"># 如果使用的ip不是默认的管理口ip,需要额外指定以下参数（k8s组网时的apiserver ip必须一致）</span></span><br><span class="line">./daemonset.sh --image=yusur/ovn-daemonset-f:fullmode --net-cidr=10.144.0.0/16 --svc-cidr=10.96.0.0/16 --gateway-mode=<span class="string">&quot;local&quot;</span> --gateway-options=<span class="string">&quot;--gateway-interface=ens3 --gateway-nexthop=192.168.200.1&quot;</span> --k8s-apiserver=https://192.168.200.10:6443 --multicast-enabled --disable-snat-multiple-gws --disable-pkt-mtu-check=<span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment">#依次拉起ovn-kubernetes的pod</span></span><br><span class="line"><span class="comment"># Configmap</span></span><br><span class="line">$ kubectl create -f ../yaml/ovn-setup.yaml</span><br><span class="line"><span class="comment"># OVN Database</span></span><br><span class="line">$ kubectl create -f ../yaml/ovnkube-db.yaml</span><br><span class="line"><span class="comment"># ovnkube Master pod</span></span><br><span class="line">$ kubectl create -f ../yaml/ovnkube-master.yaml</span><br><span class="line"><span class="comment"># ovnkube node for nodes without DPU </span></span><br><span class="line">$ kubectl create -f ../yaml/ovnkube-node.yaml</span><br></pre></td></tr></table></figure><p><em><strong>查看ovn和ovs 信息</strong></em></p><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br></pre></td><td class="code"><pre><span class="line">ovs-vsctl  show </span><br><span class="line">6e79b5ed-12e9-438a-b5ce-dd37f8aa20bc</span><br><span class="line">    Bridge brens3f2</span><br><span class="line">        fail_mode: standalone</span><br><span class="line">        Port patch-brens3f2_master01-to-br-int</span><br><span class="line">            Interface patch-brens3f2_master01-to-br-int</span><br><span class="line">                <span class="built_in">type</span>: patch</span><br><span class="line">                options: &#123;peer=patch-br-int-to-brens3f2_master01&#125;</span><br><span class="line">        Port ens3f2</span><br><span class="line">            Interface ens3f2</span><br><span class="line">        Port brens3f2</span><br><span class="line">            Interface brens3f2</span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line">    Bridge br-int</span><br><span class="line">        fail_mode: secure</span><br><span class="line">        datapath_type: system</span><br><span class="line">        Port ovn-f70ac1-0</span><br><span class="line">            Interface ovn-f70ac1-0</span><br><span class="line">                <span class="built_in">type</span>: vxlan</span><br><span class="line">                options: &#123;csum=<span class="string">&quot;true&quot;</span>, key=flow, remote_ip=<span class="string">&quot;192.168.122.101&quot;</span>&#125;</span><br><span class="line">        Port ovn-k8s-mp0</span><br><span class="line">            Interface ovn-k8s-mp0</span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line">        Port br-int</span><br><span class="line">            Interface br-int</span><br><span class="line">                <span class="built_in">type</span>: internal</span><br><span class="line">        Port patch-br-int-to-brens3f2_master01</span><br><span class="line">            Interface patch-br-int-to-brens3f2_master01</span><br><span class="line">                <span class="built_in">type</span>: patch</span><br><span class="line">                options: &#123;peer=patch-brens3f2_master01-to-br-int&#125;</span><br><span class="line">        Port ovn-5ae586-0</span><br><span class="line">            Interface ovn-5ae586-0</span><br><span class="line">                <span class="built_in">type</span>: vxlan</span><br><span class="line">                options: &#123;csum=<span class="string">&quot;true&quot;</span>, key=flow, remote_ip=<span class="string">&quot;192.168.122.102&quot;</span>&#125;</span><br><span class="line">    ovs_version: <span class="string">&quot;2.17.3&quot;</span></span><br></pre></td></tr></table></figure><h2 id="使用方法"><a href="#使用方法" class="headerlink" title="使用方法"></a>使用方法</h2><h3 id="配置第二network"><a href="#配置第二network" class="headerlink" title="配置第二network"></a>配置第二network</h3><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cat</span> &gt;yuser-ovn.yaml &lt;&lt;<span class="string">EOF</span></span><br><span class="line"><span class="string">apiVersion: &quot;k8s.cni.cncf.io/v1&quot;</span></span><br><span class="line"><span class="string">kind: NetworkAttachmentDefinition</span></span><br><span class="line"><span class="string">metadata:</span></span><br><span class="line"><span class="string">  name: yusur-ovn #网络名称</span></span><br><span class="line"><span class="string">  namespace: default</span></span><br><span class="line"><span class="string">spec:</span></span><br><span class="line"><span class="string">  config: &#x27;&#123;</span></span><br><span class="line"><span class="string">    &quot;cniVersion&quot;: &quot;0.4.0&quot;,</span></span><br><span class="line"><span class="string">    &quot;name&quot;: &quot;ovn-kubernetes&quot;,</span></span><br><span class="line"><span class="string">    &quot;type&quot;: &quot;ovn-k8s-cni-overlay&quot;,</span></span><br><span class="line"><span class="string">    &quot;ipam&quot;: &#123;&#125;,</span></span><br><span class="line"><span class="string">    &quot;dns&quot;: &#123;&#125;,</span></span><br><span class="line"><span class="string">    &quot;logFile&quot;: &quot;/var/log/ovn-kubernetes/ovn-k8s-cni-overlay.log&quot;,</span></span><br><span class="line"><span class="string">    &quot;logLevel&quot;: &quot;5&quot;,</span></span><br><span class="line"><span class="string">    &quot;logfile-maxsize&quot;: 100,</span></span><br><span class="line"><span class="string">    &quot;logfile-maxbackups&quot;: 5,</span></span><br><span class="line"><span class="string">    &quot;logfile-maxage&quot;: 5</span></span><br><span class="line"><span class="string">    &#125;&#x27;</span></span><br><span class="line"><span class="string">EOF</span></span><br><span class="line"></span><br><span class="line">kubectl apply -f yuser-ovn.yaml</span><br></pre></td></tr></table></figure><h3 id="使用第二network"><a href="#使用第二network" class="headerlink" title="使用第二network"></a>使用第二network</h3><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cat</span> &gt;busybox3.yaml &lt;&lt;<span class="string">EOF</span></span><br><span class="line"><span class="string">apiVersion: v1</span></span><br><span class="line"><span class="string">kind: Pod</span></span><br><span class="line"><span class="string">metadata:</span></span><br><span class="line"><span class="string">  name: busybox3</span></span><br><span class="line"><span class="string">  namespace: default</span></span><br><span class="line"><span class="string">  annotations:</span></span><br><span class="line"><span class="string">    k8s.v1.cni.cncf.io/networks: &#x27;[&#123;</span></span><br><span class="line"><span class="string">      &quot;name&quot;: &quot;yusur-ovn&quot;, #指定网络名称</span></span><br><span class="line"><span class="string">      &quot;interface&quot;: &quot;eth1&quot;, #必须指定eth0 以外的名称，不然和calico网卡冲突</span></span><br><span class="line"><span class="string">      &quot;default-route&quot;: [&quot;10.144.0.1&quot;] #必须指定默认路由信息，不然无法创建，默认路由和calico冲突无法启动pod</span></span><br><span class="line"><span class="string">    &#125;]&#x27;</span></span><br><span class="line"><span class="string">spec:</span></span><br><span class="line"><span class="string">  containers:</span></span><br><span class="line"><span class="string">  - image: busybox:1.28</span></span><br><span class="line"><span class="string">    command: [&#x27;/bin/sh&#x27;, &#x27;-c&#x27;, &#x27;sleep 36000&#x27;]</span></span><br><span class="line"><span class="string">    imagePullPolicy: IfNotPresent</span></span><br><span class="line"><span class="string">    name: busybox</span></span><br><span class="line"><span class="string">  restartPolicy: Always</span></span><br><span class="line"><span class="string">  nodeSelector:</span></span><br><span class="line"><span class="string">    kubernetes.io/hostname: work01</span></span><br><span class="line"><span class="string">EOF</span></span><br><span class="line"></span><br><span class="line">kubectl apply -f busybox3.yaml</span><br></pre></td></tr></table></figure><h3 id="查看多网卡信息"><a href="#查看多网卡信息" class="headerlink" title="查看多网卡信息"></a>查看多网卡信息</h3><figure class="highlight sh"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 查看网卡信息</span></span><br><span class="line">kubectl  <span class="built_in">exec</span> -it busybox3 -- ip addr </span><br><span class="line">1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue qlen 1000</span><br><span class="line">    <span class="built_in">link</span>/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00</span><br><span class="line">    inet 127.0.0.1/8 scope host lo</span><br><span class="line">       valid_lft forever preferred_lft forever</span><br><span class="line">3: eth0@if8011: &lt;BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN&gt; mtu 1500 qdisc noqueue </span><br><span class="line">    <span class="built_in">link</span>/ether c6:06:25:b7:76:48 brd ff:ff:ff:ff:ff:ff</span><br><span class="line">    inet 10.244.83.250/32 scope global eth0</span><br><span class="line">       valid_lft forever preferred_lft forever</span><br><span class="line">5: eth1@if8012: &lt;BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN&gt; mtu 1400 qdisc noqueue </span><br><span class="line">    <span class="built_in">link</span>/ether 0a:58:0a:90:00:1f brd ff:ff:ff:ff:ff:ff</span><br><span class="line">    inet 10.144.0.31/24 brd 10.144.0.255 scope global eth1</span><br><span class="line">       valid_lft forever preferred_lft forever</span><br><span class="line"></span><br><span class="line"><span class="comment"># 查看路由信息</span></span><br><span class="line">kubectl  <span class="built_in">exec</span> -it busybox3 -- ip route</span><br><span class="line">default via 10.144.0.1 dev eth1 </span><br><span class="line">10.96.0.0/16 via 10.144.0.1 dev eth1 </span><br><span class="line">10.144.0.0/24 dev eth1 scope <span class="built_in">link</span>  src 10.144.0.31 </span><br><span class="line">10.144.0.0/16 via 10.144.0.1 dev eth1 </span><br><span class="line">169.254.1.1 dev eth0 scope <span class="built_in">link</span> </span><br></pre></td></tr></table></figure>]]></content>
    
    
    <summary type="html">&lt;h2 id=&quot;背景目的&quot;&gt;&lt;a href=&quot;#背景目的&quot; class=&quot;headerlink&quot; title=&quot;背景目的&quot;&gt;&lt;/a&gt;背景目的&lt;/h2&gt;&lt;p&gt;随着金融，医疗，政企对网络延迟的高要求，云原生提出多网卡，实现高低延迟流量的分离处理。&lt;br&gt;以提高业务pod的流量处理性能。&lt;/p&gt;
&lt;p&gt;方案架构：&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;Calico作为默认网络，承载管理流量与非低延时业务流量；&lt;/li&gt;
&lt;li&gt;OVN-Kubernetes作为第二网络，承载低延时业务流量；&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;</summary>
    
    
    
    <category term="Kubernetes" scheme="https://www.flftuu.com/categories/Kubernetes/"/>
    
    
    <category term="cni" scheme="https://www.flftuu.com/tags/cni/"/>
    
  </entry>
  
</feed>
