Docker之网络配置

目录

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.0B笔记本: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

打开容器 

 查看docker0网桥 

ip addr

查看容器网络

ifconfig 

外部访问 设置端口映射

docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本 

2.2 host 主机模式

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

会报8080端口正在被使用

怎么解决?

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

2.3 none 没有模式

2.4 container 容器模式

3.自定义网络

创建自定义网络

查看网络

创建网卡

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 镜像:镜像版本

跨网桥测试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/311387.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于ssm的4S店预约保养系统开发+vue论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

2022–2023学年2021级计算机科学与技术专业数据库原理 (A)卷

一、单项选择题(每小题1.5分,共30分) 1、构成E—R模型的三个基本要素是( B )。 A.实体、属性值、关系 B.实体、属性、联系 C.实体、实体集、联系 D.实体、实体…

Java项目:102SSM汽车租赁系统

博主主页:Java旅途 简介:分享计算机知识、学习路线、系统源码及教程 文末获取源码 一、项目介绍 汽车租赁系统基于SpringSpringMVCMybatis开发,系统使用shiro框架做权限安全控制,超级管理员登录系统后可根据自己的实际需求配角色…

信号与线性系统翻转课堂笔记17——z变换及其性质

信号与线性系统翻转课堂笔记17——z变换及其性质 The Flipped Classroom17 of Signals and Linear Systems 对应教材:《信号与线性系统分析(第五版)》高等教育出版社,吴大正著 一、要点 (1)序列的z变换…

使用keepalived时虚拟IP漂移注意事项

什么是Keepalived服务 keepalived是一个开源的软件项目,用于实现高可用性(HA)的网络服务器负载均衡和故障转移。它允许将多台服务器组合在一起,形成一个虚拟服务器集群,实现负载均衡和故障转移。 keepalived的核心功…

启动gazebo harmonic

ros2 launch ros_gz_sim gz_sim.launch.py gz_version:8 如果不输入gz_version:8,默认就是6,启动的就是默认版本ign版本 左边那个是8,右边那个是6

如何有效提高建筑模板的周转次数和使用寿命?

提高建筑模板的周转次数和使用寿命对于降低工程成本和提高效率具有重要意义。在这方面,能强优品木业的建筑模板以其领先行业标准的周转次数和使用寿命,深受广泛客户的信赖。以下是一些有效提高建筑模板使用寿命的方法: 选用高质量材料 使用高…

【python】爬取百度热搜排行榜Top50+可视化【附源码】【送数据分析书籍】

一、导入必要的模块: 这篇博客将介绍如何使用Python编写一个爬虫程序,从斗鱼直播网站上获取图片信息并保存到本地。我们将使用requests模块发送HTTP请求和接收响应,以及os模块处理文件和目录操作。 如果出现模块报错 进入控制台输入&#xff…

Hadoop安装笔记1单机/伪分布式配置_Hadoop3.1.3——备赛笔记——2024全国职业院校技能大赛“大数据应用开发”赛项——任务2:离线数据处理

将下发的ds_db01.sql数据库文件放置mysql中 12、编写Scala代码,使用Spark将MySQL的ds_db01库中表user_info的全量数据抽取到Hive的ods库中表user_info。字段名称、类型不变,同时添加静态分区,分区字段为etl_date,类型为String&am…

007、控制流

先看下本篇学习内容: 通过条件来执行 或 重复执行某些代码 是大部分编程语言的基础组成部分。在Rust中用来控制程序执行流的结构主要就是 if表达式 与 循环表达式。 1. if表达式 if表达式允许我们根据条件执行不同的代码分支。我们提供一个条件,并且做出…

【node-express】在commonjs的项目中使用esm和ts开发的sdk

在commonjs的项目中使用esm和ts开发的sdk 效果实现步骤 效果 在一些demo中, 大部分代码是commonjs规范开发的,但是要用到的sdk是ts开发的并且仅支持esm, 又不想配置很复杂的工程项目,可以这么做。如果你有更好的建议,希望能得到你…

SPI机制原理+使用

一、概述 SPI全称(Service Provider Interface),是JDK内置的一种服务提供发现机制;SPI机制提供了组件发现和注册方式,可以为应用程序提供灵活的插件机制, 主要原理:接口 反射 配置文件。 二、…