1. 环境准备 编写 Vagrantfile 为

# -*- mode: ruby -*-

# vi: set ft=ruby :

Vagrant.require_version ">= 1.6.0"

boxes = [

{

    :name => "docker-node1",

    :eth1 => "192.168.205.10",

    :mem => "1024",

    :cpu => "1"

  },

  {

    :name => "docker-node2",

    :eth1 => "192.168.205.11",

    :mem => "1024",

    :cpu => "1"

  }

]

Vagrant.configure(2) do |config|

    config.vm.box = "centos/7"

    boxes.each do |opts|

    config.vm.define opts[:name] do |config|

    config.vm.hostname = opts[:name]

    config.vm.provider "vmware_fusion" do |v|

      v.vmx["memsize"] = opts[:mem]

      v.vmx["numvcpus"] = opts[:cpu]

    end

    config.vm.provider "virtualbox" do |v|

      v.customize ["modifyvm", :id, "--memory", opts[:mem]]

      v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]

    end

    config.vm.network :private_network, ip: opts[:eth1]

  end

  end

  config.vm.synced_folder "./labs", "/home/vagrant/labs"

  config.vm.provision "shell", privileged: true, path: "./setup.sh"

end

2.编写 setup.sh 为   并且创建  labs

#/bin/sh
# change registory
sudo yum install -y wget
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum makecache
sudo yum -y update
# install some tools
sudo yum install -y git vim gcc glibc-static telnet bridge-utils

# install docker
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh # start docker service
sudo groupadd docker
sudo usermod -aG docker vagrant
sudo systemctl start docker rm -rf get-docker.sh

3. 使用 ip a 查看 虚拟机的ip地址  然后 使用 ping ping通两台虚拟机    能 ping 通即可

  ip a

  ping  192.168.205.10

  ping  192.168.205.11

4. 基础概念

  1. 基于数据包的通行方式

  

  2. 公有 ip 和 私有 ip

    public IP : 互联网上的唯一表示,可以访问 internet

    Private IP : 不可再互联网上使用,仅供机构内部使用

    A:10.*  B:172.16.*  C:192.168.*

  3. 网络地址转换  NAT(本地访问 internet)

    访问外网的时候 通过查 NAT Translate Table

    对非私有的网络地址进行转换 转换好了之后再发送请求

  4. Ping 和 telnet 工具

    Ping(ICMP): 验证 IP的可达性 (不能百分百验证 其他情况 eg:防火墙)

      eg: ping 192.168.1.1

      eg: ping www.baidu.com

    telnet: 验证服务的可用性

      eg: telnet 192.168.1.1 5000  访问 ip 为192.168.1.1 的 5000 端口

      eg: telnet www.baidu.com 80

  5. wireshark 网络 抓包工具

    通过上方搜索框输入 ip.addr==192.168.205.10




12. docker 网络 docker network (docker 网络)的更多相关文章

  1. docker的网络-Container network interface(CNI)与Container network model(CNM)

    Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network in ...

  2. Docker: docker network 容器网络

    容器网络命令 : docker network --help 常用的是 docker network create/ls/rm/inspect 容器网络类型,一共有以下5种 bridge–net=br ...

  3. Docker系列04—跨主机网络方案(overlay/weave)

    在前面详细讲解了几种网络模式:none,host,bridge,container.他们解决了单个主机间的容器的通信问题,并不能实现多个主机容器之间的通信. 跨主机网络方案包括两大类: 1,docke ...

  4. Docker容器基础入门认知-网络篇

    这篇文章中,会从 docker 中的单机中的 netns 到 veth,再到单机多个容器之间的 bridge 网络交互,最后到跨主机容器之间的 nat 和 vxlan 通信过程,让大家对 docker ...

  5. Docker的单主机容器网络

    作者:杨冬 欢迎转载,也请保留这段声明.谢谢! 出处: https://andyyoung01.github.io/ 或 http://andyyoung01.16mb.com/ 本篇文章主要探索Do ...

  6. docker(4)docker的网络,自定义网桥

    Docker 的网络 运行 ifconfig 找到 docker0 : 虚拟网卡默认网卡名称为docker0 查看docker 的网桥: 我这里默认们没有进行安装 网桥管理设备:进行安装一下: yum ...

  7. docker~yml里使用现有网络

    回到目录 我们在进行docker swarm部署高可用集群时,在yml文件里可能要配置一些服务,而这些服务可能要使用一些公用的数据库,这些数据库可能已经运行在某个容器里,而这些容器有自己的网络,doc ...

  8. [docker]docker自带的overlay网络实战

    overlay网络实战 n3启动consul docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -b ...

  9. docker之容器访问和网络连接(三)

    前言 当一台服务器上部署了多个应用容器,它们直接可能需要相互通信,比如web应用容器需要访问mysql数据库容器. 主机访问容器 通过映射端口的形式我们可以在外部访问容器内的服务 # 将主机的127. ...

随机推荐

  1. QThread创建多线程程序

    最近在阅读Qt 5.9 C++开发指南,为了加深对书本上内容的理解,参照书上的讲解尝试写了一些demo,用于以后工作中查阅,如果涉及侵权请告知,实例程序samp13_1 mythread.h #ifn ...

  2. React16 新特性

    一.使用Error Boundary处理错误组件         React16之前:组件在运行期出错,会阻塞整个应用的渲染.   React16之后:引入新的错误处理机制——Error Bounda ...

  3. 1.3 this深度面试题

    var big = "1" var obj = { big: "2", showBig: function() { return this.big }, } o ...

  4. HDU 5312:Sequence

    Sequence  Accepts: 25  Submissions: 1442  Time Limit: 2000/2000 MS (Java/Others)  Memory Limit: 2621 ...

  5. hook鼠标键盘记录和回放

    unit Unit1; // download by http://www.codefans.net interface uses Windows, Messages, SysUtils, Class ...

  6. .net core excel导入导出

    做的上一个项目用的是vs2013,传统的 Mvc模式开发的,excel报表的导入导出都是那几段代码,已经习惯了. 导入:string filename = ExcelFileUpload.FileNa ...

  7. 19.3.8 HTML+css 课程

    form 归属于 form 通过id产生联系 ​<form id = "testform" method = "get" action = "s ...

  8. ab工具压接口的时候post传参问题

    ab  -n 10000 -c 40 -p  [参数所在文件] -T 'application/json'  http://xxx 以上命令, 压测需要post json格式的参数的api时, 一定注 ...

  9. Swagger注解及参数细节的正确书写。

    今天新开了一个api文件,结果怎么搞也在swagger里显示不出来,浪费半天后,去问老员工了. 一般有俩原因, 1.idea缓存,重启idea即可. 2.注解和参数上的修饰有问题,或者请求method ...

  10. TCP连接为什么三次握手四次挥手

    前几天面试某电商被问住了,问的很细,我就说了说连接过程,必然凉凉.在csdn上找了一篇很详细的博客.https://blog.csdn.net/hyg0811/article/details/1023 ...