netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Inter-VRF routing on a single machine
@ 2016-04-12 10:09 Darwin Dingel
  2016-04-12 16:48 ` David Ahern
  0 siblings, 1 reply; 2+ messages in thread
From: Darwin Dingel @ 2016-04-12 10:09 UTC (permalink / raw)
  To: netdev

Hi All,

Have anyone tried the following setup on a single machine with 2 TCP
sockets on different VRF's and succeeded?

- client_socket on VRF1
- server_socket on VRF2
- ip rules and iproutes for inter-VRF set up
- client_socket sends TCP connect to server_socket. skb was sent using
VRF1 interface
- skb received in loopback interface
- TCP code got SYN but cannot route back to VRF1 to send ACK.

I was wondering if this is a known limitation of VRF as of the moment,
or could work with proper iprules/iproute.


Thanks!

Darwin

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Inter-VRF routing on a single machine
  2016-04-12 10:09 Inter-VRF routing on a single machine Darwin Dingel
@ 2016-04-12 16:48 ` David Ahern
  0 siblings, 0 replies; 2+ messages in thread
From: David Ahern @ 2016-04-12 16:48 UTC (permalink / raw)
  To: Darwin Dingel, netdev

On 4/12/16 4:09 AM, Darwin Dingel wrote:
> Hi All,
>
> Have anyone tried the following setup on a single machine with 2 TCP
> sockets on different VRF's and succeeded?
>
> - client_socket on VRF1
> - server_socket on VRF2
> - ip rules and iproutes for inter-VRF set up
> - client_socket sends TCP connect to server_socket. skb was sent using
> VRF1 interface
> - skb received in loopback interface

That is the key problem there.

> - TCP code got SYN but cannot route back to VRF1 to send ACK.
>
> I was wondering if this is a known limitation of VRF as of the moment,
> or could work with proper iprules/iproute.

In general local (within a single system) routing does not work with top 
of tree. e.g., within a VRF you can not connect sockets or ping a VRF 
local address. Inter-vrf connections within a system also do not work.

I have patches from our 4.1 kernel that I have rebased to top of tree. I 
hope to test and send those out in the next week or so. It addresses the 
first problem -- connections within a VRF. While it does not resolve 
your problem of connecting across VRFs within a system I think it is the 
foundation for how to fix it.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-04-12 16:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-12 10:09 Inter-VRF routing on a single machine Darwin Dingel
2016-04-12 16:48 ` David Ahern

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).