Opened 4 years ago

Last modified 20 months ago

#11862 assigned enhancement

Net server multi-protocol rework

Reported by: kallisti5 Owned by: nobody
Priority: high Milestone: R1
Component: Servers/net_server Version: R1/Development
Keywords: ipv6 net server dhcp dhcpv6 Cc:
Blocked By: Blocking: #11861
Has a Patch: no Platform: All

Description (last modified by kallisti5)

The AutoconfigLooper is very IPv4 centric. We need to extend AutoconfigLooper (and the net server in general) to function with a wider set of protocols.

haiku/src/servers/net

Base features required to be functional in bold below...

  • IPv4 can be automatically configured via DHCP, Zeroconf, or 169.254.x.x based on MAC
  • IPv6 can be router advertisement, or DHCPv6

Examples:

  • AutoconfigLooper checks for things like "auto_configured" at the interface level
  • NetServer stores "auto_config" on the interface level and not the protocol level
  • Other parts of the network stack rely on auto_configure being set on the interface

Interface level auto_config without network family should be made to assume legacy, ipv4 only for BeOS compat where needed.

Change History (7)

comment:1 Changed 4 years ago by kallisti5

Description: modified (diff)

comment:2 Changed 4 years ago by anevilyak

Blocking: 11861 added

(In #11861) Double post of #11862.

comment:3 Changed 4 years ago by axeld

There was no auto config in BeOS IIRC; there is no reason to keep it around. I think that was just short sighted me who introduced them in the first place.

I'm not sure where to put those, but feel free to make a suggestion :-)

Maybe it makes sense to keep IFF_CONFIGURING around for informative uses (like in the network status replicant).

comment:4 Changed 4 years ago by kallisti5

@anevilyak Thanks for fixing the double post, sorry for the spam.

@axeld Ah, didn't know auto-release didn't exist on BeOS. I completely agree IFF_CONFIGURING could be useful "any time any kind of automatic configuring is taking place". We just need to break out the rest of the checks to the protocol level.

I went ahead and linked to this ticket for GSOC ideas :-)

comment:5 Changed 3 years ago by doneill

It might be worth mentioning that link-local IPv6 addresses need assignment prior to DHCPv6 or SLAAC, which as far as I can tell are currently not (hrev50057).

Besides that, is it even possible to assign multiple addresses of the same family to an interface with the current implementation? At least it doesn't appear to be currently possible with the ifconfig implementation available in trunk.

comment:6 Changed 3 years ago by axeld

Yes, it's possible to add any number of addresses to a single interface.

comment:7 Changed 20 months ago by axeld

Owner: changed from axeld to nobody
Status: newassigned
Note: See TracTickets for help on using tickets.