Issue with rlm_replicate and retransmissions

Brian Candler B.Candler at pobox.com
Thu Jul 12 16:25:30 CEST 2012


I have found some odd behaviour to do with proxying and retransmissions with
rlm_replicate (specifically accounting packets)

I set up a proxy config, where I also happen to modify the packet.

preacct {
    ...
    Proxy-To-Realm := "handover"
    ...
    update request {
        Reply-Message += "foo"
    }
}

As well as proxying, rlm_replicate is used to feed the accounting packets
elsewhere:

accounting {
    sql_log
    ...
    replicate    # using rlm_replicate and Replicate-To-Realm
}

Now, if the "handover" home servers are down, and I send a test packet with
retransmissions using

echo -e 'User-Name="briantest"\nEvent-Timestamp=1342099825\nFramed-IP-Address=1.2.3.4\nAcct-Status-Type=Interim-Update' |
  radclient -r3 -t3 -x localhost:1813 acct testing123

what I find is:

* just the first packet is written to the sql_log (that's fine)
* For the second and third packets, freeradius -X just shows
    "Discarding duplicate request from client localhost port 36957 - ID: 146"
  After that, freeradius says
    "Rejecting request 0 (proxy Id 181) due to lack of any response from home server 192.0.2.1 port 1813"
* all three packets are replicated. The second and third replica packets are
  missing the Reply-Message attribute

It's this last bit which I think is odd. Shouldn't the replicate also be
suppressed for retransmissions?  Or if not, shouldn't it at least process
the packet in the same way?

Regards,

Brian.



More information about the Freeradius-Devel mailing list