首页 > 其他分享 >Docker 主机网络和空网络

Docker 主机网络和空网络

时间:2024-06-22 09:03:01浏览次数:25  
标签:容器 -- 主机 网络 Docker docker 运行

在docker的网络设置有,默认有三种类型的网络,分别是bridge、host和null,如下图所示:

         在启动容器时,如果不指定网络参数,则默认使用bridge网络,而另外两种类型的网络则使用的较少,而在本文中,我们将探讨这两种预定义且有些独特的网络类型,即docker主机网络和空网络。

主机网络

      有时,我们希望在主机的网络命名空间中运行容器。当我们需要在容器中运行某些用于分析或调试主机网络流量的软件时,这可能是必要的,但请记住,这些都是非常特殊的情况。在容器中运行业务软件时,没有充分的理由在主机网络上运行相应的容器。出于安全考虑,强烈建议不要在生产或类似生产的环境中运行任何连接到主机网络的此类容器

那么,如何在主机的网络命名空间内运行容器呢?只需将容器连接到主机网络即可:

docker container run --rm -it \
    --network host \
    alpine:latest /bin/sh

以上,通过使用—network host参数,可以使得容器的网络与宿主机一致!

      在容器中使用 ip 工具分析网络命名空间。你会发现,我们得到的图像与直接在主机上运行 ip 工具时完全相同。例如,以下图片是容器内显示eth0网络的输出情况:

ip addr show eth0

 以下是主机上的网络图:

    在这里,我可以看到 192.168.9.40 是主机分配的 IP 地址,这里显示的 MAC 地址也与主机的 MAC 地址一致。说明,容器使用了与主机一致的网络,两个网络是相同的。

     再次指出,由于潜在的安全漏洞和冲突,在主机网络上运行容器可能很危险。因此,在运行 Docker 容器时,一般建议使用用户自定义的网络而不是主机网络,因为这样可以提供更好的隔离性,降低冲突和安全漏洞的风险。关于如何使用自定义的网络,可参考我的课程:Docker 实战_在线视频教程-CSDN程序员研修院

 docker空网络

     有时,我们需要运行一些完全不需要任何网络连接就能执行手头任务的应用服务或作业。强烈建议您在一个连接到无网络的容器中运行这些应用程序。该容器将完全隔离,因此不会受到任何外部访问。让我们运行这样一个容器:

docker container run --rm -it \
    --network none \
    alpine:latest /bin/sh

如上命令,通过指定--network none便可以将容器设置为无网络的

进入容器后,我们可以验证没有可用的 eth0 网络端点:

此外,也没有可用的路由信息,我们可以使用以下命令来证明这一点:

ip route

 返回为空

以上便是对docker中两种特殊的网络的讲解,希望对您有所帮助。

标签:容器,--,主机,网络,Docker,docker,运行
From: https://blog.csdn.net/abc666_666/article/details/139873522

相关文章

  • 保持docker环境干净
    悬挂镜像首先,我们要学习如何删除悬挂的映像。所谓悬挂的Docker镜像是一种未使用的镜像,与任何标签(tag)的镜像或容器都没有关联。它通常发生在使用与现有镜像相同的标签构建新镜像时。Docker不会删除旧镜像,而是保留它,但会删除标签引用,使镜像没有适当的标签。悬挂镜像不会被任......
  • Fiddler 是一个功能强大的网络调试工具,通过掌握其高级功能,您可以更深入地进行流量分析
    Fiddler是一个功能强大的网络调试工具,主要用于捕获、检查和修改HTTP请求和响应。以下是一个Fiddler初级应用的大纲,帮助你快速了解如何使用它进行网络调试和分析:1. 安装和基本设置下载和安装Fiddler。启动Fiddler,并了解主界面的基本布局。配置浏览器或应用程序以使用......
  • 计算机网络:TCP 的拥塞控制的一般原理
    ✨✨欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨......
  • 计算机网络传输中的三部曲:连接、通信与释放
    ✨✨欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨......
  • 基于机会网络编码(COPE)的卫星网络路由算法matlab仿真
    1.程序功能描述       基于机会网络编码(COPE)的卫星网络路由算法。基于机会的网络编码(COPE,completelyopportunityencoding)方法,使每个接收节点都对信道进行侦听,通过获取邻居节点的信息状态确定编码机会,并且在本地信息缓存区中进行编码,最后进行基于编码机会的路由,可以有......
  • 计算机网络:408考研|重要拓展内容|冷门考点|英文缩写词(完结撒花~)
    系列目录408计算机网络总纲领更新日志6.15物理层的接口特性,修改了部分排版问题6.17数据链路层的拥塞控制,补充部分额外英文缩写词6.21考纲中明确提到的物理层的信源与信宿;数据链路层的ALOHA协议和令牌传递协议;以及运输层的UDP校验目录系列目录更新日志拓展......
  • FreeBSD通过CBSD管理低资源容器jail 网络NAT配置
    jail容器里的系统有时候并不需要公开的地址,所以给它们配置内网地址即可。但是这些系统一般都有上网的需求,这时候可以使用nat进行解决。CBSD可以配置NAT规则,只需要命令cbsdnatcfg,配置好后cbsdnaton启动即可:%cbsdnatcfgConfigureNATforRFC1918Network?[yes(1)orn......
  • 卷积神经网络-AlexNet
    AlexNet一些前置知识top-1和top-5错误率top-1错误率指的是在最后的n哥预测结果中,只有预测概率最大对应的类别是正确答案才算预测正确。top-5错误率指的是在最后的n个预测结果中,只要预测概率最大的前五个中含有正确答案就算预测正确。max-pooling层最大池化又叫做subsamplin......
  • 网络爬虫设置代理服务器
          目录1.获取代理IP2.设置代理IP3.检测代理IP的有效性4.处理异常         如果希望在网络爬虫程序中使用代理服务器,就需要为网络爬虫程序设置代理服务器。设置代理服务器一般分为获取代理IP、设置代理IP两步。接下来,分别对获取代理......
  • docker入门
    前言Docker诞生于2013年,由SolomonHykes在DotCloud公司(后更名为Docker,Inc.)创立。Docker的核心理念是**“Build,Ship,andRunAnywhere”**,即构建、发布、运行应用程序不受环境限制。Docker通过容器化技术,将应用及其所有依赖打包到一个独立的、可移植的单元中,从而实现了......