Skip to content

Conversation

RobWei
Copy link
Contributor

@RobWei RobWei commented Oct 1, 2020

Since we are now running a tunneligger broker instance on a routed IP address, I noticed that the tunneligger does not work with a loopback interface.

To the basic structure:
Our IPv4 subnet is announced via BGP on several interfaces. An IP from the subnet is configured on the loopback interface.

A short analysis of the pollable object showed that the UDP socket is bound to an interface. I could not find out why this was done.

This change allows to define interfaces optionally.

Since we are now running a tunneligger broker instance on a routed IP address, I noticed that the tunneligger does not work with a loopback interface.

To the basic structure:
Our IPv4 subnet is announced via BGP on several interfaces. An IP from the subnet is configured on the loopback interface.

A short analysis of the pollable object showed that the UDP socket is bound to an interface.  I could not find out why this was done.

This change allows to define interfaces optionally.
@mitar
Copy link
Member

mitar commented Oct 1, 2020

Have you tested this? Can you add a test case to the CI for this to be tested to work without interface and IP bound to localhost?

@RalfJung
Copy link
Member

RalfJung commented Oct 1, 2020

The CI failure is likely our spurious LXC issue -- lxc/lxc#3467.

@RalfJung
Copy link
Member

RalfJung commented Oct 5, 2020

Have you tested this? Can you add a test case to the CI for this to be tested to work without interface and IP bound to localhost?

@mitar Our CI is quite hard to navigate, what did you imagine here?
Currently the broker config for CI is set up here, I guess we could remove the interface option for some of the CI runs?

@mitar
Copy link
Member

mitar commented Oct 6, 2020

My main worry is that we are changing something here and we are not sure why it was required in the first place. Is this related to NAT stuff which was in there in the past? In any case, making this optional is a new feature which we should make sure that it a) really works b) keeps working. I am currently not convinced into any of those. Is interface really optional? Do things really keep working without it? Do they work when you have multiple MTUs enabled?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants