On Oct 10, Matt Domsch <Matt_Domsch@xxxxxxxx> wrote: > It does require a change in behavior for a system administrator. > Instead of hard-coding 'eth0' into her scripts, she uses > '/dev/net/by-function/boot' or somesuch. But then that name is > guaranteed to always refer to the "right" NIC. Every admin I've > spoken to is willing to make this kind of change, as long as they get > the consistent, deterministic naming they expect but don't have > today. And it does require patching userspace apps to take both a > kernel device name, or a path, and to resolve the path to device name > or ifindex. We wrote libnetdevname (really, one function), and have > patches for several userspace apps to use it, to prove it can be done. For the records, before being a distribution developer I am a system administrator (who designed and manages many firewalls with multiple network interfaces) and I am still unconvinced that what you are proposing is a practical solution and that its downsides justify the significant changes both in software and in system administration practices that it requires. The first issue which greatly concerns me is the need to modify *every* userspace application and kernel tool (what about iptables? What about the kernel logs?): from an users experience point of view it would be very annoying if different applications used different names to refer to the same network device. I am also concerned with the practical implications of trying to use such long (and unusual) names: IFNAMSIZ is 16, so user interfaces tend to assume both short names and that they match something like /^[a-z0-9]+$/. What about e.g. distribution scripts which use the interface name as a file system path component? Do you already have a (standard) scheme to losslessly convert the names to a form without slashes? -- ciao, Marco
Attachment:
signature.asc
Description: Digital signature