服务器ip地址及虚拟站点部分
① 什么是虚拟IP虚拟IP有什么用
虚拟IP地址(VIP) 是一个不与特定计算机或一个计算机中的网络接口卡(NIC)相连的IP地址。
虚拟IP主要是用来网络地址转换,网络容错和可移动性。虚拟IP比较常见的一个用例就是在系统高可用性(High Availability HA)方面的应用,通常一个系划外的情况而发统会因为日常维护或者非计生宕机,为了提高系统对外服务的高可用性,就会采用主备模式进行高可用性的配置。
当提供服务的主机M宕机后,服务会切换到备用主机S继续对外提供服务。而这一切用户是感觉不到的,在这种情况下系统对客户端提供服务的IP地址就会是一个虚拟IP,当主机M宕机后,虚拟IP便会漂浮到备机上,继续提供服务。
(1)服务器ip地址及虚拟站点部分扩展阅读:
虚拟IP的实现原理:
虚拟IP就是一个未分配给真实主机的IP,也就是说对外提供数据库服务器的主机除了有一个真实IP外还有一个虚拟IP。
使用这两个IP中的任意一个都可以连接到这台主机,所有项目中数据库链接一项配置的都是这个虚IP,当服务器发生故障无法对外提供服务时,动态将这个虚IP切换到备用主机。
其实现原理主要是靠TCP/IP的ARP协议。因为ip地址只是一个逻辑地址,在以太网中MAC地址才是真正用来进行数据传输的物理地址,每台主机中都有一个ARP高速缓存,存储同一个网络内的IP地址与MAC地址的对应关系。
以太网中的主机发送数据时会先从这个缓存中查询目标IP对应的MAC地址,会向这个MAC地址发送数据。操作系统会自动维护这个缓存。这就是整个实现的关键。
参考资料来源:网络-虚拟IP技术
② 如何配置基于IP地址的虚拟主机
虚拟主机简介:1. 把一台运行在互联网上的服务器分成多个虚拟的服务器。2. 每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWW,FTP,E-mail等)。3. 一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理。4. 在外界看来,每一台虚拟主机和一台独立的主机完全相同。 配置参数:<VirtualHost *:*> ServerAdmin 管理员的E-mail地址 DocumentRoot 虚拟主机的根目录 ServerName 虚拟主机的名称端口 ErrorLog 虚拟主机的错误日志路径 Customlog 虚拟主机的访问日志路径</VirtualHost> 基于IP的虚拟主机1.在服务器上绑定多个Ip 2.把多个网站绑定到不同的IP3.访问服务器上不同的IP,可以看到不同的网站。 需求一:基于IP的虚拟主机:1.相同的IP不同的端口号的虚拟主机配置Include指令2.在httpd.conf中添加Include#echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf3. 创建虚拟主机目录#mkdir /etc/httpd/vhost 相同的IP不同的端口号的虚拟主机配置:子文件的配置:Listen 88<VirtualHost 192.168.0.6:88>DocumentRoot /var/www/vhost88ServerName 192.168.0.6:88CustomLog /var/www/vhost88/access_log combined</VirtualHost> 创建根目录#mkdir /var/www/vhost88创建主页#echo “vhost88” >/var/www/vhost88/index.htmlApache重新启动Service httpd restart 具体配置:(实现一个IP ,2个端口的虚拟主机)#echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf#mkdir /etc/httpd/vhost#vi /etc/httpd/vhost/vhost.conf (创建虚拟配置目录,即添加子文件的配置) 添加:Listen 88Listen 89<VirtualHost 192.168.0.6:88>DocumentRoot /var/www/vhost88ServerName 192.168.0.6:88CustomLog /var/www/vhost88/access_log combined</VirtualHost> <VirtualHost 192.168.0.6:89>DocumentRoot /var/www/vhost89ServerName 192.168.0.6:89CustomLog /var/www/vhost89/access_log combined</VirtualHost>#######################################################添加至此#mkdir /var/www/vhost88#mkdir /var/www/vhost89#echo “vhost88” >/var/www/vhost88/index.html#echo “vhost89” >/var/www/vhost89/index.htmlService httpd restart 需求二:基于Ip的虚拟主机:不同的Ip地址相同的端口号(1) 多块物理网卡,每个网卡一个IP(2) 一块物理网卡,绑定多个IP 配置虚拟网卡:#ifconfig eth0:0 192.168.0.6 up#ifconfig eth0:1 192.168.0.7 up 具体配置如下:(实现一个IP ,多个地址访问) #echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf#mkdir /etc/httpd/vhost#vi /etc/httpd/vhost/vhost.conf <VirtualHost 192.168.0.6:80>DocumentRoot /var/www/vhost6ServerName 192.168.0.6CustomLog /var/www/vhost6/access_log combined</VirtualHost> <VirtualHost 192.168.0.7:80>DocumentRoot /var/www/vhost7ServerName 192.168.0.7CustomLog /var/www/vhost7/access_log combined</VirtualHost>############################################## 添加至此#ifconfig eth0:0 192.168.0.6 up#ifconfig eth0:1 192.168.0.7 up#mkdir /var/www/vhost6#mkdir /var/www/vhost7#echo “vhost6” >/var/www/vhost6/index.html#echo “vhost7” >/var/www/vhost7/index.htmlService httpd restart ########################################################### 基于Ip的虚拟主机到此结束!
③ 什么是虚拟IP地址
虚拟IP地址(VIP) 是一个不与特定计算机或一个计算机中的网络接口卡(NIC)相连的IP地址。数据包被发送到这个VIP地址,但是所有的数据还是经过真实的网络接口。VIPs大部分用于连接冗余;一个VIP地址也可能在一台计算机或NIC发生故障时可用,交由另一个可选计算机或NIC响应连接。虚拟IP地址的例子如:一个Loopback(无电路IP地址)作为不与在主机或路由器中任何一个特定接口(或电路)相关的IP地址。
举个例子。我们都知道在 TCP/IP 的架构下,所有想上网络
的电脑,不论是用何种方式连上网络,都必须要有一个 *唯一* 的 IP-address。
举两个最常见的例子: 学校的电脑用网络线连在一起,是经由 ethernet 接口连
上网络,则该 ethernet 接口必须要有 IP-addr., 如 freebsd.phys.ntu.e.tw
的 ethernet IP 为 140.112.52.20 。另一个常见的网络接口为 PPP, 通常是用
在 modem 拨接上,当您从家里透过 modem 拨接上远端的 modem server 时,有
些 server 会从中建立起远端与您的电脑间的 PPP 连线协定,于是,您的电脑就
会有一个 PPP 接口,而它的 IP-addr. 则由远端 server 指定给您 (这一切都是
全自动进行) ,于是您就可以透过 modem (PPP) 对外连线,就好像您的电脑直接
接在网络上一样。