docker【6】docker网络配置

本文详细介绍了Docker的网络配置,包括Docker原生网络实现、四种网络模式(bridge、none、host、container)的工作原理,以及如何自定义网桥。通过实例展示了如何创建自定义网桥、删除默认网桥、分配IP以及配置容器连接到特定网桥。最后,通过测试验证了网络联通性。
摘要由CSDN通过智能技术生成



docker 网络配置详解:

1、Docker原生网络实现

    为了实现容器到容器和容器到宿主机之间的通信,Docker本身就已经提供了几种解决方案。当Docker进程启动之后,它会配置一个虚拟的网桥叫docker0在宿主机上,实际上是 Linux 的一个 bridge。这个接口允许Docker去分配虚拟的子网给即将启动的容器们。这个网桥在容器内的网络和宿主机网络之间将作为接口的主节点。

     Docker容器启动后,将创建一个新的虚拟接口并分配一个网桥子网内的IP地址。这个IP地址嵌在容器内网络中,用于提供容器网络到宿主机docker0网桥上的一个通道。Docker自动配置iptables规则来放行并配置NAT,连通宿主机上的docker0。

    同时,Docker 随机分配一个本地未占用的私有网段(在 RFC1918 中定义)中的一个地址给 docker0 接口。比如典型的 172.17.42.1,掩码为 255.255.0.0。此后启动的容器内的网口也会自动分配一个同一网段(172.17.0.0/16)的地址。

在宿主机上使用如下命:ip addr

 
 
 
  1. lin@ubuntu:~$ ip addr
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
  3.    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  4.    inet 127.0.0.1/8 scope host lo
  5.       valid_lft forever preferred_lft forever
  6.    inet6 ::1/128 scope host
  7.       valid_lft forever preferred_lft forever
  8. 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
  9.    link/ether 00:0c:29:33:ca:0f brd ff:ff:ff:ff:ff:ff
  10.    inet 192.168.0.167/24 brd 192.168.0.255 scope global eno16777736
  11.       valid_lft forever preferred_lft forever
  12.    inet6 fe80::20c:29ff:fe33:ca0f/64 scope link
  13.       valid_lft forever preferred_lft forever
  14. 3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
  15.    link/ether 02:42:86:27:36:61 brd ff:ff:ff:ff:ff:ff
  16.    inet 172.17.0.1/16 scope global docker0
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值