【Docker】记一次docker container ping domain 和 ping ipv6地址不通问题

docker 容器 ping domain
docker exec -it blackbox ping domain
docker 容器 ping IPv6
docker exec -it blackbox ping ipv6_addr

  1. docker 容器不能ping domain,Docker DNS 解析问题,故在 docker run 时,设置 --dns=''
  2. docker 容器不能ping ipv6_addr,
    • 设置 /etc/docker/daemon.json ,重启 docker 服务

      	{
      		"ipv6": true,
      		"fixed-cidr-v6": "路由A/64",  // docker0 对应的路由A
      	}	
      

      默认情况下,–fixed-cidr-v6参数使Docker通过基本上代表您运行以下三个命令,将新路由添加到路由表。要防止自动路由,ip-forward请false在daemon.json 文件中设置或使用–ip-forward=false标志启动Docker守护程序。然后,要获得Docker自动为您创建的相同路由表,请发出以下命令:

       $ ip -6 route add 路由A/64 dev docker0
       $ sysctl net.ipv6.conf.default.forwarding=1
       $ sysctl net.ipv6.conf.all.forwarding=1
      
    • 发现仍然不能ping ipv6_addr

    • 在本地shell中 tracert -6 -d <route>,同时在 虚机上抓包 网口A sudo tcpdump -i <网口A> -n icmp6,查看是否有回显地址

      route:装有docker虚机或物理机的路由
      网口A: 实际ip 的 网口,可通过  `ip a` 查看
      

      没有回显地址,那么可能存在 route 过期 的问题

    • 在本地shell中,ping <route>,同时在 虚机上抓包 网口A sudo tcpdump -i <网口A> -n icmp6,查看是否有回显地址

    • 未完 待续

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮您编写一个docker-compose文件来监控docker容器、MySQL和网络连通性。以下是示例代码: ```yaml version: '3.7' services: prometheus: image: prom/prometheus container_name: prometheus ports: - "9090:9090" volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml command: - '--config.file=/etc/prometheus/prometheus.yml' grafana: image: grafana/grafana container_name: grafana ports: - "3000:3000" volumes: - grafana_data:/var/lib/grafana node_ping: image: grafana/grafana-image-renderer:latest container_name: node_ping environment: - PING_HOST=google.com - PING_INTERVAL=10s mysql: image: mysql:latest container_name: mysql environment: MYSQL_ROOT_PASSWORD: example_password volumes: - mysql_data:/var/lib/mysql volumes: grafana_data: mysql_data: ``` 在这个docker-compose文件中,我们定义了四个服务: - Prometheus:一个开源的监控系统,用于收集和存储监控指标数据。我们将其映射到端口9090,以便我们可以通过Web界面访问它。 - Grafana:一个开源的可视化工具,用于显示监控数据。我们将其映射到端口3000,以便我们可以通过Web界面访问它。 - Node_ping:一个用于检查网络连通性的镜像,可以通过环境变量来指定要ping的主机和ping的时间间隔。 - MySQL:一个用于存储数据的关系型数据库。 此外,我们还定义了两个卷用于持久化数据。 请注意,这只是一个示例docker-compose文件,您需要根据您的实际需求进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值