当前位置: 首页 > wzjs >正文

网站备案 怎么建站seo专员简历

网站备案 怎么建站,seo专员简历,超市网站建设费用,目前主流的网站开发语言现象: 服务器没有监听443端口,但是却能telnet通。 在 Kubernetes 中,当使用 hostPort 方式暴露 Ingress Controller(如 ingress-nginx) 的 443 端口时,流量能够正常转发到 Pod,即使 系统层面&a…

现象:

服务器没有监听443端口,但是却能telnet通。

在 Kubernetes 中,当使用 hostPort 方式暴露 Ingress Controller(如 ingress-nginx 的 443 端口时,流量能够正常转发到 Pod,即使 系统层面(宿主机)没有直接监听该端口,这是由 Linux 内核网络机制 和 CNI(容器网络接口) 共同实现的。以下是详细解释:

客户端 → 访问 宿主机IP:443 → Linux 内核 DNAT 规则 → Pod 的 443 端口 → ingress-nginx 处理 → 后端 Service/Pod


1. hostPort 的工作原理

(1)hostPort 的本质

  • 当 Pod 配置了 hostPort: 443Kubernetes 的 CNI 插件(如 Calico、Flannel、Cilium)会在宿主机上设置网络规则,将宿主机的 443 端口的流量直接转发到 Pod 内的 443 端口。

  • 关键点

    • 宿主机没有真正的进程监听 443,但内核会通过 DNAT(目标地址转换) 将流量重定向到 Pod。

    • 类似于 docker run -p 443:443 的底层机制。

(2)流量转发流程

客户端 → 访问 宿主机IP:443 → Linux 内核 DNAT 规则 → Pod 的 443 端口 → ingress-nginx 处理 → 后端 Service/Pod

2. 底层实现:Linux 内核如何转发流量?

(1)iptables 规则(传统方式)

Kubernetes CNI 插件(如 kube-proxy)会创建 iptables 规则,将宿主机的 hostPort 流量转发到 Pod。

sudo iptables -t nat -L -n | grep "443"
示例输出:Chain KUBE-HOSTPORTS (1 references)
target     prot opt source     destination
KUBE-MARK-MASQ  tcp  --  0.0.0.0/0  0.0.0.0/0  tcp dpt:443
KUBE-HP-XXXXXX  tcp  --  0.0.0.0/0  0.0.0.0/0  tcp dpt:443
  • KUBE-HP-XXXXXX 会进一步将流量 DNAT 到 Pod IP + 容器端口。

(2)ipvs 模式(高性能场景)

如果 kube-proxy 使用 ipvs 模式,会通过 ipvsadm 管理转发规则:

sudo ipvsadm -Ln | grep "443"
TCP  192.168.1.100:443 rr-> 10.244.1.2:443            Masq    1      0      0
  • 192.168.1.100 是宿主机 IP,10.244.1.2 是 Pod IP。

(3)CNI 插件的实现

不同 CNI 插件(如 Calico、Cilium)可能会使用更高效的方式(如 eBPF)绕过 iptables,直接在内核层完成流量转发。


3. 为什么 netstat 看不到 443 端口监听?

运行 netstat -tulnp | grep 443 可能显示 无进程监听 443,但流量仍能到达 Pod,因为:

  1. hostPort 的流量由内核直接拦截,不依赖用户态进程。

  2. iptables/ipvs 规则在 PREROUTING 链处理,早于应用层监听检查。


4. 验证 hostPort 是否生效

(1)检查 Pod 是否绑定 hostPort

kubectl get pod -n ingress-nginx -o yaml | grep hostPort
​​​​​​​ports:
- containerPort: 443hostPort: 443protocol: TCP

(2)检查宿主机网络规则

# 查看 iptables 规则
sudo iptables -t nat -L -n | grep "443"# 查看 ipvs 规则(如果使用 ipvs 模式)
sudo ipvsadm -Ln

(3)测试流量是否可达

curl -v https://<宿主机IP> -k

  • 如果返回 ingress-nginx 的默认页面或后端服务响应,说明转发正常。


5. 常见问题

Q1:hostPort 和 NodePort 有什么区别?

特性hostPortNodePort
端口占用直接绑定宿主机端口(如 443)分配随机端口(30000-32767)
依赖组件CNI 插件 + 内核规则kube-proxy + iptables/ipvs
适用场景需要固定端口的场景(如 HTTPS)临时测试或云厂商 LB 代理

Q2:为什么 hostPort 不生效?

可能原因:

  1. CNI 插件不支持:某些 CNI(如 Flannel 的默认配置)可能不支持 hostPort

  2. 安全组/防火墙阻止:确保宿主机 443 端口开放。

  3. 端口冲突:宿主机已有其他进程占用 443。


6. 总结

  • hostPort: 443 的流量由 Linux 内核(通过 iptables/ipvs/eBPF)直接转发到 Pod,无需宿主机进程监听。

  • ingress-nginx 通过 hostPort 实现高性能入口流量代理,适合裸金属或需要固定端口的场景。

  • 生产环境建议结合 外部负载均衡(如 MetalLB、云厂商 LB) 实现高可用。

http://www.dtcms.com/wzjs/210580.html

相关文章:

  • 怎么把网站做成app友情链接的形式有哪些
  • 打开上次浏览的网站模板搜索引擎推广成功的案例
  • wordpress好看的主题郑州seo关键词
  • 无锡公共工程建设中心网站seo求职信息
  • 网站建设在整体布局有哪些要求收录网站查询
  • asp.net网站伪静态网站排名优化软件
  • 360免费网站建设互联网营销师证书查询入口
  • 网站建设培训怎样宣传自己的品牌
  • 兼积做调查挣钱网站武汉网络推广seo
  • 如何推广网站运营章鱼磁力链接引擎
  • 网站的下拉列表怎么做推广工具有哪些
  • 湘潭网站优化seo优化网站排名
  • 哪些网站是由wordpress做的一个产品营销策划方案
  • 网站性质长春网站提升排名
  • 三把火科技网站设计百度推广工作怎么样
  • 佛山网站建设 骏域网站网络推广公司主要做什么
  • 如何查看一个网站是用什么程序做的阿里网站seo
  • 网站制作最便宜网络顾问
  • 中国网信网东莞seo托管
  • 做的好看的国内网站欣赏江东seo做关键词优化
  • 如何做网站百科广州全网推广
  • 上海建站模板厂家杭州seo技术培训
  • 教育网站制作哪个好如何在百度上发布自己的广告
  • 不学JavaScript可以做网站么如何创建自己的网站
  • 剖析材料范文哪个网站做的好百度链接收录
  • 福田建网站全国疫情高峰感染进度查询
  • 好看的单页面网站模板百度网址大全首页
  • 网站代易搜搜索引擎
  • 做网站编辑前景个人网站设计模板
  • 济南济南网站建设网站建设seo 重庆