FR2.0.3 - UCD-SNMP 4.2.7 communication does not work on 64 bits Freebsd (but does on 32 bit Freebsd)

Thomas Fagart tfagart at brozs.net
Wed May 21 14:00:40 CEST 2008


Hello, I've got several Freeradius servers running on Freebsd. I'd like to
get them discuss with SNMP agent for statistics (using SMUX). I've notice
that this is working on 32 bits Freebsd 

-------------------- 
portable-taf# snmpwalk -v 1 -m
/usr/local/share/snmp/mibs/RADIUS-AUTH-SERVER-MIB.txt -c public localhost
radiusAuth
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServIdent.0
= FreeRADIUS Version 2.0.3, for host i386-portbld-freebsd7.0, built on May
18 2008 at 17:05:17
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServUpTime.0
= Timeticks: (16500) 0:02:45.00
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServResetTime.0
= Timeticks: (16500) 0:02:45.00
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServConfigReset.0
= running(4)
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalAccessRequests.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalInvalidRequests.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalDupAccessRequests.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalAccessAccepts.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalAccessRejects.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalAccessChallenges.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalMalformedAccessRequests.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalBadAuthenticators.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalPacketsDropped.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServTotalUnknownTypes.0
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthClientAddress.1
= IpAddress: 127.0.0.1
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthClientAddress.2
= IpAddress: 127.0.0.1
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthClientID.1
= localhost
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthClientID.2
= localhost
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessRequests.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessRequests.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServDupAccessRequests.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServDupAccessRequests.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessAccepts.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessAccepts.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessRejects.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessRejects.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessChallenges.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServAccessChallenges.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServMalformedAccessRequests.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServMalformedAccessRequests.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServBadAuthenticators.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServBadAuthenticators.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServPacketsDropped.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServPacketsDropped.2
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServUnknownTypes.1
= Counter32: 0
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthClientTable.radiusAuthClientEntry.radiusAuthServUnknownTypes.2
= Counter32: 0
----------------------------------------------------------------- 


But on 64 bit Freebsd, I only get server uptime information : Below Extract
of the walk request 

---------------------------------------------
snmpwalk -v 1 -m /usr/local/share/snmp/mibs/RADIUS-AUTH-SERVER-MIB.txt -c
public localhost radiusAuth
radiusMIB.radiusAuthentication.radiusAuthServMIB.radiusAuthServMIBObjects.radiusAuthServ.radiusAuthServIdent.0
= FreeRADIUS Version 2.0.3, for host amd64-portbld-freebsd7.0, built on May
18 2008 at 17:39:21
-----------------------------------------------



radius -X output 
Waking up in 0.9 seconds.
Waking up in 0.9 seconds.
Waking up in 0.9 seconds. 
Waking up in 0.9 seconds. 
SMUX message received type: 161 rest len: 28 SMUX Request OID:
1.3.6.1.2.1.67.1 
SMUX getresp send: 130 Waking up in 0.2 seconds. 
SMUX message received type: 161 rest len: 33 
SMUX Request OID: 1.3.6.1.2.1.67.1.1.1.1.1.0 
SMUX getresp send: 10416 Waking up in 0.2 seconds. 
SMUX message received type: 161 rest len: 33 
SMUX Request OID: 1.3.6.1.2.1.67.1.1.1.1.1.0 
SMUX getresp send: 10416 Waking up in 0.2 seconds. 
SMUX message received type: 65 rest len: 1 
SMUX_CLOSE with reason: 2 
SMUX connect try 1 SMUX 
SMUX open oid: 1.3.6.1.4.1.11344.1.1.1 
SMUX open progname: radiusd 
SMUX open password: verysecret 
SMUX SMUX register oid: 1.3.6.1.2.1.67.1.1.1.1 
SMUX register priority: -1 SMUX register operation: 2 
SMUX SMUX register oid: 1.3.6.1.2.1.67.2.1.1.1 
SMUX register priority: -1 
SMUX register operation: 2 Waking up in 0.2 seconds. 
SMUX message received type: 67 rest len: 4 Waking up in 0.1 seconds. 
SMUX message received type: 67 rest len: 4 
Waking up in 0.9 seconds. 
Waking up in 0.9 seconds. 



snmpd.log //
[smux_accept] accepted fd 8 from 127.0.0.1:59629 accepted 
smux peer: oid enterprises.11344.1.1.1, password verysecret, descr radiusd 



Do you know if this is a know bug ? Or I missed something. I've tested this
behaviour on differents releases (6.3, 6.1 and 7.0) of Freebsd. Seems this
is always the same issue (non complete value on 64 bits OS, and behaviour
ok on 32 bits.


Regards


Thomas




More information about the Freeradius-Users mailing list