home | list info | list archive | date index | thread index

Re: [OCLUG-Tech] static ip setup for Linux Mint 18 and similar

On Wed, Dec 14, 2016 at 02:29:44AM +0000, Rob Echlin wrote:
> Hi Alex,I would be interested in a short presentation on "modern"
> network methods.

Varied would be a better word. It may have been done in the past for
lack of *variety*, not because it's outdated—it's not, just not meant
for your use case.

I only implicitly intended to talk to home users, not people doing other
things in weird, wonderful, or awful contexts. Perhaps I should have
been clearer.

I have a custom router/SIT-tunnel terminator/firewall, and
DHCP daemon on a Soekris net5501—before I knew about cheaper ALIXes. I
doubt most of you have that. You most likely have pieces of plastic
Linksys or D-Link. Those come stock with the whole
modem/switch/router/AP/DHCPd/DNS recursor. Your Internet access is a
single point of failure in more than just one way. What's the evil in
having DHCP for address configuration? Not much, not when you can just
do distributed, slightly more fault-tolerant host and service discovery.

> For instance, I have never used Avahi,

You don't directly, you set it up so it works its magic behinds the
scenes through Glibc nsswitch. Most ‘mainstream’ distros probably
already set it up, so you most likely never even knew about it, and
maybe even used it indirectly from whatever shiny featureful file
explorer you have.

> and did not know what it was intended to be used for.

It's a clone of Bonjour, which was intended for configuration-less peer
to peer communication: file sharing, chat (formerly, everything in the
iCloud now), etc. It's a mix of distributed DNS (implemented using
multicast, the m in mDNS), and DNS service discovery (advertising
services using DNS¹).

    https://en.wikipedia.org/wiki/Zero-configuration_networking#DNS-based_service_discovery
    https://en.wikipedia.org/wiki/Multicast_DNS

> Would it also be suitable for use in a small office, say 3 to 100 staff?

Most likely not for the use case that seems to be implied here.

- I doubt your local network sysadmin would enjoy the broadcast traffic.
- It's only for peer to peer host and service discovery, not network
  autoconfiguration for Internet access. Use DHCP, DHCPv6, or route
  advertisements for that. I'm going to ignore BOOTP. Different solved
  problem!
- It doesn't work across subnets, which you may have many just because
  of physical reasons. You *could* use client hostname registration through
  DHCP there I suppose, but there are application-specific better
  distributed communication protocols for that.

People will have it anyway. Windows boxes will do LLMNR and NetBIOS. Mac
machines will do it… and most likely never be turned off. The question
is then pretty much moot.

I'd be happy to answer specific questions of the network stack some
people here most likely don't use—not that I'm an expert. There are also
some other people here who've done way more advanced (ForCES), or
obscure (LLDP, B.A.T.M.A.N., etc.) things that I'm not qualified to talk
about.

Just please don't use what I'll call the Human Host Discovery Protocol
(‘HHDP’, which Hadoop, doesn't scale), so that you can manage host
files, static IPs, etc., when it was never intended to solve *your* use
case. If you need static IPs, you will know, and you will not need me to
tell you that. Are you operating a behind NAT publicly accessible
service (e.g., web, email, whatever)? You probably want to static IP
that instead of setting up some weird single host dynamic addressing
kludge and integrate it into your firewall, etc.

Regards,

Alex Pilon

¹: I'm not aware of DNS-SD being widely used outside of this context.
   Mind you, outside of very *specific*² applications, when's the last time
   you've seen an SRV record?

²: I think I remember some “enterprise”-grade VoIP systems from Polycom
   used that for SIP proxy discovery.