Kubernetes固定Pod IP和Mac地址

方案1:

在 Calico GitHub Issues#5196 问题的 commits#6249 提交中,引入新的 Pod 注释cni.projectcalico.org/hwAddr,用于将指定的 MAC 地址分配给容器端 Veth 接口。

将Calico升级至v3.24.1或以上版本,使用如下注解轻松设置Pod IP和Mac地址。

go 复制代码
annotations:  
      cni.projectcalico.org/ipAddrs: '["10.244.3.219"]'  # 固定IP地址
      cni.projectcalico.org/hwAddr: "7e:72:f2:7a:ed:4c"     # 固定Mac地址

方案二:

配置securityContext获取网络权限后,通过postStart钩子在容器启动后修改Mac地址,解决容器网卡Mac地址固定的问题。

go 复制代码
spec:
  ...
  template:
    ...
    spec:
      containers:
        - name: myapp-test
          image: 'docker.io/library/centos:latest'
          imagePullPolicy: Always
          ports:
            - containerPort: 80
              protocol: TCP
          resources: {}
          lifecycle:
            postStart:
              exec:
                command:
                  - /bin/sh
                  - '-c'
                  - 'ifconfig eth0 hw ether 76:15:a2:d8:40:5e'
          securityContext:
            capabilities:
              add:
                - NET_ADMIN
相关推荐
福尔摩斯张3 小时前
基于TCP的FTP文件传输系统设计与实现(超详细)
linux·开发语言·网络·网络协议·tcp/ip·udp
Sleepy MargulisItG3 小时前
【Linux网络编程】应用层自定义协议与序列化
linux·服务器·网络·网络协议·tcp/ip
隐语SecretFlow4 小时前
【隐语Secretflow】一文速通基于可信执行环境 (TEE) 的零信任计算系统
云原生·kubernetes·开源
Dovis(誓平步青云)4 小时前
《Linux内核视角:自定义协议与TCP的协同通信之道》
网络·网络协议·tcp/ip
ChineHe4 小时前
Gin框架入门篇002_第一个Gin服务
macos·xcode·gin
白完就是肥4 小时前
QT编程之TCP编程
开发语言·qt·tcp/ip
Dobby_054 小时前
【k8s】集群安全机制(一):认证
运维·安全·kubernetes
Roc.Chang4 小时前
解决 macOS 26.1 The application “xxxx” can’t be opened. 问题
macos
赶路人儿5 小时前
从intel mac迁移到M3后软件的兼容性
macos
纷飞梦雪5 小时前
排查k8s连接mysql的pod
云原生·容器·kubernetes