Добрый день!
Есть FreeBSD 8.2, сетевуха rl0 смотрит в локалку 192.168.1.0/24, ADSL модем - смотрит в интернет, висит модем на том же rl0, IP модема 192.168.1.252.
Задача - поднять mpd5 -> pppoe -> ADSL интернет и раздать на 192.168.1.0/24.
Интернет раздается через IPFW + Kernel NATС поднятием интернета все гуд. Проблема состоит в следующем. После поднятия соединения в интернет с помощью mpd:
-если ручками в консоли прописать
ipfw nat 1 config ip x.x.x.x log same_ports unreg_only
ipfw add nat 1 all from 192.168.1.0/24 to any
ipfw add nat 1 all from any to x.x.x.x
все работает на УРА.
-если попытаться автоматизировать процесс и сделать это все в скрипте mpd-ip-up
/usr/local/etc/mpd5/mpd-ip-up:
1. #!/bin/sh
2. ipfw -q flush
3. ipfw nat 1 config ip $3 log same_ports unreg_only
4. ipfw add nat 1 all from 192.168.1.0/24 to any
5. ipfw add nat 1 all from any to $3
то возникает следующая ситуация: все строки отрабатываются, кроме 3-й. Соответсвенно ни о каком интернете речи быть не может. Если потом в консоле прописать:
ipfw nat 1 config ip x.x.x.x log same_ports unreg_only то нет появляется.
Вопрос следующий: почему не отрабатывает 3-я строка и как это исправить?