Я использую FreeBSD 4.7
pccardd запускаю через rc.conf(pccard_enable="YES")
Демон с задержкой создает интерфейс wi0, при этом у меня уже устанавливается определенная часть правил firewall и естественно часть отваливается, т.к. на момент их установки интерфейса wi0 еще нет.
Как мне придержать загружку до либо до обнаружения wi0 или на достаточное врмемя, чтобы определение произошло?
>Я использую FreeBSD 4.7
>pccardd запускаю через rc.conf(pccard_enable="YES")
>Демон с задержкой создает интерфейс wi0, при этом у меня уже устанавливается
>определенная часть правил firewall и естественно часть отваливается, т.к. на момент
>их установки интерфейса wi0 еще нет.
>Как мне придержать загружку до либо до обнаружения wi0 или на достаточное
>врмемя, чтобы определение произошло?Уже не помню, но ковырялся с init, вернее с его скриптом загрузки и где-то там в начале поставил sleep 15 , т.е. пауза на 15 сек. (этого мне хватило для подьема wi0)
>Я использую FreeBSD 4.7
>pccardd запускаю через rc.conf(pccard_enable="YES")
>Демон с задержкой создает интерфейс wi0, при этом у меня уже устанавливается
>определенная часть правил firewall и естественно часть отваливается, т.к. на момент
>их установки интерфейса wi0 еще нет.
>Как мне придержать загружку до либо до обнаружения wi0 или на достаточное
>врмемя, чтобы определение произошло?"серьезная проблема..." - смотри где у тебя поднимается интерфейс на
pccard, скорее всего это в /etc/rc.network, там же поднимается или
вызывается внешний скрипт firewall, посмотри порядок и вставь sleep
на 30 сек или на минуту, время задержки подбери сам. Если firewall
отрабатывает из внешнего скрипта, то задержку можно в нем поставить,
это зависимо, те смотри ГДЕ И КАК лучшее.
>Я использую FreeBSD 4.7
>pccardd запускаю через rc.conf(pccard_enable="YES")
>Демон с задержкой создает интерфейс wi0, при этом у меня уже устанавливается
>определенная часть правил firewall и естественно часть отваливается, т.к. на момент
>их установки интерфейса wi0 еще нет.
>Как мне придержать загружку до либо до обнаружения wi0 или на достаточное
>врмемя, чтобы определение произошло?
Есть несколько вариантов.1) ipfilter вместо ipfw.
2) ipfw "понимает" via IP.IP.IP.IP. То есть, можно "привязаться" к NIC не по имени, а по IP-адресу.
3) Ну и, самый правильный, видимо -- man pccardd:
(http://www.freebsd.org/cgi/man.cgi?query=pccardd&apropos=0&s...)-z Delays running as a daemon until after the cards have been probed
and attached.смотри /etc/defaults/rc.conf чтобы выяснить какой переменной присвоить этот ключ.
P. S. Интересно, что у тебя часть "отваливается". У меня на 4.8 тест показал, что правило с указанием несуществующего NIC добавляется, хоть и с WARNING'ом... Может быть RC-скрипты *так* написаны(?), конечно.
/poige
--
http://www.i.morning.ru/~poige/