zoukankan      html  css  js  c++  java
  • Docker 容器的网络连接 & 容器互联

    1. Docker 容器网络基础架构

    Docker0

    ifconfig查看到的 docker0 是linux的虚拟网桥(OSI数据链路层)

    docker0 地址划分:
    172.17.42.1 255.255.0.0
    总共提供65534个地址

    修改docker0 IP池
    sudo ifconfig docker0 192.168.200.1 netmask 255.255.255.0

    网桥管理工具:bridge-utilssudo brctl show查看网桥设备。添加虚拟网桥:sudo brctl addrbr br0,更改docker的启动配置:在/etc/default/docker中添加DOCKER_OPS值: -b=br0即可。

    linux虚拟网桥特点:可以设置IP地址,相当于拥有一个隐藏的虚拟网卡

    2. Docker 容器的互联

    • docker在默认时是允许所有容器连接
    • docker拒绝容器间互联
    • 允许特定容器互联

    -icc=true默认允许容器互相连接

    通常重启容器IP会改变,随容器启动而改变!

    docker run --link=[CONTAINER_NAME]:[ALIAS] [IMAGE] [COMMAND]以指定代号访问容器,可避免IP变化带来的影响,在容器中即可以用别名访问容器(修改了host和改变了env)。(官方不推荐,使用docker network)

    • 特定容器访问:
    1. --icc
    2. --iptable=true(允许添加到iptable中)
    3. --link

    3. Docker 容器与外部网络的连接

    1.ip_forward

    --ip-forward=true决定系统是否转发流量

    sysctl net.ipv4.conf.all.forwarding查看数据转发是否开启

    2.iptables包过滤防火墙系统,允许端口映射访问,限制IP访问容器

    • 表table
    • 链chain
    • 规则rule

    filter表中包含的链:

    • INPUT
    • FORWARD
    • OUTPUT

    查看filter表(默认):
    sudo iptables -L -n

    添加一条限制访问:
    sudo iptables -I DOCKER -s 源IP -d 目的IP -p TCP(协议) --dport 80(端口) -j DROP(操作)

  • 相关阅读:
    厚积薄发IT咨询
    厚积薄发SQL技巧
    厚积薄发CSS
    厚积薄发数据库迁移
    厚积薄发系统安全日志已满处理

    厚积薄发SQLServer内核架构浅析
    厚积薄发css布局页面头部
    常用正则表达式
    一条SQL语句OA
  • 原文地址:https://www.cnblogs.com/boxker/p/10626005.html
Copyright © 2011-2022 走看看