On 03/04/2016 03:42 PM, Bob Goodwin wrote:
On 03/04/16 18:01, Rick Stevens wrote:
On 03/04/2016 01:38 PM, Bob Goodwin wrote:
I have two Fedora-23 computers running virtual machine manager, this one
connects to my ethernet LAN and connects to the internet, the second
one, I've just set up connects to the LAN but not the internet,
something is wrong with VMM configuration.
Are both of these machines you're talking about acting as hosts for
virtual machines?
.
Both F23 boxes have vmm running in them. The ifconfig data is from
Centos7 in the VM's rather than the host machine.
Oh, then I misread your initial statement. I thought you were talking
about the hosts, not the VM guests.
Ok. The first VM (the one that's working) has a reasonable IP address
on eth0 (one from the DHCP server part of libvirtd). The second one
does not have an IP address on eth0 and that's your problem.
Check the /etc/sysconfig/network-scripts/ifcfg-eth0 file. It should
look sorta like this (things like the UUID, HWADDR and DNS stuff will be
different):
TYPE="Ethernet"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="eth0"
UUID="e90b53e3-6248-485b-9d52-7388f719c43d"
ONBOOT="yes"
DNS1=162.249.56.204
DNS2=162.249.56.205
HWADDR=52:54:00:80:03:2D
PEERDNS=no
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
'BOOTPROTO="dhcp"' indicates that it will try to get an IP address from
libvirtd's DHCP server. 'ONBOOT="yes"' means that it will try to start
the device when booted. If that's set to "no", then just try
ifup eth0
and see if eth0 gets an IP address. If it does, edit the file (as root)
and change it to "yes" so it will start on the next reboot.
This one, the working one shows:
[bobg@localhost ~]$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.122.30 netmask 255.255.255.0 broadcast
192.168.122.255
inet6 fe80::5054:ff:fe65:23a6 prefixlen 64 scopeid 0x20<link>
ether 52:54:00:65:23:a6 txqueuelen 1000 (Ethernet)
RX packets 162 bytes 11984 (11.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 89 bytes 11226 (10.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
That is an odd IP address to see on eth0 on a virtual machine _host_.
I'd expect a virtual machine _guest_ to have an eth0 address on that
192.168.122 network.
192.168.122 is typically used by the libvirt mechanism to provide IP
addresses to virtual machines. libvirt runs a DHCP server offering IPs
on the 192.168.122 network to the virtual machines running under it.
Be that as it may, since the IP is on eth0, it's valid and your router
is NATting it and allowing you out to the internet.
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 20 bytes 1716 (1.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 20 bytes 1716 (1.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
This is what I see in the other one that does not connect:
[bobg@localhost ~]$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 52:54:00:c8:72:84 txqueuelen 1000 (Ethernet)
RX packets 39 bytes 2028 (1.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Note that eth0 does NOT have an IP address, so it can't do anything on
the LAN (or the Internet).
.
Yes, I understand that, but after following the prompts for installing
the centos system in the vm and VMM itself this is what resulted and I
don't know what it is supposed to look like. All I could do was compare
the working with the non working.
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 128 bytes 11136 (10.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 128 bytes 11136 (10.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast
192.168.122.255
ether 52:54:00:71:23:11 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0 (virtual bridge zero) is created by libvirt and used to route
traffic INSIDE that machine between itself and the virtual machines
it's hosting. Note that it has the 192.168.122.1 address (typical of a
VM host acting as a router for the virtual machines running under it)
and _virtual_ machines running on that host it will have addresses on
that 192.168.122 network applied to their eth0 interfaces (assuming
they're configured to use DHCP to get an address).
[bobg@localhost ~]$ ping -c 3 8.8.8.8
connect: Network is unreachable
I don't know what I might have done differently on the seond VM install,
incidentally both are installed usingthe same centos 7 iso if that is of
interest ...
Any suggestion of what to do next will be appreciated,
Give an IP address to eth0 on the machine that's not working and/or
leave it using DHCP and ensure you have a DHCP server on the network
it's plugged into.
Your network appears a bit weird to me. My LAN uses 192.168.1.0/24
with 192.168.1.1 on the LAN side of my router (the WAN side of the
router has a routable public IP). The router also has a DHCP server
on it. I prefer to use fixed IPs for my non-mobile devices, so I have
the DHCP server restricted to only offer addresses between 192.168.1.192
and 192.168.1.254, letting me use 192.168.1.2 through .191 for fixed
IPs.
My first VM host (vmhost-a) has a fixed address of 192.168.1.10 on eth0
(on the LAN). My second VM host (vmhost-b) has a fixed address of
192.168.1.15 on eth0 (also on the LAN). Both of them have default
routes that specify 192.168.1.1 (the IP address of my router on the
LAN).
When libvirtd starts on both vmhost-a and vmhost-b, it creates a
virbr0 interface on each and gives it an address of 192.168.122.1. The
thing to note here is that even though both machines have the same
address on virbr0, that network is only visible INSIDE the physical
machine. This means the 192.168.122 network on vmhost-a does not
conflict with the 192.168.122 network on vmhost-b.
If I start a VM on vmhost-b and that VM has its eth0 configured to use
DHCP, it will get an address from the DHCP server running as part of
libvirtd on vmhost-b. It will get an IP address of 192.168.122.x (we'll
use .10 for an example) and a default gateway of 192.168.122.1.
Now, if that VM sends traffic out, it will go through its simulated
eth0 (192.168.122.10) and libvirtd will see it on its virbr0 at
192.168.122.1. libvirtd will then route the traffic out its eth0
(192.168.1.15) and the router will pick that up off its 192.168.1.1
interface and route it through to the internet. Replies go back down
the same pipeline in reverse. Remember, the router sees the traffic
as coming from vmhost-b, so replies go back to it. vmhost-b reroutes
the reply traffic through its virbr0 back to the VM.
I hope my example clears it up a bit. There's a lot to absorb there.
Yes, everything helps. My LAN address scheme is about the same as yours.
I think I will try assigning a fixed address to the second box, if that
works I'll do the same on the one that is working ...
I'll report the result tomorrow'
Thank you,
Bob
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer, AllDigital ricks@xxxxxxxxxxxxxx -
- AIM/Skype: therps2 ICQ: 226437340 Yahoo: origrps2 -
- -
- I will go to my happy place. I WOULD go to my happy place.... -
- if I knew where the @$>&$@#* it is! -
----------------------------------------------------------------------
--
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer, AllDigital ricks@xxxxxxxxxxxxxx -
- AIM/Skype: therps2 ICQ: 226437340 Yahoo: origrps2 -
- -
- Money can't buy happiness, but it can take the sting out of being -
- miserable! -
----------------------------------------------------------------------
--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org