Kvm启动ubuntu虚拟机无法联网

1. kvm是否启动镜像

1) 现象:kvm启动qcow2 ubuntu虚拟机过程中,提示

  • error were found when checking the disk drive for boot
    Kvm启动ubuntu虚拟机无法联网_第1张图片

2) 解决方案

  • 镜像硬盘引导坏了,建议更换qcow2镜像。
  • 更换完了镜像:启动后:
    如图所示:有三个网卡driver,说明镜像启动过程中正确配置网卡。
    Kvm启动ubuntu虚拟机无法联网_第2张图片
  • Dhclient eth0可以看到网卡可以正确分配IP地址。
    Kvm启动ubuntu虚拟机无法联网_第3张图片
  • 如若不能正确分配Ip,说明dhcp服务dnsmasq没有启动。
    1. 重启dhcp服务器
    2. 手动配置Ip。见链接:
      http://blog.csdn.net/qiqishuang/article/details/51541049

2. 检查网络链接

1) 检查DNS状态

  • 现象:手动配置Ip地址后发现,可以ping通网关120.0.0.1.但是不能ping通www.baidu.com。说明Dns服务器可能有问题。vi /etc/resolve.conf修改nameserver 192.168.1.4 或者8.8.8.8、8.8.4.4
    Kvm启动ubuntu虚拟机无法联网_第4张图片

2) 检查网络拓扑链接

  • 现象:DNS正确配置后,去宿主机看发现:ping DNS服务器发现同样ping不通
    这里写图片描述

  • 解决方案:经检查网络拓扑链接ovs-vsctl show没有问题。

  • 举例说明:运行BA run.sh脚本突然Node2节点断了。

1 从其他服务节点ssh上去。查看路由表发现网关均从br0出去…
2 本机流量全部从br0走,接下来查看br0的连接情况

root@node2:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.19.254  0.0.0.0         UG    0      0        0 br0

3 发现br并没有连接网卡eth0,所以挂上br0即可

    Bridge "br0"
        Port "br0"
            Interface "br0"
                type: internal

修改如下:

    Bridge "br0"
        Port "br0"
            Interface "br0"
                type: internal
        Port "eth0"
            Interface "eth0"

3) 检查NAT链接状态
Kvm启动ubuntu虚拟机无法联网_第5张图片
* NAT检查如下。
1. 查看NAT是否开启:有无ba-router

  1. 检查NAT各个网口配置状态
root@node2:/opt/zq# ip netns
ba-router
by-router
by-dhcp
root@node2:/opt/zq# ip netns exec ba-router ifconfig
ein-if    Link encap:Ethernet  HWaddr b2:fd:be:2f:ea:56  
          inet addr:192.168.19.224  Bcast:192.168.19.255  Mask:255.255.255.0
          inet6 addr: fe80::b0fd:beff:fe2f:ea56/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:29989 errors:0 dropped:431 overruns:0 frame:0
          TX packets:11001 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:32724214 (32.7 MB)  TX bytes:798147 (798.1 KB)

rout-if   Link encap:Ethernet  HWaddr b6:17:e8:4b:14:f6  
          inet addr:120.0.0.1  Bcast:120.0.255.255  Mask:255.255.0.0
          inet6 addr: fe80::b417:e8ff:fe4b:14f6/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11082 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16879 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:802068 (802.0 KB)  TX bytes:31648717 (31.6 MB)

4) 检查NAT路由表状态

  • 由上可知:NAT链接没有问题,所以在查看下NAT路由表:ip netns exec ba-router route -n

  • 现象:查看下路由表route -n,发现没有路由192.168.1.0/24网段无法出去,默认丢弃或者 默认网关192.168.19.254

root@node2:/tmp/zq# ip netns exec ba-router route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
120.0.0.0       0.0.0.0         255.255.0.0     U     0      0        0 rout-if
192.168.19.0    0.0.0.0         255.255.255.0   U     0      0        0 ein-if
  • 解决方案:添加NAT网关: ip netns exec ba-router route add default gw 192.168.19.254
ip netns exec ba-router route add default gw 192.168.19.254

5) 查看NAT路由表

root@node2:/tmp/zq# ip netns exec ba-router route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.19.254  0.0.0.0         UG    0      0        0 ein-if
120.0.0.0       0.0.0.0         255.255.0.0     U     0      0        0 rout-if
192.168.19.0    0.0.0.0         255.255.255.0   U     0      0        0 ein-if

6)添加完路由表后,可以ping通google DNS服务器了。
root@node2:/tmp/zq# ip netns exec ba-router ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=43 time=59.5 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=43 time=59.5 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=43 time=59.5 ms
^C
— 8.8.8.8 ping statistics —
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 59.574/59.574/59.574/0.000 ms

7)本机路由表:route -n

root@node2:/tmp/zq# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.19.254  0.0.0.0         UG    0      0        0 br0
20.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth1
120.0.0.0       0.0.0.0         255.255.0.0     U     0      0        0 ba-dhcp-if
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
192.168.19.0    0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

你可能感兴趣的:(虚拟机,ubuntu,kvm,网卡,路由表)