用socat验证multicase(组播)和broadcast(广播) with k8s容器环境

安装socat

网络允许的话,可以使用yum install -y socat进行安装。

如果是在容器里面运行,建议使用静态链接的socat:

可以从此处下载: Release socat-v1.7.4.4 · ernw/static-toolbox · GitHub

确定网络接口地址和组播地址

bash 复制代码
#kubectl exec -it pod-node2 -- ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:00:00:F6:DE:E2
          inet addr:101.16.0.118  Bcast:101.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::200:ff:fef6:dee2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:117 errors:0 dropped:0 overruns:0 frame:0
          TX packets:74 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8063 (7.8 KiB)  TX bytes:4308 (4.2 KiB)


#kubectl exec -it pod-node3 -- ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:00:00:60:52:4B
          inet addr:101.16.0.119  Bcast:101.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::200:ff:fe60:524b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:118 errors:0 dropped:0 overruns:0 frame:0
          TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8090 (7.9 KiB)  TX bytes:2925 (2.8 KiB)

验证组播multicast

server侧运行命令行:

kubectl exec -it pod-node2 -- /usr/bin/socat-1.7.4.4-x86_64 -d UDP4-RECVFROM:6666,ip-add-membership=224.1.0.1:101.16.0.118,fork EXEC:hostname

client侧运行命令行:

kubectl exec -it pod-node3 -- /usr/bin/socat-1.7.4.4-x86_64 STDIO UDP4-DATAGRAM:224.1.0.1:6666,range=101.16.0.119/24

ip地址和rang需要从ifconfig命令中获取

实机运行效果

验证广播broadcast

server侧运行命令行:

kubectl exec -it pod-node2 -- /usr/bin/socat-1.7.4.4-x86_64 -dd UDP4-RECVFROM:6666,broadcast,fork EXEC:hostname

client侧运行命令行:

kubectl exec -it pod-node3 -- /usr/bin/socat-1.7.4.4-x86_64 -dd STDIO UDP4-DATAGRAM:101.16.255.255:6666,broadcast,range=101.16.0.119/16

ip地址和rang需要从ifconfig命令中获取

实机运行效果

server

client

官方操作文档

IP Multicasting with Socat

相关推荐
一殊酒1 天前
【Docker】快速入门指南
运维·docker·容器
**蓝桉**1 天前
prometheus监控docker容器(Rocky9)
docker·容器·prometheus
linux修理工1 天前
EasyVoice 项目部署与使用指南(开源文字互转声音)
云原生·eureka
lpruoyu1 天前
【云原生】Helm应用商店
云原生
专注_每天进步一点点1 天前
serverless的slb
云原生·serverless
Mr_Chenph1 天前
备份Docker
运维·docker·容器
http阿拉丁神猫1 天前
kubernetes知识点汇总19~24
云原生·容器·kubernetes
IT界的老黄牛1 天前
RocketMQ 5.x 集群部署实战:3 台机器搞定 2 主 2 从,Docker Host 模式一把梭
docker·容器·rocketmq
lpruoyu1 天前
【云原生】kustomize_常见的部署方式
云原生
春日见1 天前
UniAD的逻辑,与传统自动驾驶的差异
人工智能·windows·git·机器学习·docker·容器·自动驾驶