четверг, 25 октября 2007 г.

записки how-to'шные...

Уфф..... йа добил wifi $) теперь снова все работает, бука видит локалку и все, к ней прилинкованное, а также ходит в инет.. причем реализовал все через прозрачный (transparence) proxy Squid-3.0-pre3, так что на буке терь инет есть у всего и всегда. Раньше же ограничение было тока на тот софт, что сам умеет ходить через прокси. Итак, чтобы в третий раз такой пакости не случилось, запишу кой чего сюда (да и может кому еще пригодится, если конечно этот гипотетический "кто-то" волею судеб попадет на сию страничку и отыщет вожделенный пост в куче флейма, коего тут в достатке.Итак, openSuSE Linux 10.2 использует iptables v1.3.6 в качестве пакетного фильтра. Однако основная работа происходит не с самим iptables, а через SeSEfirewall - фирмовый генератор правил для него. Его же конфигурация настраивается или через YaST (вот только почему то в этой реинкарнации моей системы она работает оочень криво - модуль Firewall я имею в виду), или через рукопашное редактирование /etc/sysconfig/SuSEfirewall с оглядкой на /usr/share/doc/packages/SuSEfirewall2/EXAMPLES, где разобраны типичные примеры для основных возможных сетевых ситуаций. В принципе, все элементарно... Задача стоит такая: есть сеть 10.0.0.0/21, в которой находится ББ (десктопная система). ББ смотрит на нее через eth2. Бук цепляется к ББ по одноранговой wi-fi сети 169.254.0.0/24. У ББ за нее отвечает интерфейс wlan0. Нужно пустить бук в созданную на wlan0 wi-fi сеть, дать ему доступ в локалку и в инет. Пусть wlan0 на ББ поднят и функционирует, DHCP сервер у нас уже работает ( черех YaST DHCP настраивается буквально с полпинка - все что нужно, это указать, на каких интерфейсах слушать запросы (wlan0 в моем случае), и какие настройки передавать по получении данного запроса: IP-адрес, DNS-серверы, время аренды.) и при включении бука wi-fi карточка оного получает от ББ адрес и входит в сеть. Что делаем...
FW_DEV_EXT="eth2" # относим eth0 к внешней зоне FW_DEV_INT="wlan0" # а wifi - ко внутренней FW_ROUTE="yes" # активируем возможность роутинга пакетов FW_MASQUERADE="yes" # ..и "маскарадинга" (прячем одну подсеть от другой) FW_MASQ_DEV="eth2" # прятаться будем за "спиной" eth0 FW_MASQ_NETS="169.254.0.0/24" # объект "замышивания" FW_SERVICES_EXT_TCP="1:65000" # что пропускать во внешную (ext) сеть - так как нам бы лишь запустить чтобы работало на первое время, то с секурностью не заморачиваемся, и разрешаем нафиг все. FW_SERVICES_EXT_UDP="1:65000" # да-да, совсем все, и для UDP тоже ;)
После сих нехитростей и /sbin/rcSuSEfirewall restart все должно работать. Теперь пару слов по сабжу инета. В принципе, еще до беспроводных опытов, проблема вывода бука в Сеть решалась установкой squid-а и соответствующими настройками браузера. Этой уже работающей платформой и воспользуемся, слегка ее расширив - а именно, сделаем зачатки "прозрачного прокси". Почему зачатки? А дело в том, что в основном на буке мне нужен браузинг, поэтому сделал редирект на фаерволе вот такой командой
FW_REDIRECT="169.254.0.0/24,0/0,tcp,80,3214"
в уже ставшем почти родным /etc/sysconfig/SuSEfirewall Да, и вот чего, самому сквиду нужно дать указание работать как transparency - для етого в /etc/squid/squid.conf нужно добавить
http_port 3214 transparent # ну я такой порт использую ;)
Воть... После перезапуска сквид начнет ловить "редирекченные пакеты", и бук получить возможность браузинга по нету. Конечно, лучше бы сделать полный роутинг в инет, но что то пока не выходит. Буду дальше думать и пытаться. А пока хоть так. В принципе и все... Дальше таки набросаю вкратце о тонкостях и основных нюансах оживления своей D-Link DW-510 беспроводной карточки при помощи ndiswrapper'a и поднятия на ней ad-hoc сети.
Там тоже несложно, но стоит записать. Лишь бы планирование не нарушилось... Следите за рекламой, короче говоря.

Комментариев нет:

][a-][a c башорга