侧边栏壁纸
博主头像
学海无涯博主等级

学无止境

  • 累计撰写 321 篇文章
  • 累计创建 80 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

docker容器使用局域网地址

利刃
2023-09-08 / 0 评论 / 0 点赞 / 4 阅读 / 3105 字
温馨提示:
本文最后更新于 2024-08-13,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

概述

在使用zabbix-proxy进行网络监控时,需要使用到局域网地址。  

步骤

一、创建网络 使用以下命令创建一个docker macvlan的网络
docker network create -d macvlan \
--subnet=10.137.121.0/24 \
--gateway=10.137.121.254 \
--ip-range=10.137.121.0/24 \
-o parent=enp2s0 macnet
释义: image   二、创建容器 使用以下命令创建一个zabbix-proxy的容器,和正常创建容器的区别在于,增加了—network 及 –ip 选项,—network用于指定上面创建的网络,—ip用于设置容器的ip地址。
docker run --name zabbix-proxy -t \
-e ZBX_HOSTNAME="zabbix-proxy-01" \
-e ZBX_TIMEOUT=30 \
-e ZBX_PROXYMODE=0 \
-e ZBX_CACHESIZE=500M \
-e ZBX_SERVER_HOST=10.137.121.250 \
-e TZ="Asia/Shanghai" \
-p 10051:10051 \
--network macnet \
--ip=10.137.121.249 \
--restart=always \
-d zabbix/zabbix-proxy-sqlite3
  三、解决容器和宿主的通信问题 完成第二步后,已经可以和局域网内部主机进行通信了。但是和宿主机无法通信  
# 添加一个虚拟接口桥接到物理网卡
ip link add macvlan-proxy link enp2s0 type macvlan mode bridge
# 给虚拟接口配置ip
ip addr add 10.137.121.248/32 dev macvlan-proxy
# 启用虚拟接口
ip link set macvlan-proxy up
# 添加到容器网络的静态路由规则
ip route add 10.137.121.249/32 dev macvlan-proxy
  执行完以上命令后,即可进行通信了。 可能通过以下命令查看是否执行成功。
  • 使用 ifconfig 查看是否有 macvlan-proxy 的网卡出现。
  • 使用 route -n 查看是否有相关路由出 10.137.121.249  0.0.0.0         255.255.255.255 UH    0      0        0 macvlan-proxy
  • 使用 ping 直接测试
  •   四、解决重启后,路由网卡失效问题。 目前解决方法是把命令添加至rc.local文件里面,开机自动执行。rc.local源文件需要添加执行权限。路径为/etc/rc.d/rc.local。 image  

    借鉴资料

      https://blog.csdn.net/qq_34777982/article/details/130736402
    0
    1. 支付宝打赏

      qrcode alipay
    2. 微信打赏

      qrcode weixin

    评论区