如何在window配置host


如何在window配置host

文章插图
很简单:
至以下路径C:\Windows\System32\drivers\etc下找到HOSTS文件,右键选择打开方式,选择记事本打开 。直接编辑 。
在最下方的空白处新起一行
前面是IP地址,后面是网址,IP地址和网址中间使用一个空格 。
如:“542393169 awsamazoncom”
如有多行直接在下面再添加一行就行 。
最后保存即可 , 如果无法直接保存 , 可以先保存为TXT文件,再删除后辍名即可 。
本文用到的环境如下:
host: centos7
docker: 通过 yum install -y docker 安装,版本号为1103
docker镜像:
# Version: 001 FROM ubuntu:latest MAINTAINER paul liu "polluxliu@msncom" RUN apt-get update RUN apt-get install -y net-tools RUN apt-get install -y iputils-ping CMD /bin/bash
场景图:
我的host主机接有无线路由器,通过ADSL拨号上网,网卡eth0固定IP为1921680200,网关为路由器的IP 19216801 。
在host上安装docker,并运行容器 。
通过以下命令安装docker,
yum install -y docker
启用docker,
systemctl start docker
然后在host主机运行 ifconfig 或 ip a 命令,可以看到除去host原有的网卡eth0和回环lo外 , 多了个docker0 。
docker0 IP为1721701,所在的网段默认为B类私网地址1721700/16 。可以将docker0看做是host主机的一块虚拟网卡 。这样host主机就等同于配置了双网卡,两块网卡之间可以通信,但前提是启用ip_forward 。
这是docker0的第一个身份 。
运行两个容器docker1,docker2 , 然后在host主机上运行 brctl show 查看,
这里可以看出docker0的第二个身份,一个虚拟交换机 。每运行一个容器,就会产生一对veth,其中一端连接到docker0上 , 另一端连接到容器的eth0上 。这样,所有连接到docker0的容器组成了一个局域网 。如下图:
在host主机上运行 ifconfig ,也会发现多了两个veth这样的网络接口 。
在host主机上运行 ip addr show veth6d9a691,可以查看到该veth具有mac地址 , 这也正说明了docker0的虚拟交换机的身份 , 交换机是通过mac地址通信的,连接到交换机的设备必须具有mac地址 。
由于docker0自身也具有mac地址 , 这个与纯二层交换机是不同的,并且绑定了IP 1721701,容器默认把docker0作为了网关 。也就是docker0还兼具路由的功能,因此可以把docker0看做是一个三层交换机 , 可以做二层数据包转发,也可以做三层路由转发 。
在容器中运行 route -n 查看路由如下:
在host主机上运行 route -n 查看路由如下:
在host中 , 访问本网段19216800是通过eth0转发数据包的 , 访问1721700网段是通过docker0转发数据包的,而对于其他如公网是通过eth0将数据包转发给网关19216801,再由该网关进行数据包转发的,比如上网 。