Interface Detection Infiniband MAC wrong
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OCS Inventory: Unified Unix Agent |
Fix Released
|
Low
|
Frank |
Bug Description
Machines with infiniband adapters are all listed with identical MAC-adresses which is obviously a problem of the 20 byte hardware address of those adapters in contrast to the standard 8 byte address.
Interface detection, as far as I can see, is done bei "ifconfig" which, btw is deprecated. ifconfig truncates the hardware address to 8 byte even if it's an infiniband interface:
> ifconfig -a
Ifconfig uses the ioctl access method to get the full address information, which limits hardware addresses to 8 bytes.
Because Infiniband address has 20 bytes, only the first 8 bytes are displayed correctly.
Ifconfig is obsolete! For replacement check ip.
ib0 Link encap:InfiniBand HWaddr 80:00:00:
inet addr:192.
inet6 addr: fe80::225:
UP BROADCAST RUNNING MULTICAST MTU:2044 Metric:1
RX packets:6266 errors:0 dropped:0 overruns:0 frame:0
TX packets:560 errors:0 dropped:7 overruns:0 carrier:0
RX bytes:508192 (496.2 KiB) TX bytes:48468 (47.3 KiB)
> ip link show ib0
4: ib0: <BROADCAST,
link/infiniband 80:00:00:
So I boldly suggest and humbly request rewriting the perl code for network interface detection using "ip". It looks like the database should be able to store the different sized MACs (varchar(255)) so it seems to "only" be the code
Regards,
Maik
Changed in ocsinventory-unix-agent: | |
assignee: | nobody → Frank (frank-bourdeau) |
importance: | Undecided → Low |
status: | New → Fix Committed |
Changed in ocsinventory-unix-agent: | |
status: | Fix Committed → Fix Released |
I'm actually working on a fix.