Matching a value within an IP subnet
    Alan DeKok 
    aland at deployingradius.com
       
    Tue Oct 19 14:11:06 CEST 2010
    
    
  
Brian Candler wrote:
> Indeed it is not. But NAS-IP-Address is (natively) not a string in RADIUS
> either, it's a 4-byte integer.
  To be pedantic: an IPv4 address.
>  Does FreeRADIUS let me treat it as if it
> were a string?
  The operator you have chosen to use is: "=~".
  That is defined as doing a *regex* match.
  Regexes work on strings.
  IPv4 addresses can be printed to strings.
  So... regexes can match strings.
  You tried to use "=~" for comparing a *network mask*.
  That won't work.
  Regex matching is not the same as matching a network mask.
> DEFAULT		NAS-IP-Address =~ /^192\.0\.2\.([0-9]|1[0-9]|2[0-9]|3[01])$/, NAS-Group := "ADSL-BRAS"
  That should work.
  Alan DeKok.
    
    
More information about the Freeradius-Users
mailing list