Kubernetes uses the multus plugin to add subinterfaces and fix the ip

apiVersion: "k8s.cni.cncf.io/v1"   
kind: NetworkAttachmentDefinition   
metadata:   
 name: macvlan8   
 namespace: multicast   
spec:   
 config: '{   
   "cniVersion": "0.3.1",   
   "plugins": [   
     {   
       "type": "macvlan",   
       "capabilities": { "ips": true },   
       "master": "eth1",   
       "mode": "bridge",   
       "ipam": {   
         "type": "static",   
         "addresses": [   
             {   
                 "address": "192.168.25.62/22",   
                 "gateway": "192.168.27.254"   
             }   
         ],   
         "routes": [   
             { "dst": "192.168.24.0/22", "gw": "192.168.27.254" },   
             { "dst": "192.168.5.0/24" }   
         ]   
       }   
     }   
   ]   
 }'

Example load:

---   
apiVersion: apps/v1   
kind: Deployment   
metadata:   
 labels:   
   app: demo8   
 name: demo8   
 namespace: multicast   
spec:   
 replicas: 1   
 selector:   
   matchLabels:   
     app: demo8   
 template:   
   metadata:   
     annotations:   
       k8s.v1.cni.cncf.io/networks: macvlan8   
     labels:   
       app: demo8   
   spec:   
     containers:   
       - name: demo8   
         command:     
           - /bin/sh   
         args:   
           - '-c'   
           - "while true; do echo 1;sleep 10; done"   
         image: '192.168.25.9/hello_multicast_iperf:1_aarch64'   
         imagePullPolicy: Always   
         resources:   
           limits:   
             cpu: '2'   
           requests:   
             cpu: '2'

Test effects:

[root@node1 multus]# kubectl -n multicast exec -it demo8-578986878b-6m5nr -- sh 
/ # ip a 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 
    inet 127.0.0.1/8 scope host lo 
       valid_lft forever preferred_lft forever 
    inet6 ::1/128 scope host  
       valid_lft forever preferred_lft forever 
3: eth0@if75: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1430 qdisc noqueue state UP  
    link/ether 02:0c:78:14:6e:f9 brd ff:ff:ff:ff:ff:ff 
    inet 10.233.71.42/32 scope global eth0 
       valid_lft forever preferred_lft forever 
    inet6 fe80::c:78ff:fe14:6ef9/64 scope link  
       valid_lft forever preferred_lft forever 
4: net1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP  
    link/ether ca:35:41:d3:92:3e brd ff:ff:ff:ff:ff:ff 
    inet 192.168.25.62/22 brd 192.168.27.255 scope global net1 
       valid_lft forever preferred_lft forever 
    inet6 fe80::c835:41ff:fed3:923e/64 scope link  
       valid_lft forever preferred_lft forever 
/ # ip r 
default via 169.254.1.1 dev eth0  
169.254.1.1 dev eth0 scope link  
192.168.5.0/24 via 192.168.27.254 dev net1  
192.168.24.0/22 via 192.168.27.254 dev net1  
192.168.24.0/22 dev net1 scope link  src 192.168.25.62

References