redirect_addr в ipfw nat
Добавлено: 2010-07-10 19:59:02
есть правила:
в таблицы 126, 127 добавляются скриптом белые и серые адреса, соответственно:
nat работает, но доступа на машину в локалке по белому адресу нет (redirect_addr не работает).
Делаем
и redirect_addr начинает работать.
В чем бок?
Код: Выделить всё
nat tablearg ip from any to table(126) in
nat tablearg ip from table(127) to any out
Код: Выделить всё
...
$IPFW_UserNATConfig = "same_ports unreg_only log";
...
function IPFW_CreateUserNAT($id, $LocalIP, $PublicIP)
{
global $IPFW_IncomingNATTable;
global $IPFW_OutgoingNATTable;
global $IPFW_UserNATConfig;
IPFW_Exec(" nat " . $id . " config ip " . $PublicIP . " " . $IPFW_UserNATConfig . " redirect_addr " . $LocalIP . " " . $PublicIP);
IPFW_Exec(" table " . $IPFW_OutgoingNATTable . " add " . $LocalIP . "/32 " . $id);
IPFW_Exec(" table " . $IPFW_IncomingNATTable . " add " . $PublicIP . "/32 " . $id);
}
Код: Выделить всё
gw1# ipfw table 127 list | grep 10.10.4.3
10.10.4.3/32 131
gw1# ipfw table 126 list | grep 131
xxx.xxx.xxx.xxx/32 131
gw1# ipfw nat 131 show config
ipfw nat 131 config ip xxx.xxx.xxx.xxx log same_ports unreg_only redirect_addr 10.10.4.3 xxx.xxx.xxx.xxx
Делаем
Код: Выделить всё
gw1# ipfw nat 131 delete
gw1# ipfw nat 131 config ip xxx.xxx.xxx.xxx log same_ports unreg_only redirect_addr 10.10.4.3 xxx.xxx.xxx.xxx
В чем бок?