How does puppet determine the macaccess fact? For example, my MacPro has two enternet ports. macaddress => 00:25:00:ef:fb:ce macaddress_en0 => 00:25:00:ef:cf:a1 macaddress_en1 => 00:25:00:ef:fb:ce if I change the wire to the other port (and set the IP address appropriately in network), I get the same factor results. It seems factor always report en1 as the "macaddress". Is "macaddress" supposed to be the active mac address? I suppose it would be difficult to determine ''active'' if the computer was plugged into two networks at the same time, but that is rarely the case in my environment. Any ideas on how to get the ''active'' mac address? --- Thanks, Allan Marcus 505-667-5666 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
I figured it out. It is an oversight in the macaddress.rb file for facter. I''ve already fixed it on my computer and I will open a bug to have it fixed. This only affects darwin nodes. --- Thanks, Allan Marcus 505-667-5666 On Apr 29, 2010, at 11:46 AM, Marcus, Allan B wrote:> How does puppet determine the macaccess fact? For example, my MacPro has two enternet ports. > > macaddress => 00:25:00:ef:fb:ce > macaddress_en0 => 00:25:00:ef:cf:a1 > macaddress_en1 => 00:25:00:ef:fb:ce > > if I change the wire to the other port (and set the IP address appropriately in network), I get the same factor results. It seems factor always report en1 as the "macaddress". Is "macaddress" supposed to be the active mac address? I suppose it would be difficult to determine ''active'' if the computer was plugged into two networks at the same time, but that is rarely the case in my environment. > > Any ideas on how to get the ''active'' mac address? > > > > > > --- > Thanks, > > Allan Marcus > 505-667-5666 > > > > -- > You received this message because you are subscribed to the Google Groups "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. > For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. >-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
"Marcus, Allan B" <allan@lanl.gov> writes:> How does puppet determine the macaccess fact? For example, my MacPro has two > enternet ports. > > macaddress => 00:25:00:ef:fb:ce > macaddress_en0 => 00:25:00:ef:cf:a1 > macaddress_en1 => 00:25:00:ef:fb:ce > > if I change the wire to the other port (and set the IP address appropriately > in network), I get the same factor results. It seems factor always report > en1 as the "macaddress". Is "macaddress" supposed to be the active mac > address? I suppose it would be difficult to determine ''active'' if the > computer was plugged into two networks at the same time, but that is rarely > the case in my environment. > > Any ideas on how to get the ''active'' mac address?Er, you noted that you "fixed" this elsewhere, but... The ''macaddress'' "fact" is a load of random garbage with no meaningful connection to reality: it picks a random address from the output of ifconfig, rather than anything useful. The idea of an "active" MAC is meaningless: my laptop currently has two "active" MAC addresses: 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.45 metric 1 192.168.201.0/24 dev wlan0 proto kernel scope link src 192.168.201.109 metric 2 169.254.0.0/16 dev eth0 scope link metric 1000 default via 192.168.1.1 dev eth0 proto static macaddress_eth0 => 00:1c:25:1e:26:6f macaddress_wlan0 => 00:1d:e0:55:48:45 There is no meaningful way to talk about one of those being "active" to the exclusion of the other: both are active, have real routes, and are interacting with external devices. You can even fail-over traffic between the two. The right fix would be to put that poor, meaningless fact to sleep before someone mistakes it for something actually *significant*. Daniel -- ✣ Daniel Pittman ✉ daniel@rimspace.net ☎ +61 401 155 707 ♽ made with 100 percent post-consumer electrons -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
On Fri, Apr 30, 2010 at 2:16 AM, Daniel Pittman <daniel@rimspace.net> wrote:> "Marcus, Allan B" <allan@lanl.gov> writes: > >> How does puppet determine the macaccess fact? For example, my MacPro has two >> enternet ports. >> >> macaddress => 00:25:00:ef:fb:ce >> macaddress_en0 => 00:25:00:ef:cf:a1 >> macaddress_en1 => 00:25:00:ef:fb:ce >> >> if I change the wire to the other port (and set the IP address appropriately >> in network), I get the same factor results. It seems factor always report >> en1 as the "macaddress". Is "macaddress" supposed to be the active mac >> address? I suppose it would be difficult to determine ''active'' if the >> computer was plugged into two networks at the same time, but that is rarely >> the case in my environment. >> >> Any ideas on how to get the ''active'' mac address? > > Er, you noted that you "fixed" this elsewhere, but... > > The ''macaddress'' "fact" is a load of random garbage with no meaningful > connection to reality: it picks a random address from the output of ifconfig, > rather than anything useful. > > The idea of an "active" MAC is meaningless: my laptop currently has two > "active" MAC addresses: > > 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.45 metric 1 > 192.168.201.0/24 dev wlan0 proto kernel scope link src 192.168.201.109 metric 2 > 169.254.0.0/16 dev eth0 scope link metric 1000 > default via 192.168.1.1 dev eth0 proto static > > macaddress_eth0 => 00:1c:25:1e:26:6f > macaddress_wlan0 => 00:1d:e0:55:48:45 > > There is no meaningful way to talk about one of those being "active" to the > exclusion of the other: both are active, have real routes, and are interacting > with external devices. You can even fail-over traffic between the two. > > > The right fix would be to put that poor, meaningless fact to sleep before > someone mistakes it for something actually *significant*. >Yep. The goal for Facter is to have these facts eventually namespaced, though we probably will have to keep existing fact names for backwards compatibility. That is to say, I want to be able to use: nic::wlan0::mac_address and nic::eth0::ip_address, etc. ipaddress itself is not so predictable either in a multi NIC setup, so being explicit is good. Even virtual machines can be dual homed. --Michael -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.