实验手册
VMware模拟网络环境
- 计算机中有个软件叫VMware,可以虚拟网卡
wmnet-8 ,这块网卡采用NAT模式,是虚拟机网络环境的网关,负载着每台虚拟机的eth0 网卡; - 笔记本网络环境中还有
lo 这块虚拟网卡127.0.0.1; - node01做lvs;
- 虚拟eth:1网卡(192.168.150.100):作为VIP,用于接收外网数据包;
- 真实eth0网卡(192.168.150.11):作为DIP,用于和网段内server通信,分发数据包;
- node02~03做r-server(安装httpd对外提供http服务);
- 虚拟lo:1网卡(192.168.150.100):在lo环卫接口上增加VIP,用于接收lvs分发来的数据包;
模拟客户端访问
- 数据包怎么进来的,数据包怎么回去的;
- 客户端请求192.168.150.100:80明显走vmnet8这个接口,不会走环卫接口和物理网卡;源地址是150.100但是通过150.1往外发数据包,所以在虚拟机内源地址是150.1
- 数据包扔给vmnet8这个接口,因为他是个接口所以只能往网络层去扔;
- 扔到了vmnet8虚拟交换机正好是192.168.150.*这个网段;
- 虚拟交换机把数据包扔给目标地址r-server,node01的eth0:1网卡上;
- 数据包进来由lvs审视,只要规则配了,就通过eth0分发出去
- 假设负载给node02的eth0网卡因为lo:1是隐藏的看不到,但是数据包进来node02有
lo:1是VIP 所以数据包收下了; - 然后node02的网卡把数据包传递给应用层80应用;
- 数据包是通过192.168.150.1过来的,所以socket建立了192.168.150.1和VIP的映射关系,通过150.12返回数据包到150.1,150.1是原地址,再由150.1返回给150.100;
- 从150.1出来就进入网络层了,因为150.1是源地址,会找到随机端口号找到浏览器返回数据包;
环境搭建
删除VIP
创建VIP
掩码写法
- 简写:
/24:255:255:255:0,1个255是1个二进制位是8个1,(1*8)*3=24 /16:255:255:0:0 - 不简写:
/24就要写netmask 255:255:255:0
node01创建VIP
node02创建VIP
总结:1、改内核;2、改ip;
-
先调整arp协议才能配置,没有先配协议直接配ip就能通告出去,会被别人请求到,藏不住了; ipv4协议配置下的接口目录(eth0、lo) -
先去eth0目录下,会看到协议参数变量 修改这2个协议;
-
arp_ignore:对外响应级别; -
arp_announce:对外响应级别; -
现在只是改了eth0这个接口,接下来去all接口; 修改完eth0和all这2个接口的arp协议后,下面才改隐藏VIP的配置; -
隐藏VIP的配置 创建环卫接口,掩码精确到4个255;
- 为什么4个255?
- ip和掩码会进行
按位与运算 来生成路由条目,如果/24那么从lo:2环卫接口 也可以抵达195.168.150.0这个网络; - eth0和/24做完与运算也可以抵达195.168.150.0这个网络;
- 两个网卡都可以去195.168.150.0这个网络;
- ping网络后,数据包发出去,
lo:2 离内核近,所以默认会从lo:2 发出去,结果果数据包又发给自己,所以这个包永远发不出去; - 配4个255后,数据包发出去目标地址是192.168.150.1,和
lo:2 掩码与运算匹配不上,就会和eth0的掩码与运算 网段一样匹配上了,最终通过eth0 发出数据包;规避了死循环的风险;
node03创建VIP(r-server配置都一样,和node02配置一样)
- 改内核
- 改隐藏VIP(掩码4个255)
node02~03装httpd
和tomcat一样,只不过tomcat是动态的,httpd是静态的;
yum安装
yum install httpd -y
启动httpd(默认80端口)
service httpd start
创建主页
编辑主页
vi编辑index.html内容写上本机ip号,便于区分;
测试主页
访问r-server的ip:80端口,显示页面内容; 静态webServer搞定了!网络层、应用层做完了,就差lvs了;
lvs搭建
|