gre tunnel issues - one sided communication - networking

I have two machines:
Ubuntu 16.04 server VM (172.18.6.10)
Proxmox VE5 station (192.168.6.30)
they are communicating through a third machine that forwards packets between the two. I want to create a gre tunnel between the two machines and to do that and make it persistent I have edited the /etc/network/interfaces and added a gre interface and tunnel to be made on boot up as the following:
After they were created I have tried to ping one machine from the other to check connectivity, pinging the gre interface IP address (10.10.10.1 and 10.10.10.2). The issue is that when I ping the Proxmox machine from Ubuntu I get no feedback, but when I run tcpdump on gre1 on Porxmox I see that the packets are received and there is a ICMP reply outgoing:
When I run the ping the other way around and check it with tcpdump on the Ubuntu machine I get nothing. I understand that the issue is when packets leave Proxmox to Ubuntu via gre1 and get lost or blocked because Ubuntu can clearly send Proxmox packets but the reply never comes back. How can I fix this?

Check if you have packet forwarding enabled for the kernel of the 3rd machine that you user for the communication of the other 2 machines
Check /etc/sysctl.conf and see if you have this:
net.ipv4.ip_forward = 1
if it's commented (#) uncomment it, save the file and issue a:
sysctl -p
Then try again the pings...

Related

Configuring Solaris 10 SPARC for internet ready connection

I have a Oracle SPARC server with Solaris SPARC 10 OS installed
I have a domestic router/modem box from my ISP in my house. I have a wifi extender in my room which has a RJ45 female socket for ethernet connection. The Wifi extender is configured properly to act as a bridge for machines to connect with my router/modem.
I have setup my NIC card in Solaris 10 with the following commands
dladm show-link
ifconfig e1000g0 plumb up
ifconfig 192.168.0.22 netmask 255.255.255.0 broadcast + up
I have put the IP address of 192.168.0.22 into the /etc/defaultrouter file and again the same IP address in /etc/hostname.e1000g0 file
Next I typed in 'init 6' to reboot Solaris 10.
Once Solaris 10 is up again I can successfully ping the address of 192.168.0.22. But my router obviously needs a password as it is a WPA protected domestic router. This means programs like WGET which needs an URL address to download data doesnt work ATM. Does anyone know what to do to complete the tasks of making my server internet ready. Thanks in advance for any help given to me
Regards
You do not put your Solaris IP address in /etc/defaultrouter
You put the address of the router, which must be in the local network of your Solaris box. It may end with .1 or .250--you need to find out (try ping). For example, in your case it may be 192.168.0.1. After that you also need to configure /etc/resolv.conf with your DNS servers.

Host Only connection NetBSD to Windows

I have NetBSD-4.0.1-x68k installed as a guest virtual machine on Windows (using the XM6i 68030 emulator for windows 7). I am trying to setup a host only connection on the NetBSD guest. However, I can't ping the guest from the host unless I run:
tcpdump -i ne0 #executed on guest
ping 192.168.2.17 #executed on host
ping 192.168.2.1 #executed on guest
Right after I run these commands in that order I can continue to ping successfully ...but not forever, after a certain point I am unable to ping again from neither the host nor guest. Also, when I restart the system, I still can only do pings unless I do the above process beforehand, and again, not forever.
Is there anyway I can setup this host only connection without using tcpdump as a short term temporary handicap?
I turns out on the latest version of XM6i. In order to get a complete 68030 networking emulation you need to use tcpdump command on boot. So there is no way around this.

arp response received but ICMP packets are not reaching to own host even

My environment has 2 hosts and a VM on each host. NVGRE tunnel is created, as VMs and Hosts belongs to different subnets. I am using Windows server 2012 R2 hosts and same VMs. Hosts are connected back to back. If I put VMs and Hosts in same subnet Ping works.
Both the VMs are receiving ARP requests and responses from each other. ARP cache of each VM is having dynamic entry of other VM.
BUT ICMP request packet from VM is not even seen on its Host.
You cannnot just ping from one host to another host.
To ping provider address from your host, -p option is needed.
Example:
$address = (Get-NetVirtualizationProviderAddress).ProviderAddress
ping -p $address
Please put virtualization lookup records when you need more help.
Run following commands as administrator.
Get-NetVirtualizationLookupRecord
Get-NetVirtualizationCustomerRoute
Also make sure your VM's firewall allows ICMP echo.

multicast packages are there but can not be accessed

my box runs ubuntu 14.04. it is an old 32bit box with 4 ether nics.
what i want to achieve is multicast routing from an upstream interface (eth2.8 - dynamic ip) to a downstream interfcae (eth0.13 - 192.168.40.1).
my laptop attached to above box via eth0.13 can read multicast from 40.1 like a charm.
i verified that by running vlc as a server on 40.1
cvlc -vvv ./POS-Movie-927x521.mov --sout udp:239.255.12.42 --ttl 12
and receiving the stream on my laptop with
vlc udp://#239.255.12.42
that works even the other way round, sending with my laptop and receiving on the serverside.
so why is it not possible to access multicast packages via eth2.8?
joining works. i can verify arriving packages by
sudo tcpdump -i eth2.8 -n multicast
but it seems simply impossible to access these packages without tcpdump!
this exactly describes what i am experiencing, alone the solution is not the same.
here some sysctl parameter:
net.ipv4.conf.eth2/8.rp_filter = 1
net.ipv4.conf.eth2/8.mc_forwarding
= 1
net.ipv4.conf.eth2/8.forwarding = 1
there is no difference between sysctl params of eth2.8 and eth0.13.
and yes, this happens even if the firewall is down!
any hint appreciated, you'll make my week!
/markus
the unicast route to the upstream hosts where missing!
the interface did accept incoming igmp traffic from an ip in its own class c net but refused packets from other hosts.
unluckily the upstream is from some completely diffent network.
a simple "ip route add ip/mask dev eth2.8" finally solved all problems.

Bridging commands and concept: Ubuntu 12.04 LTS

I am using bridging as a technique to connect 2 virtual interfaces together in Ubuntu 12.04.
One of the interfaces is a mininet interface (www.mininet.org).
I am getting a lot of TCP retransmission packets, and the connectivity is extremely slow.
Trying to debug this issue.
I have tried to enable STP on the bridge, but it doesn't happen:
~$ brctl show
bridge name bridge id STP enabled interfaces
s1 0000.f643bed86249 no s1-eth1
s1-eth2
s1-eth3
s2 0000.caf874f68248 no s2-eth1
~$ sudo brctl stp s2 on
~$ brctl show
bridge name bridge id STP enabled interfaces
s1 0000.f643bed86249 no s1-eth1
s1-eth2
s1-eth3
s2 0000.caf874f68248 no s2-eth1
I am confused as to why this command does not work.
Also, auto-negotiation is off in these interfaces.
Does autonegotiation matter for virtual interfaces?
Should I manually set auto-negotiation to 'on' or set the duplex and speed of virtual interfaces?
Also, ping and dns work perfectly fine. For http traffic, SYN, SYN-ACK and ACK is as expected, however, the GET/POST request gets retransmitted 5-6 time immediately after the first GET/POST.
This is a confusing thing for me now and any links/pointers/commands will be helpful.
Please direct me to the right forum if this is not a question for stackoverflow. TIA.
The STP is founded to solve the Lay2 looping and the broadcast storm that the Lay2 looping cause. It's nothing about the TCP retransmission.
Maybe you can check the DNS resolvf time out in your case, and turn on the web server debug log.

Resources