URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 79775
[ Назад ]

Исходное сообщение
"проблема freebsd 7"

Отправлено opeth2009 , 11-Апр-08 19:56 
Столкнулся с тем что при старте Freebsd 7.0 сначала стартанули скрипты ipfw а потом интерфейсы поднялись и правила не сработали
Почему? вроде карты intel
пришлось снова скрипт /etc/netstart запустить
Помогите разобраться пож



Содержание

Сообщения в этом обсуждении
"проблема freebsd 7"
Отправлено GD , 11-Апр-08 21:51 
>Столкнулся с тем что при старте Freebsd 7.0 сначала стартанули скрипты ipfw
>а потом интерфейсы поднялись и правила не сработали
>Почему? вроде карты intel
>пришлось снова скрипт /etc/netstart запустить
>Помогите разобраться пож

что то с диагностигой у вас плохо

физические интерфейсы появляются при загрузке ядра
правила ipfw применяются после загрузки ядра
при наличии интерфейсов (не зависимо от их состояния) правила ipfw применимы

то, что вы описываете не может быть


"проблема freebsd 7"
Отправлено opeth2008 , 12-Апр-08 00:09 
>что то с диагностигой у вас плохо
>
>физические интерфейсы появляются при загрузке ядра
>правила ipfw применяются после загрузки ядра
>при наличии интерфейсов (не зависимо от их состояния) правила ipfw применимы
>
>то, что вы описываете не может быть

Ну хорошо мил человек, спасибо что разъяснили! Но все же что же происходит такое непонятное?
Значит перезагружаю я freebsd и после вроде все выполняется
Но подозрение на следующее
при некоторых правилах в ipfw строчки вроде ошибка там хост t....org лял яля в строке там какой-то
короче /etc/netstart помогает правила перезапускаются и все работает и ошибки нету
подозрения еше после запуска ipfw правил пер чтото там интерфейс UP
еще заметил варнинг

WARNING: attempt to net_add_domain(netgraph) after domainfinalize()
Waiting (max 60 seconds) for system process `vnlru' to stop...done
Waiting (max 60 seconds) for system process `bufdaemon' to stop...done
Waiting (max 60 seconds) for system process `syncer' to stop...
Syncing disks, vnodes remaining...2 0 1 0 0 done
All buffers synced.


почему /etc/netstart помог?
что и куда глянуть?


"проблема freebsd 7"
Отправлено GD , 12-Апр-08 11:38 
>[оверквотинг удален]
>WARNING: attempt to net_add_domain(netgraph) after domainfinalize()
>Waiting (max 60 seconds) for system process `vnlru' to stop...done
>Waiting (max 60 seconds) for system process `bufdaemon' to stop...done
>Waiting (max 60 seconds) for system process `syncer' to stop...
>Syncing disks, vnodes remaining...2 0 1 0 0 done
>All buffers synced.
>
>
>почему /etc/netstart помог?
>что и куда глянуть?

можно глянуть на доступность DNS-а
для того чтобы в правилах использовать имена, нужно на момент
внесения правила иметь возможность их отрезолвить
попробуй заменить имена ip адресами


"проблема freebsd 7"
Отправлено opeth2008 , 12-Апр-08 10:26 
>Столкнулся с тем что при старте Freebsd 7.0 сначала стартанули скрипты ipfw
>а потом интерфейсы поднялись и правила не сработали
>Почему? вроде карты intel
>пришлось снова скрипт /etc/netstart запустить
>Помогите разобраться пож

Непонятно почему так происходит
Система стартует потом запускаются правила ipfw но в них есть ошибки с правилами в которых есть имена
Потом em0 LINK UP и пока не запустишь /etc/netstart не работают правила
почему
на более старых системе работало
Изза чего такое мож быть
Разве что NETGRAPH в ядре есть
Что косячит?
Какая последовательность обычно происходит при запуске ipfw
где она прокалываться может


"проблема freebsd 7"
Отправлено heap , 12-Апр-08 22:09 
Драйвер сетевушки модулем? Может в /boot/loader.conf добавить if_em_load="YES"? (пример посмотреть можно в /boot/defaults/loader.conf)

"проблема freebsd 7"
Отправлено opeth2008 , 13-Апр-08 11:33 
>Столкнулся с тем что при старте Freebsd 7.0 сначала стартанули скрипты ipfw
>а потом интерфейсы поднялись и правила не сработали
>Почему? вроде карты intel
>пришлось снова скрипт /etc/netstart запустить
>Помогите разобраться пож

Ребята
Я не могу понять почему на freebsdа4 все работало
Сначала по логике должно идти поднятие интерфейсов LINK UP
потом правила ipfw
Что за чем следует?
В скриптах rc.d я увидел строчку в ipfw* #BEFORE NETSTART... не помню точно посмотрите
На 6 тоже также значит ничего особенного в 7 нет
Значит Ipfw грузит до
НО тогда не понятно почему позволено в правилах использовать имена
Ведь пока DNS не видим ничего не будет
С другой стороны может линк поднимается раньше-тогда все понятно и правильно

У меня сообщение о LINKUP вывалилось позже ipfw правил
Почему?
но опять же имейте ввиду - может опции netgraph в ядре при  загрузке притормозили LINK
Они мне не очень и щас пересобираю ядро без них
Посмотрю что будет

Помогите пожалуйста понять что за чем грузится и как управлять этим
В хэндбуке я читал
Но объясните в двух словах насчет интерфейсов
Как там это все поднимается?
Буду очень благодарен...



"проблема freebsd 7"
Отправлено hate , 13-Апр-08 12:55 

>Помогите пожалуйста понять что за чем грузится и как управлять этим

  Читать до посинения - man rcorder


"проблема freebsd 7"
Отправлено Pacifyer , 16-Май-08 21:37 
>Помогите пожалуйста понять что за чем грузится и как управлять этим
>В хэндбуке я читал
>Но объясните в двух словах насчет интерфейсов
>Как там это все поднимается?
>Буду очень благодарен...

Совершенно не важно в данной ситуации что за чем грузится. Надо понимать, что скрипт, вызываемый стартовым скриптом /etc/rc.d/ipfw, а это обычно /etc/rc.firewall, может обеспечить как полную конфигурацию фаервола, так и просто какую-то начальную. Правила, создаваемые в нем, не должны сожержать имен DNS, т.к. на этом этапе не работает BIND. Однако, если в /etc/resolv.conf указан внешний сервер DNS, и ядро скомпилировано с опцией IPFIREWALL_DEFAULT_TO_ACCEPT, то можно использовать имена. Хотя из общих соображений делать этого не стоит.

Дальнейшую, т.е. окончательную настройку фаервола можно осуществить в самодельном скрипте, временем старта которого нужно управлять с помощью rcorder (см. в стартовых скриптах коменты типа # REQUIRE:
Этот скрипт можно написать по образу и подобию /etc/rc.firewall, который, в свою очередь, есть самостоятельный shell скрипт. В этом скрипте уже можно использовать и имена и что там хочешь.

Однако, все это чепуха и нафик некому не нужные сложности. В /etc/rc.firewall можно использовать любые интерфейсы, даже те, которых на этот момент нету в системе, не говоря уже о тех, которые еще не поднялись. Все эти правила будут работать когда эти интерфейсы появятся в системе или поднимутся соответственно. Особенно это актуально для всяких там туннелей типа PPPoE и VPN.