12. docker 网络 docker network (docker 网络)

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

posted @ 2019-08-06 15:32  zonehoo  阅读(473)  评论(0编辑  收藏  举报