全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
专有网络 VPC

Linux组播代理工具使用说明

更新时间:2017-06-07 16:44:23

参考以下内容使用组播代理工具:

安装组播代理工具

  1. 下载组播代理工具。

    下载地址:https://github.com/aliyun/multicast_proxy/tree/master/rpm_version

  2. 运行以下命令安装代理工具。

    sudo rpm -Uvh multicast_usr_tool-1.0.3-1.el6.x86_64.rpm

    如果安装过程中遇到cat: /root.bashrc:No such file or directory的错误,执行touch bashrc后再安装代理工具。

  3. 运行以下命令查看安装是否成功。

    rpm -q multicast_usr_tool-1.0.3-1.el6

启动和停止代理服务

  • 启动代理服务

    • 服务端(root权限)

      执行service multis_monitord start

    • 客户端(root权限)

      手动启动nohup multic_admin -R > /dev/null &

  • 停止代理服务

    • 服务端(root权限)

      执行service multis_monitord stop

    • 客户端(root权限)

      手动停止:执行ps aux|grep multic_admin找到运行进程的pid, 然后停止该进程。

  • 查看代理服务状态

    执行service multis_monitord status

修改组播配置

您可以通过命令行或者直接修改配置文件的方式指定组播源和添加组播成员。

  • 服务端配置文件:/etc/multicast/server_cfg.json.txt

  • 客户端配置文件:/etc/multicast/client_cfg.json.txt

注意:如果Linux下多网卡,组播内网通信,需要添加如下一条组播路由:

ip route add 224.0.0.0/4 via 10.169.31.247 dev eth0

其中:

  • 10.169.31.247是私网网关,请根据实际情况进行替换。

  • eth0 是私网的接口。

  • 224.0.0.0/4是组播地址。

命令参考

服务端需要配置组播组以及添加对应的组播成员。每个服务器最多支持256个组播。每个组播组支持256个VM组播成员。由于linux内核默认只支持20个组播组,所以想要支持高于20个组播组,在服务端执行以下命令修改内核的限制:sysctl -w net.ipv4.igmp_max_memberships=256

命令执行文件默认安装到/usr/local/bin目录下。

服务端命令

使用multis_admin命令配置服务端,执行multis_admin -help查看详细说明。

  1. Usage:
  2. multis_admin -A -m {multi_ip} -j {ip1,ip2,ip3...} -p port
  3. multis_admin -A -m {multi_ip} -q {ip1,ip2,ip3...}
  4. multis_admin -D -m {multi_ip}
  5. multis_admin -C
  6. multis_admin -P -m {multi_ip}
  7. multis_admin -L -m {multi_ip}
  8. multis_admin -S
  9. multis_admin -H
  10. multis_admin -R
  11. Options:
  12. -A/--add add multicast group
  13. -D/--delete del multicast group
  14. -C/--clear clear multicast group
  15. -P/--stats packets statistic
  16. -S/--show show multicast group
  17. -L/--list list multicast group member
  18. -R/--run run the multicast server to transmit packages
  19. -H/--help help info
  20. -j/--join vm join multicast group
  21. -q/--quit vm quit multicast group
  22. -m/--multiip multicast ip
  23. -p/--port server port

客户端命令

使用multic_admin命令配置客户端,执行multic_admin -help查看详细说明。

  1. Usage:
  2. multic_admin -A -i {ip} -g {gourpport} -s {serverport} -m {multi_ip}
  3. multic_admin -D -i {ip} -g {groupport}
  4. multic_admin -C
  5. multic_admin -P -i {ip} -g {groupport}
  6. multic_admin -L
  7. multic_admin -H
  8. Options:
  9. -A/--add add multicast server ip and port
  10. -D/--delete del multicast server ip and port
  11. -C/--clear clear multicast server information
  12. -P/--stats recv packets statistic
  13. -L/--list list all multicast server ip and port
  14. -H/--help help info
  15. -i/--ip multicast server ip, the ip of multicast provider
  16. -g/--gport udp port, the multicast port
  17. -s/--sport server port
  18. -m/--multi_ip multicast ip

日志

/etc/multicast/目录中的server_log.txt,client_log.txt文件中查看日志信息。

升级

卸载后,安装最新的代理工具。

卸载代理工具

执行sudo rpm -e multicast_usr_tool-1.0.3-1.x86_64.rpm卸载代理工具。成功卸载后,会自动清除上次安装的文件。

配置举例

以下图中的组播通信为例,ECS1为组播源,ECS2、ECS3、ECS4为组播成员,组播IP地址和端口分别为224.1.2.3:65535。

1

此时需要在ECS1上安装运行组播服务端。安装运行以后需要对各ECS进行配置,有如下两种配置方法:

  • 终端命令行

    1. 在ECS1上执行如下命令配置组播组。

      multis_admin -A -m 224.1.2.3 -j 192.168.1.1,192.168.1.2,192.168.1.3 -p 65535

      -m 224.1.2.3是组播地址, -j 192.168.1.1,192.168.1.2,192.168.1.3是组播成员IP地址,-p 65535是组播端口。

    2. 配置完成以后,执行以下命令查看收发包统计。

      VM1:multis_admin -P

    3. 执行如下命令将ECS2退出组播。

      multis_admin -A -m 224.1.2.3 –q 192.168.1.1

  • 修改配置文件

    1. 打开服务端配置文件。

      /etc/multicast/server_cfg.json.txt

    2. 修改JSON文件中的组播源和组播成员信息。

      1. {
      2. "multi_group_array": [
      3. {
      4. "group_ip": "224.1.2.3",
      5. "server_port": 65535,
      6. "group_port": 65535,
      7. "member_array": [
      8. "192.168.1.1",
      9. "192.168.1.2",
      10. "192.168.1.3"
      11. ],
      12. }
      13. ]
      14. }
    3. JSON文件修改后需要用reload工具加载到当前运行的服务端程序中。

      server_reload_list

      当出现please input command[reload or list]#提示时,输入reload

    4. 执行以下命令查看收发包统计。

      server_reload_list

      当出现please input command[reload or list]#提示时,输入list

本文导读目录