Opendiameter setup on Fedora 10

Please read the full documentation before you try it!

Pre-requisite dependencies

$ sudo yum install gcc-c++
$ sudo yum install openssl openssl-devel
$ sudo yum install boost boost-doc boost-devel
$ sudo yum install autoconf automake libtool

ACE (Adaptive Communication Environment)

ACE is a pre-requisite for Open diameter.

$ tar xjvf ACE-5.6.9.tar.bz2
$ cd ACE_wrappers
$ mkdir build
$ cd build
$ ../configure --prefix=/usr/local
$ make
$ sudo make install

Source: http://download.dre.vanderbilt.edu/

Installation of Open Diameter

$ tar xzvf opendiameter-1.0.7-i.tar.gz
$ cd opendiameter-1.0.7-i
$ mkdir build
$ cd build
$ ACE_ROOT=/usr/local BOOST_ROOT=/usr ../configure
$ make

Source: http://diameter.sourceforge.net/

Fixing errors

No ace/Swap.cpp

Just copy ACE_wrappers/ace/Swap.cpp to /usr/local/include/ace/.

This error occurs if ACE-5.5 is used.

$ cd ACE_wrappers
$ sudo cp ace/Swap.cpp /usr/local/include/ace/

No ace/Obstack.h

Copy ACE_wrappers/ace/Obstack.h to /usr/local/include/ace/

field ‘m_SigRegistrar’ has incomplete type

