Docker之网络配置

目录

1.网络概念

网络相关的有ip,子网掩码,网关,DNS,端口号

[1.1 ip是什么?](#1.1 ip是什么?)

ip是唯一定位一台网上计算机

Ip地址的分类:

[IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数 【例如:255(8).255(16).255(24).255(32)】](#IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数 【例如:255(8).255(16).255(24).255(32)】)

[IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数](#IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数)

【例如:FFFF(16).FFFF(32).FFFF(48).FFFF(64).FFFF(80).FFFF(96).FFFF(112).FFFF(128)】

1.2子网掩码是什么?

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。

这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如:

[// 连续的1代表网络位,连续的0代表主机位](#// 连续的1代表网络位,连续的0代表主机位)

[11111111 11111111 11111111 00000000](#11111111 11111111 11111111 00000000)

[// 转换](#// 转换)

255.255.255.0

转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:

IP:192.168.33.112

子网掩码:255.255.255.0

[192.168.33是网络位,112 是主机位](#192.168.33是网络位,112 是主机位)

子网掩码还可以来划分子网?

[我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。 子网的划分需要靠子网掩码来规定。](#我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。 子网的划分需要靠子网掩码来规定。)

如何判断是否在同一个子网?

假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:

[A笔记本:IP:192.168.33.112 | 子网掩码:255.255.255.0](#A笔记本:IP:192.168.33.112 | 子网掩码:255.255.255.0)

[11000000 10101000 00100001 01110000 // IP](#11000000 10101000 00100001 01110000 // IP)

[11111111 11111111 11111111 00000000 // 子网掩码](#11111111 11111111 11111111 00000000 // 子网掩码)

[// and运算理解位为乘就可以了,两者每一位都相乘得](#// and运算理解位为乘就可以了,两者每一位都相乘得)

[11000000 10101000 00100001 00000000](#11000000 10101000 00100001 00000000)

[// 转成十进制为](#// 转成十进制为)

[192.168.33.0B笔记本:IP:192.168.33.223 | 子网掩码:255.255.255.0](#192.168.33.0B笔记本:IP:192.168.33.223 | 子网掩码:255.255.255.0)

[// 同理B运算完后为](#// 同理B运算完后为)

192.168.33.0

A和B笔记本的运算结果相等,说明在同一个子网

[1.3 网关是什么?](#1.3 网关是什么?)

网关实质上是一个网络通向其他网络的IP地址。

路由器(Windows下叫默认网关,网关就是路由,路由就是网关。

[1.4 DNS是什么?](#1.4 DNS是什么?)

[DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。](#DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。)

1.5端口号是什么?

端口号作用是表示计算机上正在运行的进程(程序)。

2.网桥模式

四种网络

[2.1 bridge 网桥模式](#2.1 bridge 网桥模式)

bridge模式是docker的默认网络模式,不写--net参数,就是bridge模式

划线部分就是网桥

[查看bridge信息 docker inspect bridge](#查看bridge信息 docker inspect bridge)

打开容器

查看docker0网桥

[ip addr](#ip addr)

查看容器网络

ifconfig

[外部访问 设置端口映射](#外部访问 设置端口映射)

[docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本](#docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本)

[2.2 host 主机模式](#2.2 host 主机模式)

主机模式下容器和宿主机共用ip和端口

会报8080端口正在被使用

怎么解决?

关闭tomcat->进入s1->运行spring.jar

[2.3 none 没有模式](#2.3 none 没有模式)

[2.4 container 容器模式](#2.4 container 容器模式)

3.自定义网络

创建自定义网络

查看网络

创建网卡

[docker network create --subnet=172.33.0.1/16 net02](#docker network create --subnet=172.33.0.1/16 net02)

固定ip地址

跨网桥测试

​编辑


1.网络概念

网络相关的有ip,子网掩码,网关,DNS,端口号

1.1 ip是什么?

ip是唯一定位一台网上计算机
Ip地址的分类:
IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数 【例如:255(8).255(16).255(24).255(32)】
IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数
【例如:FFFF(16).FFFF(32).FFFF(48).FFFF(64).FFFF(80).FFFF(96).FFFF(112).FFFF(128)】

1.2子网掩码是什么?

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。
这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如:
// 连续的1代表网络位,连续的0代表主机位
11111111 11111111 11111111 00000000
// 转换
255.255.255.0
转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:
IP:192.168.33.112
子网掩码:255.255.255.0
192.168.33是网络位,112 是主机位
子网掩码还可以来划分子网?
我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。 子网的划分需要靠子网掩码来规定。
如何判断是否在同一个子网?
假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:
A笔记本:

IP:192.168.33.112 | 子网掩码:255.255.255.0

11000000 10101000 00100001 01110000 // IP
11111111 11111111 11111111 00000000 // 子网掩码
// and运算理解位为乘就可以了,两者每一位都相乘得
11000000 10101000 00100001 00000000
// 转成十进制为
192.168.33.0

B笔记本:
IP:192.168.33.223 | 子网掩码:255.255.255.0

// 同理B运算完后为
192.168.33.0
A和B笔记本的运算结果相等,说明在同一个子网

1.3 网关是什么?

网关实质上是一个网络通向其他网络的IP地址。
路由器(Windows下叫默认网关,网关就是路由,路由就是网关。

1.4 DNS是什么?

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

1.5端口号是什么?

端口号作用是表示计算机上正在运行的进程(程序)。

2.网桥模式

四种网络

2.1 bridge 网桥模式

bridge模式是docker的默认网络模式,不写--net参数,就是bridge模式
划线部分就是网桥
查看bridge信息 docker inspect bridge
打开容器

docker run -itd ( --net 可加可不加) =bridge --name cname iname

查看docker0网桥
ip addr
查看容器网络
ifconfig
外部访问 设置端口映射
docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本

2.2 host 主机模式

docker run -itd --name 容器名 --net=host 镜像 : 镜像版本

主机模式下容器和宿主机共用ip和端口
会报8080端口正在被使用
怎么解决?
关闭tomcat->进入s1->运行spring.jar

2.3 none 没有模式

2.4 container 容器模式

3.自定义网络

创建自定义网络

docker network create net01

查看网络

docker network ls

创建网卡
docker network create --subnet=172.33.0.1/16 net02
固定ip地址

docker run -itd --name 容器名 --net mynet --ip 172.18.0.2 镜像:镜像版本

跨网桥测试
相关推荐
MrSYJ20 分钟前
别人再问你路由表是啥,这篇文章摔它脸上
docker·云原生·kubernetes
wuyk55526 分钟前
《WiFi 嵌入式物联网开发全套实战》| 第 30 章 WiFi 抗干扰、抗闪断、网络抖动过滤量产策略
网络
不会就选b27 分钟前
Linux之TCP<2>
linux·网络·tcp/ip
羑悻1 小时前
穿越Docker内核迷雾:揭秘镜像分层存储的叠加态与卷挂载的多维空间穿梭技术
后端·docker·容器
筑梦之路2 小时前
docker-compose方式部署kafka集群(Kraft方式)——筑梦之路
docker·容器·kafka
垆边人似月.2 小时前
5G 网络建设(300 分档)
网络·5g
国科安芯3 小时前
低轨卫星导航授时载荷中高精度定时控制器的时钟稳定性与抗辐射特性研究
网络·人工智能·低轨卫星·商业航天·授时·抗辐射·时钟稳定
白帽攻防录3 小时前
SRC 挖洞:V8 Turbofan 沙箱逃逸深度复盘,CVE-2026-6307 一根长矛怎么刺穿 Chrome 两道边界
网络·chrome·安全·网络安全·浏览器安全
pt10433 小时前
CML网络仿真入门-3:Cisco Modeling Labs 网络工具功能详解
网络
JavaPub-rodert3 小时前
Docker 镜像地址总失效?基于 DockerHub 项目用 GitHub Actions 做一个自动检测状态页
docker·容器·github