Routing problem on VMs LAB 11.2
Hello,
I've done this lab exercise using my laptop and raspberry pi, and everything worked fine. However, when I try to do it on VMs, it just doesn't work.
Here's my setting:
First VM IPs
inet 192.168.122.223/24 brd 192.168.122.255 scope global dynamic ens3 inet 192.168.1.100/24 scope global ens3
First VM routing table
default via 192.168.122.1 dev ens3 proto dhcp src 192.168.122.223 metric 100 172.16.1.0/24 via 192.168.122.98 dev ens3 192.168.1.0/24 dev ens3 proto kernel scope link src 192.168.1.100 192.168.122.0/24 dev ens3 proto kernel scope link src 192.168.122.223 192.168.122.1 dev ens3 proto dhcp scope link src 192.168.122.223 metric 100
Second VM IPs
inet 192.168.122.98/24 brd 192.168.122.255 scope global dynamic ens3 inet 172.16.1.100/24 scope global ens3
Second VM routing table
default via 192.168.122.1 dev ens3 proto dhcp src 192.168.122.98 metric 100 172.16.1.0/24 dev ens3 proto kernel scope link src 172.16.1.100 192.168.1.0/24 via 192.168.122.223 dev ens3 192.168.122.0/24 dev ens3 proto kernel scope link src 192.168.122.98 192.168.122.1 dev ens3 proto dhcp scope link src 192.168.122.98 metric 100
What am I doing wrong ?
Thanks in advance for your help
Comments
-
Hi in your first VM GW = 192.168.122.98 ?
second VM GW = 192.168.122.223 ? --- two VM use 2 GW different addresses ?0 -
Hello codmd,
In order to reach 192.168.1.100 on VM1 the traffic from VM2 has to be routed through 192.168.122.223
192.168.122.98 -> 192.168.122.223 -> 192.168.1.100
And to reach 176.16.1.100 from VM1
192.168.122.223 -> 192.168.122.98 -> 176.16.1.100
0 -
Thank you for your input.
There is a note at the top of the lab indicating that more than one machine is best for routing exercises,however, the lab should function. Ii will reproduce this lab and post the solution.
Which VM hypervisor are you using?
Lee
0 -
Please verify that ip_forwarding is enabled on all the machines.
sysctl net.ipv4.ip_forward
0 -
Hello Lee,
Thanks in advance for your help!
I am using KVM.
I confirm that ip_forwarding is enabled on both machines.
0 -
The base machine also had ip_forwarding on?
Your configuration looks ok. Something else is causing issues, perhaps a firewall on the main machine?0 -
Sorry, by the base machine you mean my host which is running KVM hypervisor ? If that is the case, ip_forwarding is on
Also, the firewalld and ufw services on my host are stopped. If firewall services are stopped, iptables has no effect, right ?
Just in case, here's the relevant part of my FORWARD chain on the host machine
0 0 ACCEPT all -- virbr1 virbr1 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * virbr1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- virbr1 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
134K 174M ACCEPT all -- * virbr0 0.0.0.0/0 192.168.122.0/24 ctstate RELATED,ESTABLISHED
30737 2066K ACCEPT all -- virbr0 * 192.168.122.0/24 0.0.0.0/0
24 7449 ACCEPT all -- virbr0 virbr0 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Really appreciate your help !
0 -
It depends if you are using iptables or nft with systemd.
Please shutdown the firewall and verify there is no rules. The flush option should clean out the rules.0 -
On the three machines, Hypervisor,first and second, which of them have the libvirtd service running?
0 -
Hello Lee,
Sorry for the delay.
I cannot flush iptables because I have a lot of other routing options and filters set on my laptop so it seems potentially dangerous (?) That is why I asked if it suffice to shutdown ufw.service
libvirtd is running on hypervisor machine
0 -
Ok, I see. How about creating a new “private” network we can experiment on? The idea is only the vms can use this network, and assign ipaddresses manually through the hyper visor management. I do this a lot just to isolate the traffic so wireshark is less busy. Stay away from the default nat network (192.168.122.0/24 and only use it for outside access.
0 -
Hello Lee,
I've added a new private network 10.11.12.0/24 so now I have another adapter (ens9) on each VM with address 10.11.12.77 on VM1 and 10.11.12.99 on VM2.
After adding routes through new interfaces, the machines can ping each other and everything works as expected.
I'm really puzzled... Is there a way to find out why it wasn't working in the first place (or an explication at least) ?
Thanks a lot for your help !
k0dard
0 -
The software bridges control the paths the packets take, the default is set so packets are not returned on the same path that they arrived on. This is an option called "hairpin" and the default is off. Rather than messing about with the primary bridge, using another bridge with the option already on is easier.
Regards Lee1 -
Cool, thanks for the explanation !
0
Categories
- All Categories
- 207 LFX Mentorship
- 207 LFX Mentorship: Linux Kernel
- 734 Linux Foundation IT Professional Programs
- 339 Cloud Engineer IT Professional Program
- 166 Advanced Cloud Engineer IT Professional Program
- 66 DevOps Engineer IT Professional Program
- 132 Cloud Native Developer IT Professional Program
- 122 Express Training Courses
- 122 Express Courses - Discussion Forum
- 6K Training Courses
- 40 LFC110 Class Forum - Discontinued
- 66 LFC131 Class Forum
- 39 LFD102 Class Forum
- 222 LFD103 Class Forum
- 17 LFD110 Class Forum
- 34 LFD121 Class Forum
- 17 LFD133 Class Forum
- 6 LFD134 Class Forum
- 17 LFD137 Class Forum
- 70 LFD201 Class Forum
- 3 LFD210 Class Forum
- 2 LFD210-CN Class Forum
- 2 LFD213 Class Forum - Discontinued
- 128 LFD232 Class Forum - Discontinued
- 1 LFD233 Class Forum
- 3 LFD237 Class Forum
- 23 LFD254 Class Forum
- 689 LFD259 Class Forum
- 110 LFD272 Class Forum
- 3 LFD272-JP クラス フォーラム
- 10 LFD273 Class Forum
- 112 LFS101 Class Forum
- LFS111 Class Forum
- 2 LFS112 Class Forum
- 1 LFS116 Class Forum
- 3 LFS118 Class Forum
- 3 LFS142 Class Forum
- 3 LFS144 Class Forum
- 3 LFS145 Class Forum
- 1 LFS146 Class Forum
- 2 LFS147 Class Forum
- 8 LFS151 Class Forum
- 1 LFS157 Class Forum
- 18 LFS158 Class Forum
- 5 LFS162 Class Forum
- 1 LFS166 Class Forum
- 3 LFS167 Class Forum
- 1 LFS170 Class Forum
- 1 LFS171 Class Forum
- 2 LFS178 Class Forum
- 2 LFS180 Class Forum
- 1 LFS182 Class Forum
- 4 LFS183 Class Forum
- 30 LFS200 Class Forum
- 737 LFS201 Class Forum - Discontinued
- 2 LFS201-JP クラス フォーラム
- 17 LFS203 Class Forum
- 118 LFS207 Class Forum
- 1 LFS207-DE-Klassenforum
- LFS207-JP クラス フォーラム
- 301 LFS211 Class Forum
- 55 LFS216 Class Forum
- 50 LFS241 Class Forum
- 44 LFS242 Class Forum
- 37 LFS243 Class Forum
- 13 LFS244 Class Forum
- 1 LFS245 Class Forum
- 45 LFS250 Class Forum
- 1 LFS250-JP クラス フォーラム
- LFS251 Class Forum
- 146 LFS253 Class Forum
- LFS254 Class Forum
- LFS255 Class Forum
- 6 LFS256 Class Forum
- LFS257 Class Forum
- 1.2K LFS258 Class Forum
- 9 LFS258-JP クラス フォーラム
- 116 LFS260 Class Forum
- 156 LFS261 Class Forum
- 41 LFS262 Class Forum
- 82 LFS263 Class Forum - Discontinued
- 15 LFS264 Class Forum - Discontinued
- 11 LFS266 Class Forum - Discontinued
- 23 LFS267 Class Forum
- 18 LFS268 Class Forum
- 29 LFS269 Class Forum
- 200 LFS272 Class Forum
- 1 LFS272-JP クラス フォーラム
- LFS274 Class Forum
- 3 LFS281 Class Forum
- 8 LFW111 Class Forum
- 257 LFW211 Class Forum
- 180 LFW212 Class Forum
- 12 SKF100 Class Forum
- SKF200 Class Forum
- SKF201 Class Forum
- 791 Hardware
- 199 Drivers
- 68 I/O Devices
- 37 Monitors
- 98 Multimedia
- 174 Networking
- 91 Printers & Scanners
- 85 Storage
- 754 Linux Distributions
- 82 Debian
- 67 Fedora
- 16 Linux Mint
- 13 Mageia
- 23 openSUSE
- 147 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 351 Ubuntu
- 465 Linux System Administration
- 39 Cloud Computing
- 71 Command Line/Scripting
- Github systems admin projects
- 91 Linux Security
- 78 Network Management
- 101 System Management
- 47 Web Management
- 56 Mobile Computing
- 17 Android
- 28 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 366 Off Topic
- 114 Introductions
- 171 Small Talk
- 20 Study Material
- 534 Programming and Development
- 293 Kernel Development
- 223 Software Development
- 1.2K Software
- 212 Applications
- 182 Command Line
- 3 Compiling/Installing
- 405 Games
- 312 Installation
- 79 All In Program
- 79 All In Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)