error: field `m_SigRegistrar' has incomplete type

Modify opendiameter-1.0.7-i/libdiameter/include/aaa_transport_ace.h. Add the following:

#include "ace/Sig_Handler.h"

Source: http://smallonely.wordpress.com/2008/11/19/opendiameter-installation-troubleshooting/

ACE_System_Time::get_local_system_time error

Modify the following lines in opendiameter-1.0.7-i/libpana/include/pana_serial_num.h:

static inline ACE_UINT32 GenerateISN(ACE_UINT32 seed = 0) {
if (seed == 0) {
time_t t = 0;
ACE_System_Time::get_local_system_time(t);
}
// simple time seeded randon number generator
ACE_OS::srand(seed + ACE_OS::rand());
return ACE_OS::rand();
}

SAX Parsing exception: Failed to open XML file

Apply the following changes to opendiameter/libodutl od_utl_xml_sax_parser.h and od_utl_xml_sax_parser.cxx (thanks to Mario Ivancic).

--- opendiameter-1.0.7-i/libodutl/include/od_utl_xml_sax_parser.h       2007-03-01 22:16:38.000000000 +0530
+++ diameter-gcc-4.3.2-ACE-5.6.9-test/opendiameter-1.0.7-i/libodutl/include/od_utl_xml_sax_parser.h     2009-06-23 20:10:25.000000000 +0530
@@ -113,8 +113,8 @@
         return true;
      }
      virtual bool characters(const ACEXML_Char *ch,
-                             int start,
-                             int length ACEXML_ENV_ARG_DECL) {
+                             size_t start,
+                             size_t length ACEXML_ENV_ARG_DECL) {
         if (! m_inProcess) {
                    std::string err = "Error: element ";
                    err += m_name;
@@ -171,8 +171,8 @@
       virtual void Load(char* xmlFile);

       virtual void characters(const ACEXML_Char *ch,
-                              int start,
-                              int length ACEXML_ENV_ARG_DECL);
+                              size_t start,
+                              size_t length ACEXML_ENV_ARG_DECL);
       virtual void startDocument(ACEXML_ENV_SINGLE_ARG_DECL);
       virtual void endDocument(ACEXML_ENV_SINGLE_ARG_DECL);
       virtual void startElement(const ACEXML_Char *namespaceURI,
@@ -208,8 +208,8 @@

   protected:
      virtual bool characters(const ACEXML_Char *ch,
-                             int start,
-                             int length ACEXML_ENV_ARG_DECL) {
+                             size_t start,
+                             size_t length ACEXML_ENV_ARG_DECL) {
         if (! OD_Utl_XML_Element::characters(ch, start, length)) {
                    return false;
         }

--- opendiameter-1.0.7-i/libodutl/src/od_utl_xml_sax_parser.cxx 2007-03-01 22:16:38.000000000 +0530
+++ diameter-gcc-4.3.2-ACE-5.6.9-test/opendiameter-1.0.7-i/libodutl/src/od_utl_xml_sax_parser.cxx       2009-06-23 20:09:00.000000000 +0530
@@ -53,8 +53,8 @@

      // Methods inherit from ACEXML_ContentHandler.
      virtual void characters (const ACEXML_Char *ch,
-                              int start,
-                              int length ACEXML_ENV_ARG_DECL)
+                              size_t start,
+                              size_t length ACEXML_ENV_ARG_DECL)
          ACE_THROW_SPEC ((ACEXML_SAXException)) {
          m_parser.characters(ch, start, length);
      }
@@ -187,8 +187,8 @@
 }

 void OD_Utl_XML_SaxParser::characters(const ACEXML_Char *ch,
-                                      int start,
-                                      int length ACEXML_ENV_ARG_DECL)
+                                      size_t start,
+                                      size_t length ACEXML_ENV_ARG_DECL)
 {
    if (m_currentElement) {
        m_currentElement->characters(ch, start, length);

Testing

The location where .xml files are searched are in /etc/opendiameter, even though installation happens in /usr/local/etc/opendiameter. Create the directories and copy the config files. Make sure that all references start with /etc/opendiameter/, and not from config/ in the .xml files.

# mkdir /etc/opendiameter/aaa -p
# mkdir /etc/opendiameter/nas -p
# cd opendiameter-1.0.7-i
# cp -r applications/aaa/config /etc/opendiameter/aaa
# cp -r applications/nas/config /etc/opendiameter/nas

If you get an error that states:

error while loading shared libraries: libACEXML_Parser-5.6.9.so: cannot open shared object file: No such file or directory

it means you haven’t yet provided the PATH to include ACE libraries. Export LD_LIBRARY_PATH to include ACE libraries.

# export LD_LIBRARY_PATH=/usr/local/lib

You can now start aaad, nasd as root.

aaad-testing

Add the following in /etc/hosts file:

127.0.0.1       localaaa        localaaa.localdomain1.net
127.0.0.1       localnas        localnas.localdomain2.net

Download the following directory that contains aaa/config/ and nas/config/ .xml files and put it in /etc/opendiameter:

http://shakthimaan.com/installs/opendiameter/aaad-test.tar.bz2

You can now start aaad as root:

# aaad

The following is a sample log:

[root@fedora config]# aaad
(12062|3086161712)--- Cfg Data ---
(12062|3086161712)     Thread Cnt: 5
(12062|3086161712)  Diam Cfg File: /etc/opendiameter/aaa/config/aaad_diameter_server.xml
(12062|3086161712)--- Application Table ---
(12062|3086161712)    Application: diameter_eap
(12062|3086161712)        Enabled: true
(12062|3086161712)    Local Ident: aaad@opendiameter.org
(12062|3086161712)   User Db File: /etc/opendiameter/aaa/config/aaad_user_db.xml
(12062|3086161712) Starting diameter core
(12062|3086161712)             Product : Open Diameter
(12062|3086161712)             Version : 1
(12062|3086161712)           Vendor Id : 0
(12062|3086161712)    Supported Vendor : 0
(12062|3086161712)    Supported Vendor : 1
(12062|3086161712)    Auth Application : 1
(12062|3086161712)    Auth Application : 2
(12062|3086161712)    Auth Application : 2000
(12062|3086161712)    Auth Application : 10000
(12062|3086161712)    Acct Application : 3
(12062|3086161712)    Acct Application : 4
(12062|3086161712)    Acct Application : 20000
(12062|3086161712)  Vendor Specific Id : (12062|3086161712)      Vendor=31,  Auth=1
(12062|3086161712)  Vendor Specific Id : (12062|3086161712)      Vendor=41,  Acct=6
(12062|3086161712)          Dictionary : /etc/opendiameter/aaa/config/aaad_diameter_dictionary.xml
(12062|3086161712)            Identity : localaaa.localdomain1.net
(12062|3086161712)               Realm : localdomain1.net
(12062|3086161712)          TCP Listen : 1812
(12062|3086161712)         SCTP Listen : 1813
(12062|3086161712)   Watch-Dog timeout : 4
(12062|3086161712)            Use IPv6 : 0
(12062|3086161712) Re-transmission Int : 8
(12062|3086161712)    Max Re-trans Int : 3
(12062|3086161712)    Recv Buffer Size : 2048
(12062|3086161712)      Hostnames Used : localaaa.localdomain1.net
(12062|3086161712) Dumping Peer Table
(12062|3086161712)      Expire Time 1
(12062|3086161712)                Peer : Host = localnas.localdomain2.net, Port = 1811, TLS = 0
(12062|3086161712)  Dumping Route Table
(12062|3086161712)            Exp Time : 0
(12062|3086161712)              Route  : Realm = localdomain2.net, Action = 0, Redirect-Usage = 0
(12062|3086161712)                       Application Id=2000, Vendor=0
(12062|3086161712)                          Server = localnas.localdomain2.net, metric = 2
(12062|3086161712)            Max Sess : 10000
(12062|3086161712)  Auth Stateful Auth : stateful
(12062|3086161712)     Auth Session(T) : 30
(12062|3086161712)    Auth Lifetime(T) : 360
(12062|3086161712)       Auth Grace(T) : 30
(12062|3086161712)       Auth Abort(T) : 20
(12062|3086161712)     Acct Session(T) : 30
(12062|3086161712)    Acct Interim Int : 5
(12062|3086161712)      Acct Real-Time : 1
(12062|3086161712)           Debug Log : enabled
(12062|3086161712)           Trace Log : enabled
(12062|3086161712)            Info Log : enabled
(12062|3086161712)         Console Log : enabled
(12062|3086161712)          Syslog Log : enabled
 Vendor [id = "61"]
 Vendor [name = "Merit Networks"]
 Vendor [id = "42"]
 Vendor [name = "Sun Microsystems, Inc."]
 Vendor [id = "429"]
 Vendor [name = "US Robotics Corp."]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
(12062|3086161712) TCP Acceptor Listening at 1812, binding to localaaa.localdomain1.net
(12062|3012729744) Waiting for incomming connection ...
(12062|3086161712) SCTP Acceptor Listening at 1813, binding to localaaa.localdomain1.net
(12062|3002239888) Waiting for incomming connection ...
(12062|3086161712) Trying to connect to to localnas.localdomain2.net:1811
(12062|2991750032) Checking if connection attempt succeeded ...
(12062|2991750032) Async Transport Setup Reports: Connection refused
(12062|2991750032) IO Factory error: Connector [111=Connection refused]
(12062|3086161712) **** User database ****
(12062|3086161712) *** Match User: default
(12062|3086161712)         Method: archie
(12062|3086161712) MD5 Passwd Typ: 2
(12062|3086161712)  Shared secret: /etc/aaad/config/aaad_eap_shared_secret.bin
(12062|3086161712) *** Match User: isp.net
(12062|3086161712)         Method: md5
(12062|3086161712) MD5 Passwd Typ: 1
(12062|3086161712)  Shared secret: /etc/aaad/config/aaad_eap_shared_secret.bin
(12062|3086161712) *** Match User: user
(12062|3086161712)         Method: archie
(12062|3086161712) MD5 Passwd Typ: 1
(12062|3086161712)  Shared secret: /etc/aaad/config/aaad_eap_shared_secret.bin
(12062|3012729744) Waiting for incomming connection ...
(12062|3002239888) Waiting for incomming connection ...
(12062|3012729744) Waiting for incomming connection ...
(12062|3002239888) Waiting for incomming connection ...
(12062|3012729744) Waiting for incomming connection ...
(12062|3002239888) Waiting for incomming connection ...
(12062|3044199312) Retrying peer connection. Number of attemps 1
(12062|3044199312) Trying to connect to to localnas.localdomain2.net:1811
(12062|3012729744) Waiting for incomming connection ...
(12062|3002239888) Waiting for incomming connection ...

aaad-client-server-1-test

Download the following directory that contains config/ directory with all the required .xml files, and put it in opendiameter-1.0.7-i/build/libdiameter:

http://shakthimaan.com/installs/opendiameter/config.tar.bz2

You can now start aaa_test_server1 (localnas.localdomain2.net) from a terminal:

[root@fedora libdiameter]# export LD_LIBRARY_PATH=/usr/local/lib
[root@fedora libdiameter]# ./aaa_test_server1
(12434|3085834032) Starting diameter core
(12434|3085834032)             Product : Open Diameter
(12434|3085834032)             Version : 1
(12434|3085834032)           Vendor Id : 0
(12434|3085834032)    Supported Vendor : 0
(12434|3085834032)    Supported Vendor : 1
(12434|3085834032)    Auth Application : 1
(12434|3085834032)    Auth Application : 2
(12434|3085834032)    Auth Application : 10000
(12434|3085834032)    Acct Application : 3
(12434|3085834032)    Acct Application : 4
(12434|3085834032)    Acct Application : 20000
(12434|3085834032)  Vendor Specific Id : (12434|3085834032)      Vendor=31,  Auth=1
(12434|3085834032)  Vendor Specific Id : (12434|3085834032)      Vendor=41,  Acct=6
(12434|3085834032)          Dictionary : config/dictionary.xml
(12434|3085834032)            Identity : localnas.localdomain2.net
(12434|3085834032)               Realm : localdomain2.net
(12434|3085834032)          TCP Listen : 1812
(12434|3085834032)         SCTP Listen : 1813
(12434|3085834032)   Watch-Dog timeout : 4
(12434|3085834032)            Use IPv6 : 0
(12434|3085834032) Re-transmission Int : 8
(12434|3085834032)    Max Re-trans Int : 3
(12434|3085834032)    Recv Buffer Size : 2048
(12434|3085834032)      Hostnames Used : localnas.localdomain2.net
(12434|3085834032) Dumping Peer Table
(12434|3085834032)      Expire Time 1
(12434|3085834032)                Peer : Host = localaaa.localdomain1.net, Port = 1811, TLS = 0
(12434|3085834032)  Dumping Route Table
(12434|3085834032)            Exp Time : 0
(12434|3085834032)              Route  : Realm = localdomain1.net, Action = 0, Redirect-Usage = 0
(12434|3085834032)                       Application Id=10000, Vendor=0
(12434|3085834032)                          Server = localaaa.localdomain1.net, metric = 2
(12434|3085834032)            Max Sess : 10000
(12434|3085834032)  Auth Stateful Auth : stateful
(12434|3085834032)     Auth Session(T) : 30
(12434|3085834032)    Auth Lifetime(T) : 360
(12434|3085834032)       Auth Grace(T) : 30
(12434|3085834032)       Auth Abort(T) : 20
(12434|3085834032)     Acct Session(T) : 30
(12434|3085834032)    Acct Interim Int : 5
(12434|3085834032)      Acct Real-Time : 1
(12434|3085834032)           Debug Log : enabled
(12434|3085834032)           Trace Log : enabled
(12434|3085834032)            Info Log : enabled
(12434|3085834032)         Console Log : enabled
(12434|3085834032)          Syslog Log : enabled
 Vendor [id = "61"]
 Vendor [name = "Merit Networks"]
 Vendor [id = "42"]
 Vendor [name = "Sun Microsystems, Inc."]
 Vendor [id = "429"]
 Vendor [name = "US Robotics Corp."]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
(12434|3085834032) TCP Acceptor Listening at 1812, binding to localnas.localdomain2.net
(12434|3085834032) SCTP Acceptor Listening at 1813, binding to localnas.localdomain2.net
(12434|3001912208) Waiting for incomming connection ...
(12434|3085834032) Trying to connect to to localaaa.localdomain1.net:1811
(12434|2991422352) Checking if connection attempt succeeded ...
(12434|3064851344) Connection attempt accepted
(12434|3064851344) Sent CER
(12434|3022891920) SIGPIPE received, closing connection
(12434|3022891920) Async IO Reports: Broken pipe
Just wait here and let factory take care of new sessions
(12434|2980932496) Async IO Reports: Transport endpoint is not connected
(12434|3012402064) Waiting for incomming connection ...
(12434|3012402064) Waiting for incomming connection ...
(12434|3054361488) Peer Capabilities
(12434|3054361488)             Hostname : localaaa.localdomain1.net
(12434|3054361488)                Realm : localdomain1.net
(12434|3054361488)              Host IP : type=1, 127.0.0.1
(12434|3054361488)             VendorId : 0
(12434|3054361488)         Product Name : Open Diameter
(12434|3054361488)           Orig State : 1245853459
(12434|3054361488)  Supported Vendor Id : 0
(12434|3054361488)  Supported Vendor Id : 1
(12434|3054361488)  Auth Application Id : 1
(12434|3054361488)  Auth Application Id : 2
(12434|3054361488)  Auth Application Id : 10000
(12434|3054361488)  Acct Application Id : 3
(12434|3054361488)  Acct Application Id : 4
(12434|3054361488)  Acct Application Id : 20000
(12434|3054361488)  Vendor Specific Id : (12434|3054361488)      Vendor=31,  Auth=1
(12434|3054361488)  Vendor Specific Id : (12434|3054361488)      Vendor=41,  Acct=6
(12434|3054361488)           Inband Sec : 0
(12434|3054361488)         Firmware Ver : 1
(12434|3054361488) Election occurring ...
(12434|3054361488) ***** Local peer wins election *****
(12434|3043871632) Sent CEA: rcode=2001
(12434|3043871632) Capabilities negotiation completed successfully (win-election)
(12434|3033381776) Async Transport Setup Reports: Transport endpoint is not connected
(12434|3001912208) Waiting for incomming connection ...
Just wait here and let factory take care of new sessions
(12434|3075341200) Watchdog msg from [localaaa.localdomain1.net.localdomain1.net], state=1245853459, time=1245853462
(12434|3043871632) Watchdog msg from [localaaa.localdomain1.net.localdomain1.net], state=1245853459, time=1245853463
...

You can now start aaa_test_client1 (localaaa.localdomain1.net):

[root@fedora libdiameter]# export LD_LIBRARY_PATH=/usr/local/lib
[root@fedora libdiameter]# ./aaa_test_client1 config/nas1.local.xml 3
(12446|3087779632) Starting diameter core
(12446|3087779632)             Product : Open Diameter
(12446|3087779632)             Version : 1
(12446|3087779632)           Vendor Id : 0
(12446|3087779632)    Supported Vendor : 0
(12446|3087779632)    Supported Vendor : 1
(12446|3087779632)    Auth Application : 1
(12446|3087779632)    Auth Application : 2
(12446|3087779632)    Auth Application : 10000
(12446|3087779632)    Acct Application : 3
(12446|3087779632)    Acct Application : 4
(12446|3087779632)    Acct Application : 20000
(12446|3087779632)  Vendor Specific Id : (12446|3087779632)      Vendor=31,  Auth=1
(12446|3087779632)  Vendor Specific Id : (12446|3087779632)      Vendor=41,  Acct=6
(12446|3087779632)          Dictionary : config/dictionary.xml
(12446|3087779632)            Identity : localaaa.localdomain1.net
(12446|3087779632)               Realm : localdomain1.net
(12446|3087779632)          TCP Listen : 1810
(12446|3087779632)         SCTP Listen : 1811
(12446|3087779632)   Watch-Dog timeout : 3
(12446|3087779632)            Use IPv6 : 0
(12446|3087779632) Re-transmission Int : 8
(12446|3087779632)    Max Re-trans Int : 3
(12446|3087779632)    Recv Buffer Size : 2048
(12446|3087779632)      Hostnames Used : localaaa.localdomain1.net
(12446|3087779632) Dumping Peer Table
(12446|3087779632)      Expire Time 1
(12446|3087779632)                Peer : Host = localnas.localdomain2.net, Port = 1812, TLS = 0
(12446|3087779632)  Dumping Route Table
(12446|3087779632)            Exp Time : 0
(12446|3087779632)              Route  : Realm = localdomain2.net, Action = 1, Redirect-Usage = 0
(12446|3087779632)                       Application Id=1, Vendor=0
(12446|3087779632)                          Server = localnas.localdomain2.net, metric = 2
(12446|3087779632)            Max Sess : 10000
(12446|3087779632)  Auth Stateful Auth : stateful
(12446|3087779632)     Auth Session(T) : 30
(12446|3087779632)    Auth Lifetime(T) : 360
(12446|3087779632)       Auth Grace(T) : 30
(12446|3087779632)       Auth Abort(T) : 20
(12446|3087779632)     Acct Session(T) : 30
(12446|3087779632)    Acct Interim Int : 5
(12446|3087779632)      Acct Real-Time : 1
(12446|3087779632)           Debug Log : enabled
(12446|3087779632)           Trace Log : enabled
(12446|3087779632)            Info Log : enabled
(12446|3087779632)         Console Log : enabled
(12446|3087779632)          Syslog Log : disabled
 Vendor [id = "61"]
 Vendor [name = "Merit Networks"]
 Vendor [id = "42"]
 Vendor [name = "Sun Microsystems, Inc."]
 Vendor [id = "429"]
 Vendor [name = "US Robotics Corp."]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
 Base   [uri = "ftp://ftp.ietf.org/internet-drafts/draft-ietf-aaa-diameter-08.txt"]
(12446|3087779632) TCP Acceptor Listening at 1810, binding to localaaa.localdomain1.net
(12446|3012537232) Waiting for incomming connection ...
(12446|3087779632) SCTP Acceptor Listening at 1811, binding to localaaa.localdomain1.net
(12446|3002047376) Waiting for incomming connection ...
(12446|3087779632) Trying to connect to to localnas.localdomain2.net:1812
(12446|2991557520) Checking if connection attempt succeeded ...
(12446|3064986512) Connection attempt accepted
(12446|3064986512) Sent CER
(12446|3044006800) Peer Capabilities
(12446|3044006800)             Hostname : localnas.localdomain2.net
(12446|3044006800)                Realm : localdomain2.net
(12446|3044006800)              Host IP : type=1, 127.0.0.1
(12446|3044006800)             VendorId : 0
(12446|3044006800)         Product Name : Open Diameter
(12446|3044006800)           Orig State : 1245853452
(12446|3044006800)  Supported Vendor Id : 0
(12446|3044006800)  Supported Vendor Id : 1
(12446|3044006800)  Auth Application Id : 1
(12446|3044006800)  Auth Application Id : 2
(12446|3044006800)  Auth Application Id : 10000
(12446|3044006800)  Acct Application Id : 3
(12446|3044006800)  Acct Application Id : 4
(12446|3044006800)  Acct Application Id : 20000
(12446|3044006800)  Vendor Specific Id : (12446|3044006800)      Vendor=31,  Auth=1
(12446|3044006800)  Vendor Specific Id : (12446|3044006800)      Vendor=41,  Acct=6
(12446|3044006800)           Inband Sec : 0
(12446|3044006800)         Firmware Ver : 1
(12446|3044006800) *** Local capabilities accepted by peer ***
(12446|3087779632) Trying to connect to to dynamic.peer.com:1812
(12446|2960087952) Checking if connection attempt succeeded ...
Waiting till this AAA has connectivity
(12446|3087779632) Session id=localaaa.localdomain1.net.localdomain1.net;;";my_client
Sending request message
(12446|3087779632) DestHost(server.isp.net) present but not ours so try realm routing
(12446|3087779632) DestHost(server.isp.net) does not match any peer
(12446|3087779632) DestRealm(isp.net) not in routing table
(12446|3087779632) Router cannot deliver message, sending back with an error
(12446|3087779632) *** Router rejected request message ***
(12446|3087779632) Message header dump
          version = 1
          length  = 0
     flags(r,p,e,t) = (1,0,0,0)
          command = 300
       hop-by-hop = 701372979
       end-to-end = 1899287708
   Application id = 10000
(12446|3087779632) **** Request Message Error ****
(12446|3087779632) Message header dump
          version = 1
          length  = 0
     flags(r,p,e,t) = (1,0,0,0)
          command = 300
       hop-by-hop = 701372979
       end-to-end = 1899287708
   Application id = 10000
(12446|3087779632) **** Received message with error bit set ****
Waiting till user is authorized
Waiting till user is authorized
(12446|3077286800) Watchdog msg from [localnas.localdomain2.net.localdomain2.net], state=1245853452, time=1245853462
Waiting till user is authorized
(12446|3064986512) Watchdog msg from [localnas.localdomain2.net.localdomain2.net], state=1245853452, time=1245853463
Waiting till user is authorized
...

You will see debug messages on both the client and server.

On the server (localnas.localdomain2.net):

(12434|3075341200) Watchdog msg from [localaaa.localdomain1.net.localdomain1.net], state=1245853459, time=1245853462

On the client (localaaa.localdomain1.net):

(12446|3064986512) Watchdog msg from [localnas.localdomain2.net.localdomain2.net], state=1245853452, time=1245853463

Wireshark Diameter captures

Wireshark has support for Diameter captures. Install wireshark:

$ sudo yum install wireshark

Copy the .xml files used by aaa_test_client1 and aaa_test_server1 to /usr/share/wireshark/diameter:

cp isp.local.xml /usr/share/wireshark/diameter
cp nas1.local.xml /usr/share/wireshark/diameter

Update dictionary.xml in /usr/share/wireshark/diameter/ with the following entries for the two client/servers:

<!DOCTYPE dictionary SYSTEM "dictionary.dtd" [
        <!ENTITY isp.local SYSTEM "isp.local.xml">
        <!ENTITY nas1.local SYSTEM "nas1.local.xml">
...

At the following at the end of the file:

...
        &nas1.local;
        &isp.local;

Start wireshark and add the respective client/server TCP, SCTP ports in Edit→Preferences→Protocols→Diameter settings.

For the aaa_test_client1 and aaa_test_server1 example, the following are the port values:

TCP 1810, 1812
SCTP 1811

Here is a screenshot of wireshark with the read diameter values:

http://shakthimaan.com/installs/opendiameter/wireshark-diameter.png