Ту функцию обычно называют "от 1 до 1 NAT". Ищите это в документации любых маршрутизаторов, которые Вы рассматриваете. Внутренние маршрутизаторы обычно не имеют той функции, но любой или корпоративный маршрутизатор класса с открытым исходным кодом должен смочь сделать это; весь BSDs и Linux имеют ту функцию в их ядрах.
Лично, я использовал бы основанный на Linux маршрутизатор с недавним пакетом брандмауэра Shorewall (Вы действительно хотите некоторую безопасность, правильно?), который может, конечно, сделать это. На самом деле я просто сделал то использование используемого сервера с Ubuntu 9.10 и последним Shorewall. OpenWRT должен позволить Вам сделать это довольно недорого.
Вы могли попытаться использовать жемчуг в ОТКЛОНЕНИИ Post-Auth-Type
post-auth {
# Login successful: get an address from the IP pool.
ippool
Post-Auth-Type REJECT {
# Login failed
perl
}
}
ссылки Freeradius FAQ, документы Post-Auth-Type, rlm_perl.