Facter and network facts

Ashley Penney
Sun, 29 Jul 2012 13:36:19 -0000

Hi everyone,

I''ve been looking at the facter code that handles networking facts in
2.x and trying to refactor it to be more useful in various
circumstances.  I''ve ran into issues with ipv4/ipv6 as well what to
represent and when and thought I''d see what others in the community
think.  Part of this is caused by my ipv6 ignorance so if you''re an
expert speak up!

Here''s my actual eth0 interface:

eth0      Link encap:Ethernet  HWaddr 4c:72:b9:24:7d:28
          inet addr:198.245.51.174  Bcast:198.245.51.255  Mask:255.255.255.0
          inet6 addr: fe80::4e72:b9ff:fe24:7d28/64 Scope:Link
          inet6 addr: 2607:5300:60:6ae::1/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3557317 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3550516 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1907155877 (1.9 GB)  TX bytes:2457471705 (2.4 GB)
          Interrupt:20 Memory:fe900000-fe920000

In this case you can see we have 3 ip''s bound to eth0, two of them
being IPv6.  Currently we end up with facts like:

network_eth0
netmask_eth0
ipaddress_eth0

Do these really make sense in the modern world?  Do we really only
have a single IP bound to interfaces and how useful is it to know
about the ipv4 netmask of eth0 when you''re thinking ipv6.
I''ve also
seen various request for gateway facts but those are tricky too,
machines can have more than one default gateway and other tricks.
Then the one I''m most unhappiest with is the ipaddress fact - it just
looks for the first ip that doesn''t match 127.0.0.1 in an
''ifconfig''
and picks it.  Does this work for the majority of people or are some
people unable to use ipaddress as a useful fact as a result?

So what I''m asking the community is "in terms of facts for
networking
what would you like to see?" as well as "how should a modern fact
gathering system think about and display networking information".
Structured facts will probably make this easier but in the meantime
I''m sure we can improve the current crop of facts to be more useful.

--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To post to this group, send email to puppet-dev@googlegroups.com.
To unsubscribe from this group, send email to
puppet-dev+unsubscribe@googlegroups.com.
For more options, visit this group at