Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alternative route table and 0.0.0.0 routing #1324

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dd0ke
Copy link

@dd0ke dd0ke commented Jan 31, 2025

Added preliminary support for the creation of routes in alternative route tables on Linux, and using default routes via Nebula.
Nebula would crash anytime a default route was added or modified, regardless of the default route being added on to a separate table.

Requires new config param:

Specify the alternative routing table for created routes.

If unset, defaults to main routing table.

#alternative_routing_table: "my_alt_table"

Copy link

Thanks for the contribution! Before we can merge this, we need @dd0ke to sign the Salesforce Inc. Contributor License Agreement.

}

// If it's not a number, look up the table name in /etc/iproute2/rt_tables
content, err := os.ReadFile("/etc/iproute2/rt_tables")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The location of this file seems like it could be distro-specific. Should it be configurable? Can the information instead be obtained via netlink or /proc?

dst = netip.PrefixFrom(netip.IPv4Unspecified(), 0)
} else {
if x := r.Dst.IP.To4(); x == nil {
// Nebula only handles ipv4 on the overlay currently
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment is technically true, but #6 for IPv6 overlay support is gonna merge any day now!

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

Successfully merging this pull request may close these issues.

2 participants