From: Kostas Peletidis <kpeletidis@gmail.com>
To: netdev@vger.kernel.org
Subject: Creating FOU tunnels to the same destination IP but different port
Date: Fri, 13 Apr 2018 17:57:03 +0100 [thread overview]
Message-ID: <CAK+mtNMh_CS_sysRM3GPr4QAfRdpXC58FpuciNv_3+0GyXiyfQ@mail.gmail.com> (raw)
Hello,
I am having trouble with a particular case of setting up a fou tunnel
and I would really appreciate your help.
I have a remote multihomed host behind a NAT box and I want to create
a fou tunnel for each of its IP addresses, from my machine.
A typical case would be something like that (output from the local machine):
# ip tun
ipudp09602: ip/ip remote 135.196.22.100 local 172.31.0.140 ttl 225
ipudp00101: ip/ip remote 148.252.129.30 local 172.31.0.140 ttl 225
ipudp09604: ip/ip remote 77.247.11.249 local 172.31.0.140 ttl 225
tunl0: any/ip remote any local any ttl inherit nopmtudisc
ipudp00102: ip/ip remote 213.205.194.18 local 172.31.0.140 ttl 225
However, if the remote end has the same IP address with the remote end
of an existing tunnel (but a different remote port)
tunnel creation fails. In this example there is already a tunnel to
135.196.22.100:32270 and I wanted to create a new tunnel
to 135.196.22.100:24822 as below:
# ip link add name ipudp09603 mtu 1356 type ipip \
remote 135.196.22.100 \
local 172.31.0.140 \
ttl 225 \
encap fou \
encap-sport 4500 \
encap-dport 24822
RTNETLINK answers: File exists
The remote IP addresses in this case are identical because there is a
NAT box in the way, but the port numbers are different. The source
address and port are the same in all cases.
I noticed that ip_tunnel_find() does not check port numbers - being IP
and all - so I am thinking that a not-so-elegant way to do it is to
get the port numbers from the netlink request and have
ip_tunnel_find() compare them against encap.{sport, dport} of existing
tunnels.
Is there a better way to create a second fou tunnel to the same IP
address but a different port? Use of keys as unique tunnel IDs maybe?
Any feedback is appreciated. Thank you.
Regards,
Kostas
next reply other threads:[~2018-04-13 16:57 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-13 16:57 Kostas Peletidis [this message]
2018-04-14 1:07 ` Creating FOU tunnels to the same destination IP but different port Tom Herbert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAK+mtNMh_CS_sysRM3GPr4QAfRdpXC58FpuciNv_3+0GyXiyfQ@mail.gmail.com \
--to=kpeletidis@gmail.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).