eth0绑定虚拟ip
『壹』 教你如何在linux服务器上添加虚拟网卡
有时候,一台服务器需要设置多个ip,但又不想添加多块网卡,那就需要设置虚拟网卡.这里介绍几种方式在linux服务器上添加虚拟网卡.
我们向eth0中添加一块虚拟网卡:
第一种方法:快递创建删除虚拟网卡
sudo ifconfig eth0:0 192.168.10.10 up
以上的命令就可以在eth0网卡上创建一个叫eth0:0的虚拟网卡,他的地址是:192.168.1.63
如果不想要这个虚拟网卡了,可以使用如下命令删除:
sudo ifconfig eth0:0 down
重启服务器或者网络后,虚拟网卡就没有了.
hzhsan:但是发现添加的虚拟网卡和原网卡物理地址是一样的。
第二种方法:修改网卡配置文件
在ubuntu下,网卡的配置文件是/etc/network/interfaces,所以我们修改它:
sudo vim /etc/network/interfaces
在这个文件中增加如下内容并保存:
auto eth0:0
iface eth0:0 inet static
address 192.168.10.10
netmask 255.255.255.0
#network 192.168.10.1
#broadcast 192.168.1.255
保存后,我们需要重启网卡(重新加载配置文件)才会生效,使用如下命令重启:
sudo /etc/init.d/networking restart
他的优点是重启服务器或者网卡配置不会丢失。
在linux中虚拟网卡的方法
第三种方法:创建tap
前两种方法都有一个特点,创建的网卡可有不同的ip地址,但是Mac地址相同。无法用来创建虚拟机。
添加虚拟网卡tap
tunctl -b
附上相关命令简介:
显示网桥信息
brctl show
添加网桥
brctl addbr virbr0
激活网桥
ip link set virbr0 up
添加虚拟网卡tap
tunctl -b
tap0 -------> 执行上面使命就会生成一个tap,后缀从0,1,2依次递增
激活创建的tap
ip link set tap0 up
将tap0虚拟网卡添加到指定网桥上。
brctl addif br0 tap0
给网桥配制ip地址
ifconfig virbr1 169.254.251.4 up
将virbr1网桥上绑定的网卡eth5解除
brctl delif virb1 eth5
给virbr1网桥添加网卡eth6
brctl addif virbr1 eth6
『贰』 关于虚拟机的eth0是什么虚拟机是怎么上网的
VM虚拟机配置上网
第一种情况:
主机使用PPPOE拨号上网
方法一:NAT方式
1、先关闭虚拟机中的操作系统,回到虚拟机主界面
双击主界面右上方的的“Ethernet”,弹出“NetworkAdapter”对话框,选择“NAT”
2、启动虚拟机操作系统,设置IP为动态获取,即通过DHCP获得。
此时虚拟机中的操作系统用的是主机的IP,主机能够上网,那么虚拟机也能。
方法二:Host-only方式
1、先关闭虚拟机中的操作系统,回到虚拟机主界面
双击主界面右上方的的“Ethernet”,弹出“NetworkAdapter”对话框,选择“Host-only”
2、右击拨号上网的连接,打开PPPOE连接属性,选择“高级”,选择“允许其它网络用户通过此计算机的INTERNET连接来连接”
在“家庭网络”下拉框中,选择“VMwareNetworkAdapterVMnet1”
VMwareNetworkAdapterVMnet1虚拟网卡的IP会自动变为192.168.0.1
此时ping192.168.0.1能通即可。
3、进入vmware中,启动linux操作系统
用netconfig命令
将IP,设为192.168.0.2(与虚拟网卡在同一网段)
网关为192.168.0.1即VMwareNetworkAdapterVMnet1虚拟网卡的IP地址
DNS设置为ISP的DNS,如61.147.37.1
4、重启网络:
#servicenetworkrestart
此时,只要主机拨号上网后,虚拟机的系统就可以上网,且不用再拨号
方法三:Bridge方式
这种方式,虚拟机最接近一台真实的机器
1、先关闭虚拟机中的操作系统,回到虚拟机主界面
双击主界面右上方的的“Ethernet”,弹出“NetworkAdapter”对话框,选择“Bridge”
2、宿主机中安装sygate或wingate之类的代理服务器
3、设置虚拟机的代理服务器为宿主机的IP即可
第二种情况:
在单位局域网内
“Ethernet”要选择“Bridge”方式
使用这种方式时,虚拟机跟一台真实的机器一样,此时IP设置为局域网中另一个可用IP即可
网关:局域网网关服务器的地址(或路由器的地址)
DNS:设置为ISP的DNS服务器地址
『叁』 Linux下ip addr和ifconfig增删查虚拟ip
使用 虚拟ip最多的场景空搜可能是双机 ,往往结合着keepalived使用。其实没有双机软件也可以使用虚拟ip,下面介绍两种方法ip addr和ifconfig进行增删查虚拟ip。
增加虚拟ip :
ip addr add ip/netmask dev 网口名称,比如ip addr add 192.168.88.0/24 dev eth0
查看虚拟ip :
ip addr show device_name或ip addr | grep eth0
ip addr =ip a= ip add list 查看网卡的ip和mac等,即使网卡处于down状态,也能显示出网卡状态,但是ifconfig查看就看不到。
删除虚拟ip:
ip addr del ip/netmask dev 网口名称,比如ip addr del 192.168.88.0/24 dev eth0
清空指定网卡的所有ip:
ip addr flush dev 接口
ip addr 操作时的注意事项:
说明:网卡配置的ip一般为Primary ip,虚拟ip一般为Secondary ip,当删除Primary ip时Secondary ip也有可能同时被删除。
先查看ipv4或ipv6相应网卡开启提升参数promote_secondaries为1,当Primary ip被删除后,它的第1个Secondary ip将继承为Primary ip。
# cat /etc/sysctl.conf | grep promote_secondaries
net.ipv4.conf.eth0.promote_secondaries=1
默认不开启,查不到结果则表明未开启。
Secondary ip和Primary ip标注如下
[root@localhost ~]# ip addr show eth0
2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:19:b9:ef:44:8b brd ff:ff:ff:ff:ff:ff
# Primary ip
inet 172.16.0.230/24 brd 172.16.0.255 scope global eth0
inet 10.1.1.230/24 scope global eth0
# Secondary ip
inet 10.1.1.231/24 scope global secondary eth0
在linux中在一个网卡上配置的同一个网段的ip有Primary IP和Secondary address之分,如果不是同一个网段的ip总有一个是Primary IP,一条链上的吊链结构中上面的那条主链中的IP是Primary IP,Secondary address是主链结点的子链结点中的IP,一 旦主链上一个节点被删除斗嫌历了,那么它的子链也将不复存在,随之被删除。
可以通过调整一个参数来实现,当一个primary ip被删除时,如果它有secondary ip的话,那么它的第1个secondary地址(长子)成为primary地址,这样就显得很合理了,要不然在删除 primary地址的时候,如果有程序用secondary地址,要么延迟删除,要么程序崩者雀溃。
开启的方法(主机重启后仍然生效的)
echo "net.ipv4.conf.eth0.promote_secondaries=1" >>/etc/sysctl.conf
ifconfig eth1:1 192.168.5.10/24 up:起别名
ifconfig eth0:1 192.168.8.5 netmask 255.255.255.0 up
ifconfig eth1:1 192.168.5.10/24 down : 删别名
ifconfig eth0:1 192.168.8.5 netmask 255.255.255.0 down
ifconfig eth1 up :启用eth1网卡
ifconfig eth1 down : 禁用eth1网卡,这种禁用是从数据链路层断掉,但是网络层ip还在,有时候能ping 通,大概率是缓存表没有更新
ifdown eth0 : 禁用网卡,删除了网络层ip
二者本质上没有什么区别,只是表述方式不同。如果你非常理解网络协议的原理以及网络的分层架构那么我想你就不会有这个问题,实际上 每一个网卡设备都有一个mac地址 , 但是却可以有多个网络层地址 ,比如IP地址,然而这个事实无法很好地像用户提供操作接口,所以就引出了ip别名(IP aliases)和辅助ip(secondary IP addresses)的概念。其实很容易理解这个事实,按照分层的思想,下层总是为上层服务,也就是为上层提供舞台,上层利用下层的服务,而不必让下层知道自己的情况,如果一个拥有合理mac地址的网卡没有配置网络层地址(比如IP地址)这件事合理的话,那么为这个设备配置多个IP地址也是合理的,好比一个ip可以对应多个应用层端口一样,也就是说,下层对上层总是一对多的关系,在分层架构中这种关系是合理的。
比如一台机器上运行着一个代理服务器或者负载均衡服务,代理服务器或者负载均衡服务和主服务器要监听相同的端口,那么就可以用secondary ip来解决,只要需要在同一网段监听同一个端口的应用都是吊链中子链存在的原因,因此可以说,主链对外部或者说对下面链路层虚拟了多块网卡, 而子链向上层虚拟了多台机器,配置了吊链结构的linux主机如果说只有一块网卡,那么外部会认为它有多块网卡,对于内部,应用层会认为彼此在不同的主机 上,这就是效果。
添加地址可以通过2个用户空间程序搞定,一个是ifconfig,另一个是ip addr add,ifconfig是基于ioctl进行添加地址的,而ip是基于netlink进行添加地址的,不管哪一种方式都可以达到目的。 但为何用ip addr add添加的ip地址用ifconfig看不到,而ifconfig设置的地址ip addr show却是可以看到?这个问题先放一放。
ip addr增加的虚拟ip在物理主机或虚拟机重启后失效。
方法1:把命令加到/etc/rc.local里面
ip addr add 192.168.26.74/32 dev eth1
方法2:高可用双机倒换后进行虚拟ip的增加
方法3:在/etc/sysconfig/network-scripts添加网卡名字,比如ifcfg-eth0:0,DEVICE=eth0:1 ---->子接口名
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.109.108
NETMASK=255.255.255.0
ip addr 操作ip时需要注意
ip addr和ifconfig的区别
『肆』 虚拟机怎么设置固定的ip
虚拟机设置固定的ip的步骤如下:
1、首先我们打开虚拟机的虚拟网络编辑器,打开vmvare菜单栏的编辑,选择虚拟网络编辑器。
『伍』 如何为VMware vcenter server的网卡eth0配置静态IP
A、以WINXP设置为例:
(1)点击 “网上邻居”——“本地连接”——“属性”;
(2)点击本地连接属性窗口中的“Internet协议 (TCP/IP)——属性”;
(3)在“常规”选项卡配置好IP地址、网关及DNS等参数(具体参数可查看路由器说明书或电话问询宽带供应商;如果无线路由设置打开了DCHP,可自动分配正确的IP地址的话,则可将IP地址及DNS等均设置为“自动搜索获得”)。
B、以WIN7无线网络设置为例:
(1)点击 “控制面板”——“网络和INTERNET”——“查看网络状态和任务”,选择连接了但无法上网的无线网络连接,在弹出窗口中点击其“属性”;
(2)点击无线网络连接属性窗口中的“Internet协议 (TCP/IPv4)——属性”;
(3)在“常规”选项卡"使用下面的IP地址"和“使用下面的DNS服务器地址”中配置好正确的IP地址、网关及DNS等参数(具体参数可查看路由器说明书或电话问询宽带供应商;如果路由器设置打开了DCHP,可自动分配正确的IP地址的话,则可将IP地址及DNS等均设置为“自动搜索获得”)。
如果同一网络中有其它电脑能够正常WIFI上网,则可通过“ipconfig /all”命令获取正确的IP地址等网络参数,其操作步骤如下:
(1)打开“开始”菜单,从所有程序中找到“附件”,再从附件中打开“命令提示符”,输入命令“ipconfig /all”并回车。
(2)执行命令显示所有网络配置后,找到IPv4地址这一项,后面的值即为可用IP地址,当然还有网关,DNS服务器的主,备用地址,将这些都记下。再回到Internet协议版本4 (TCP/IPv4)属性窗口,把刚才记下的数据,逐一填上,然后再勾上“退出时验证设置”,验证一下更好,确定。如果以上参数无效,则可查看路由器说明书或电话问询网络供应商以确定。
『陆』 如何为VMware vcenter server的网卡eth0配置静态IP
linux系统安装完成后启动网卡会自动获取一个ip。
如果需要静态ip,则需要用vim 编辑器修改配置文件,重启网络后生效。
#vim /etc/sysconfig/network-script/ifcfg-eth0
然后对网卡文件修改
DEVICE=eth0 #物理设备名
IPADDR=192.168.1.100 #IP地址
NETMASK=255.255.255.0 #掩码值
NETWORK=192.168.1.0 #网络地址(可不要)
BROADCAST=192.168.1.255 #广播地址(可不要)
GATEWAY=192.168.1.1 #网关地址
ONBOOT=yes # [yes|no](引导时是否激活设备)
USERCTL=no #[yes|no](非root用户是否可以控制该设备)
BOOTPROTO=static #[none|static|bootp|dhcp](引导时不使用协议|静态分配|BOOTP协议|DHCP协议)