Андрюха, очевидно, в папке /usr/src/sys/amd64/conf... при перекомпилировании достаточно в точности следовать хендбуку, и все должно сразу заработать... А хендбук кстати точно от той версии фряхи?
попробуйте альтернативный метод сборки (к слову сказать - от версии 5.3 до сегодня - использую именно его). Заходимс в каталог с конфигурационным файлом, сопируем файл GENERIC в какой нибуть другой, например - WS. Если GENERIC отсутсвует, значит его ктото убил, так как для каждого релиза он может отличаться, то проще всего, обновить исходники ядра до стабильного релиза. (/usr/local/share/examples/cvsup/stable-supfile - помоему здесь, лежит пример очень понятный, файла, для обновления всего чего угодно) После всего этого - редкатируем получившийся файл нужным образом (незабываем - ident в начале и имя файла - одно и то же). после - сделаем configure WS, внимателдьно читаем - куда иттить далее, как правило в : cd ../compile/WS ну а там - все просто, make make install clean вот собственно и все. В каталоге конфигурации, чтобы иметь хорошую подсказку, о синтаксисе - делаем make LINT. Получаем файл LINT, в котором перечислены ВСЕ возможные опции для ядра. Заглядываем при необходимости.
да что там компилить то вообще, в последних версиях ядра достаточно универсальные. не то что раньше, даже для поддержки SMP приходилось рекомпилить
OpenBoy, новые проблемы всплыли, когда make depend делаю ошибки сыпяться... вроде все исходники поставил... вообще цель была прозрачный прокси сделать на базе squid и ipfw, ну или pf на худой конец. Pasha, неа, не стер. И не собираюсь. colorprint, нужна поддрежка IPFIREWALL и IPFIREWALL_FORWARD. p.s. стоит 7.0
Андрюха, в любой статье про использование IPWF есть примеры изменений, вносимых в файл для включения этих модулей. Если делать все по мануалу, должно работать. Блин, ну тогда кидай сюда логи, что-ли... А ты пробовал тупо скомпилить ядро, не внося изменений в файлы? А ты не учился на МФ? Лицо уж больно знакомое )) Или на ФФ...
Pasha, на МФ. options FIREWALL options FIREWALL_FORWARD вот и все изменения. пробовал. тож самое... куча error....
сейчас точно не вспомню как, но без проблем все это настраивал (и squid, и VPN, и openVPN) без всяких рекомпиляций ядра. через модули вроде догружается это все и все. в ядро компилить поддержку совершенно не обязательно. стараюсь вообще без лишней необходимости не рекомпилить ядро, т.к. серваков много и обновлять все это потом...... а так через freebsd-update пропатчил и все
colorprint, ну если б я сразу при установке это добавил, у меня тож б все работало. Переустанавливать ОС как-то не хочется.
colorprint, ладно, как полный ламер в фряхе, спрошу чего такого надо прописать в /etc/rc.conf и /boot/loader.conf для того чтобы при ipfw add 60 192.168.1.220,3128 tcp from any to any http in via vr0 не выскакивало: get sockopt (IP_FW_ADD): invalid argument
я через pf для openvpn c NAT вот так делал: /etc/rc.conf: pf_enable="YES" pf_rules="/etc/pf.conf" gateway_enable="YES" openvpn_enable="YES" openvpn_if="tap" dsys135# cat /etc/pf.conf ext_if="xl0" vpn_if="tap0" vpn_network="10.10.10.1/24" nat on $ext_if from $vpn_network to any -> 64.20.33.122 pass in on $ext_if proto udp from any to port 1194 keep state pass quick on $vpn_if добавлено через 58 секунд ipfw_enable="YES" прописано в rc.conf?
colorprint, некоторые модули должны быть скомпилированы в ядро, например, беэ этого не будет работать IPWF. Повезло, что у Вас был не тот случай. Андрюха, дык у тебя нет ipwf! потому и не получается
colorprint, попробовал через pf. заработало, только если в браузер вместо адреса айпишник вбиваю.... вроде и в ДНС - ДНС сервер провайдера вписал... что ему еще надо...
colorprint, естественно прописан, если в браузере прокси прописать все отлично работает, а хотелось бы прозрачно((( добавлено через 8 минут Pasha, ? а это кто такой? и где включать
ДНС-сервер, но, судя по твоей переписке, он тебе и не нужен - ведь странички открываешь с другого компа? Как вариант - можно открыть в фаерволе прохождение ДНС-пакетов. В твоем случае это UDP, порт 53.
ну днс не резолвит. покажите что выводит nslookup ya.ru и видно будет отрабатывают у вас днс или нет и покажите содержимое resolv.conf никакой named не нужен))
Это древний хендбук, в последних версиях depend делать не надо. Собственно - в установленой с нуля FreeBSD есть, при условии установки колекции портов и исходников базовых системы, все возможности по пересборке ядра, и что самое важное - ошибки в этом случае КРАЙНЕ редки, в основном при переходе с релиза на релиз, когда tit и окружение вместе с ядром пересобираеться. То есть как вывод - если вы точно знаете что и как у вас усстановлено (если например - чаксть работы по установке не сделал за вас ктото еще) - то будте уверены - если у вас ошибки, значит проблема именно в вас, или в той информации которой вы руководствуетесь. добавлено через 4 минуты Здесь все прсото. Генерируем LINT как написано выше, открываем его в ДРУГОЙ консоли, и ищем там как правильно добавить нужную опцию. Например - ищем подстроку IPF, упираемся в группу опций поддержки ipfw... Переходим к эксперементальному файлу конфигурации ядра и добавляем в него опции...компилим, пробуем,... добавлено через 8 минут Логи пересборки ядра, кидать с только что установленой ОС - смысла по большему счету не имеет, заведомо ошибка пользователя. Процесс пересборки - крайне простой процесс, несмотря на кажущуюся сложность, и как правило - ошибки вызываються именно последствиями восприятия этого деиствия по пересборке, как сложного, а не тем что пересобрать ядро очень сложно... Стоит только пообвыкнуться - и процесс будет происходить на автоматизме. Либо - в случае если ОСь уже давно стоит и используеться - неправильным обновлением (например - неполным) исходных кодов. добавлено через 14 минут Он веть наверное по статье по какой-нибуть все делает, а авторы таких статей - могут вертеть что и как хотят... допустим автору вздумалось реализовать что-либо поддержкой netgraph, а в этом случае - подгружаемые модули не обеспечивают полной функциональности. Тем более - по началу, достаточно сложно определить - что можно сделать по своему? Что можно поменять, так чтобы не обломаться неудачей... вот он и компилит едро видимо... Впринципе - наверное это правильно, ибо - кроме процесса - тут и результат не маловажен, несмотря на познавательный характер деятельности - в результате чтото должно работать). Это воодушевляет. добавлено через 23 минуты не выйдет) не выйдет при установке, добавить функциональности в ядро). но можно подгружать модули, в том числе и после установки). В частности с модулями - это можно сделать в файле /boot/loader.conf По умолчанию он пустой, и чтобы точно знать что писать - в катологе /boot/default/ есть фаил который моджет вам помочь, в описании загрузки модуля. В простейшем случае - например загрузка модуля для поддержки тв тунера на чипе филипс saa7134 надо написать там: saa_enable="YES" где saa - это часть имени (без расширения .ko) фаила модуля ядра, для поддержки этого тюнера, сам файл лежит в /boot/kernel/ или (например если драйвер собран из колекции портов) в /boot/modles/ . К слову сказать - в /etc/defaults/ есть примеры описания запуска уже некоторых служб, навроде NAT или пакетных фильтров. Механизм - крайне похож, на механизм загрузки модулей ядра. добавлено через 29 минут Если целью стоит - заставить работать все с использованием ipfw то надо сделать так: (метод для тех, кто мало знает, но хочет) comp#ls /boot/kernel | grep ipf ipfw.ko ipfw_nat.ko следовательно для поддержки пакетного фильтра и NAT yflj lj,fdbnm d /boot/loader.conf строчки ipfw_enablеr="YES" ipfw_nat_enable="YES" Перезагрузиться. добавлено через 56 минут Если имена не ресолвятся в самой вряхе, при наличии коректной записи днс в resolv.conf значит пакетный фильтр запрещает прохождение пакетов между сервером днс и твоеи машиной. Для начала - проыверить прохождение пакетов: nslookup >server 89.249.224.1 >ya.ru Non autoritative answear Name: ya.ru 213.180.34.80 Жирным выделено все, чт опишется руками, курсивом - вывод в ответ. Как видим в примере с днс сервером вист онлайн - днс трафик проходит, и имена ресолвятся. Если не проходит - начинаем издеваться над пакетным фильтром. В первую очередь - выясняем политику по умолчанию (все резать или все5 пропускать). Если имеем ipfw то : ipfw list выдаст список текущих правил, последнеес самым большим номером, (deny или allow) будет определять базовую политику пакетног офильтра, если дени - все что не подошло под предыдущие по порядку номера правило - канет в лету, если allow - проидет насквозь. если фильтр все запрешает - добавляем правило вида: comp#ipfw add 10 allow udp from $me to any port 53 via vr0 keep-state что означаеть - добавить правило 10 согласно которому пропускать udp трафик от меня ($me="<реальный IP который смотрит в инет>") к любому хосту на 53 порт через интерфеис vr0, кроме того - пропускать ОТВЕТНЫЙ трафик (за это отвечает опция keep-state). Если используеться PF - то все намног опроше, заходим в файл конфигурации, смотрим первые правила (в секции правил), если видим там block all значит политика запретительная, и надо добавить правило которое разрешит днс трафик правило вида pass {udp} from $me to any port 53 keep-state в случае - когда машина с фрибсд используеться как шлюз, в вильтр надо добавит полную прозрачность для днмс трафика pass {udp} from any to any port 53 проферить коректность синтаксиса написания можно: pfctl -nf /etc.pf.conf загрузить - так же но без n. еще полезно читать man pf.conf, если хочеться по русски, есть такое дело - почти полный перевод документации по pf на русский язык. И еще мног очего на тему БСД, ссылку правда пока не помню, но в поисовике легко найти по ключевым словам "pf документация". Помню - в имени домена на котором эти доки лежат, есть strela и он наш, русский. добавлено через 1 час 1 минуту для быстрой проверки причин не работающего днс, можно попробыват ьотключить пак. фильтр - например: pfctl -d если после этого все заработает с ЛОКАЛЬНОЙ машины, значит и правда причина в пакетном фильтре.
ругается на добавлено через 59 минут кстати ls /boot/kernel | grep ipf выдает ipfw.ko ipfw.ko.symbols ng_ipfw.ko ng_ipfw.ko.symbols после d /boot/loader.conf строчки ipfw_enablеr="YES" ipfw_nat_enable="YES" и перезагрузки на ipfw add 60 fwd 192.168.1.220,3128 tcp from any to any http in via vr0 опять пишет getsockopt (IP_FW_ADD): Invalid argument(((
Смотри вот тебе пример файла конфигурации pf: твое правило на которое ругаеться pf следовательно будет выглядеть так: pass on vr0 proto {udp} from any to any port 53 keep-state. для ipwf - помоему кромеподдержки в ядре, надо еще и в rc.conf написать, чтобы тот стартовал. Кстати для pf тоже, вручную: pfctl -e Вот это: ls /etc/rc.d | grep ipfw выведет тебе название скритпта, который надо будет запускат ьчерез rc.conf