On 6/4/2019 11:38 AM, Ben Pfaff wrote:
On Tue, Jun 04, 2019 at 06:08:00PM +0000, Eli Britstein wrote:
On 6/4/2019 8:24 PM, Ben Pfaff wrote:
On Tue, Jun 04, 2019 at 03:13:02PM +0000, Eli Britstein wrote:
Hello,
I would like to configure a GRE tunnel over IPv6, on a Linux system.
However, I encounter the following:
My command:
ovs-vsctl add-port br1 gre6 -- set interface gre6 type=ip6gre
options:remote_ip= 2001:db8:0:f102::11 options:key=55
Output:
ovs-vsctl: Error detected while setting up 'gre6': could not add network
device gre6 to ofproto (Address family not supported by protocol). See
ovs-vswitchd log for details.
ovs-vsctl: The default log directory is "/var/log/openvswitch".
In the log:
bridge|WARN|could not add network device gre6 to ofproto (Address family
not supported by protocol)
I notice that if I want to define a ip6gretap with “ip link”, there is a
need to use “-6” option, to set the correct family.
Is there a way to note the correct family (though I think should be
implicit by “ip6gre”)? Or maybe some other configuration?
OVS doesn't have an "ip6gre" interface type. Just use "gre".
I see it does in lib/netdev-vport.c, line 1222. Isn't that ip6gre?
Um, that's weird. We don't document it. I thought for sure that we
tried to make our "regular" tunnels just accept both IPv4 and IPv6
addresses.
Hmm, no documentation. Uh, that's not good. I'll check that.
Greg, I see that you're the author of ip6gre (and ip6erspan). Can you
comment on the intentions? If ip6gre is indeed the right way to
configure a GRE-over-IPv6 tunnel, then we should document it. I guess
the same goes for ip6erspan since I don't see any documentation for that
either.
There is an ip6gre tunnel type. Here is a script I use for it:
if [ "$#" -ne 3 ]; then
echo "Usage: add-ip6gre <name> <remote_ip> <key>"
exit 1
fi
ovs-vsctl add-port br0 $1 -- set interface $1 type=ip6gre \
options:remote_ip=$2 options:key=$3
Also, can you take a look at Eli's report below and perhaps give him
some tips?
Yes, I note that he is using the "local_ip" option - that can cause
issues some times depending on how
routing is set up.
Anyway, indeed trying with just "gre" the configuration passes OK.
However, I don't see any traffic on the other machine.
Port "gre6"
Interface "gre6"
type: gre
options: {key="55", local_ip="2001:db8:0:f102::f0",
remote_ip="2001:db8:0:f102::f1"}
$ ping 2001:db8:0:f102::f1
PING 2001:db8:0:f102::f1(2001:db8:0:f102::f1) 56 data bytes
64 bytes from 2001:db8:0:f102::f1: icmp_seq=1 ttl=64 time=0.440 ms
64 bytes from 2001:db8:0:f102::f1: icmp_seq=2 ttl=64 time=0.072 ms
I even configured an explicit OF rule to redirect to the gre6 port. I
see it is hit, but still no traffic.
Do I have to configure explicit routes or something of that kind?
Eli,
yes, you need to make sure routing is configured correctly for use of
the local_ip option. Unless you have
some specific need for it I wouldn't use it. See my script above for
creating an ip6gre tunnel. If you still have
problems then we can investigate further.
Thanks,
- Greg
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss