Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: [HOWTO] Программная точка доступа (hostapd)  (Прочитано 169318 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн fwhr

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Решил написать некое хауту по настройке wi-fi роутера на базе имеющегося компьютера.
"Проверено на себе": работают в режиме точки доступа такие имеющиеся у меня карточки (название/вывод lspci -nn):
Acorp WPCI-G / Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller [14e4:4318] (rev 02)
Asus WL-138G / RaLink RT2561/RT61 802.11g PCI [1814:0301]

Для этого установил чистую 9.04(i386) на старый системник, воткнув в него 2 сетевые карты и 1 wi-fi карту (начал с BCM4318). Условимся, что интернет приходит на eth0(dhcp), а eth1 и wlan0 объединю в мост br0(IP 10.8.0.1), дабы клиенты, подключаясь и к сетевому и к беспроводному интерфейсу, были в одной подсети и получали адрес по dhcp от нашего роутера (10.8.0.100 - 10.8.0.200). Имя Точки Доступа (ТД) SupaAP, шифрование WPA-PSK, пароль SupaPass-меняйте на своё усмотрение...

Процесс установки, думаю, освещать не стОит :).
Дабы не собирать дрова/софт(как это приходилось делать на ядрах до 2.6.30), воспользовался пакетами из репозитория, что называется, свежайшими на данный момент времени.

Upd: изменил пути к пакетам.
Создал каталог/скачал в него пакеты/установил:
mkdir download
cd download/

sudo aptitude install binutils

wget -c http://mirror.yandex.ru/ubuntu/pool/universe/h/hostapd/hostapd_0.6.9-3_i386.deb
wget -c http://mirror.yandex.ru/ubuntu/pool/main/libn/libnl/libnl1_1.1-5_i386.deb
wget -c http://mirror.yandex.ru/ubuntu/pool/main/w/wireless-tools/wireless-tools_29-2ubuntu6_i386.deb
wget -c http://mirror.yandex.ru/ubuntu/pool/main/w/wireless-tools/libiw29_29-2ubuntu6_i386.deb

wget -c https://launchpad.net/~xorg-edgers/+archive/ppa/+build/1091947/+files/linux-headers-2.6.30-10_2.6.30-10.12_all.deb
wget -c https://launchpad.net/~xorg-edgers/+archive/ppa/+build/1091947/+files/linux-headers-2.6.30-10-generic_2.6.30-10.12_i386.deb
wget -c https://launchpad.net/~xorg-edgers/+archive/ppa/+build/1091947/+files/linux-image-2.6.30-10-generic_2.6.30-10.12_i386.deb

wget -c https://launchpad.net/~xorg-edgers/+archive/ppa/+build/1091947/+files/linux-doc-2.6.30_2.6.30-10.12_all.deb
wget -c https://launchpad.net/~xorg-edgers/+archive/ppa/+build/1091947/+files/linux-source-2.6.30_2.6.30-10.12_all.deb

sudo dpkg -i *
Upd: ввиду того, что устанавливается новое ядро, возможно, Вам нужно будет переустановить проприетарные дрова на видеокарту.
Пакеты source и doc можете не ставить.

Переименовал конфигурационный файл, кому интересно, там очень много и подробно о настрйках ТД, если необходимо будет что-то менять - вэлкам в него...
sudo mv /etc/hostapd/hostapd.conf /etc/hostapd/original-hostapd.confДальше:
sudo aptitude install bridge-utilsОтредактировал файл настроек сетевых интерфейсов.
sudo nano /etc/network/interfacesТак:
Цитировать
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto wlan0
iface wlan0 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

#Bridge interface
auto br0
iface br0 inet static
    address 10.8.0.1
    network 10.8.0.0
    netmask 255.255.255.0
    broadcast 10.8.0.255
    bridge-ports wlan0 eth1
Конфигурация нашей ТД:
sudo nano /etc/hostapd/hostapd.confтакая:
Цитировать
interface=wlan0
driver=nl80211
bridge=br0
ssid=SupaAP
country_code=RU
hw_mode=g
channel=7

macaddr_acl=0

wpa=3
wpa_key_mgmt=WPA-PSK
wpa_passphrase=SupaPass
wpa_pairwise=TKIP CCMP
В принципе, всё вроде понятно в ней...
Дальше:
sudo nano /etc/default/hostapdРаскомментируем и изменим строки:
Цитировать
RUN_DAEMON="yes"
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Разрешим пропуск трафика:
sudo nano /etc/sysctl.confраскомментировав строку
Цитировать
net.ipv4.ip_forward=1
В
sudo nano /etc/rc.localдо строки exit 0 добавим
Цитировать
/sbin/iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmt
/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
Установим, настроим  dhcp сервер:
sudo aptitude install dhcp3-server
-----
sudo nano /etc/dhcp3/dhcpd.conf
Я оставил/отредактировал конфиг так:
Цитировать
ddns-update-style none;
option domain-name "SupaNetwork";
option domain-name-servers 208.67.222.222, 208.67.220.220;
default-lease-time 42300;
max-lease-time 84600;
log-facility local7;
subnet 10.8.0.0 netmask 255.255.255.0 {
  range 10.8.0.100 10.8.0.200;
  option routers 10.8.0.1;
}
Затем в файле
sudo nano /etc/default/dhcp3-serverУкажем наш интерфейс:
Цитировать
INTERFACES="br0"

В принципе, на этом настройка как бы и закончена... Можно перезагрузиться и искать новоиспечённую ТД клиентом.
Да, забыл, для работы BCM4318 нужно скачать прошивку (руками или автоматом), выберем более удобный вариант:
sudo aptitude install b43-fwcutterв случае же RT2561 дополнительных па не нужно было совершать, работает в таком окружении "типа из коробки"...
Ещё, к слову: USB-брелоки Orient и Acorp не помню их артикулов (данные по lsusb - 0ace:1215 ZyDAS WLA-54L WiFi, драйвер zd1211rw) в качестве ТД по данному мануалу не запустился (наверное, не умеет-таки он в режиме master работать)...

Возможно, написал "криво", сильно не ругайте ;)

Подробнее про hostapd можно почитать тут: http://hostap.epitest.fi/hostapd/

ЗЫ: NetworkManager-ом на десктопе не пользуюсь, к слову...
« Последнее редактирование: 27 Декабрь 2010, 22:31:35 от Malamut »
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн Plastikman

  • Участник
  • *
  • Сообщений: 159
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #1 : 09 Июль 2009, 02:08:34 »
Написано всё очень хорошо, огромное спасибо. По поводу NetworkManager совершенно согласен, на свежей системе первым делом удаляю именно его.

Оффлайн fwhr

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #2 : 09 Июль 2009, 02:19:12 »
Не имею ничего против NM на лаптопе (и даже очень удобно им пользоваться), но на десктопе, imho, он совершенно ни к чему.
Но, к слову, если есть и другое мнение о nm в данном контексте, ради Бога, это же линукс. Нравится - юзаешь, нет - ищешь иные пути/способы решения задач...
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн Plastikman

  • Участник
  • *
  • Сообщений: 159
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #3 : 09 Июль 2009, 02:29:40 »
Не имею ничего против NM на лаптопе (и даже очень удобно им пользоваться), но на десктопе, imho, он совершенно ни к чему.
Но, к слову, если есть и другое мнение о nm в данном контексте, ради Бога, это же линукс. Нравится - юзаешь, нет - ищешь иные пути/способы решения задач...
Абсолютно с вами согласен, а если говорить об альтернативах NM, то не могу не упомянуть о такой шикарной программке как wicd. Почему ей еще не заменили NM не совсем понятно. Ну да ладно.  :)

Оффлайн MIxan

  • Активист
  • *
  • Сообщений: 285
  • Кто победил, тот и добро!
    • Просмотр профиля
    • Блог вебмастера
Re: How-To: Программная точка доступа (hostapd)
« Ответ #4 : 09 Июль 2009, 03:29:31 »
У меня есть задача. Посадить 200 пользователей на вай фай. Радиус в 1.5 км. Понятно что обычный роутер это дело не выдержит, даже если ему присобачить большущюю антену. Как я понял для этого нужен отдельный сервер и охринительно большая антена, все это есть. А как все это собрать воедино не знаю. Кто знает как это реализовать????

Оффлайн fwhr

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #5 : 09 Июль 2009, 03:38:00 »
Ну, в данной реализации ТД одновременно можно подключиться твоим 200 пользователям (диапазон адресов, выдаваемых dhcp сервером только нужно расширить), но 1,5 километра для вайфая.... это, как мне кажется, главная засада...
Опять же, когда твои 200 юзеров начнут делить канал хорошо если в 18 мегабит...
« Последнее редактирование: 09 Июль 2009, 03:40:26 от fwhr »
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн MIxan

  • Активист
  • *
  • Сообщений: 285
  • Кто победил, тот и добро!
    • Просмотр профиля
    • Блог вебмастера
Re: How-To: Программная точка доступа (hostapd)
« Ответ #6 : 09 Июль 2009, 06:16:50 »
Просто у меня такая ситуация что у нас большая организация, там цеха, офисы в радиусе по 1.5 км. Всем ставить витую нет смысла. Каким образом можно увеличить хорошо дальность и мощьность сигнала? кроме того что поставить большую антену на крыше 5-ти этажного здания.

Оффлайн fwhr

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #7 : 09 Июль 2009, 12:23:06 »
Не знаю, может, несколько локальных качественных точек доступа, но...
Опять же, от задач зависит, вдруг ты хочешь активно с 1С не клиент-серверной по этой сети работать, так скорости просто не хватит и т.д.
Вот ты пишешь, что "охренительно большая антена" у тебя уже есть, ну так просто попробуй настроить точку и провести натурные испытания дальности действия (походи с буком по площади)...
А может, побродить по гуглу/форумам, где, возможно, уже велось обсуждение "дальнобойных вайфаев" и опыта применения...
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн sht0rm

  • Старожил
  • *
  • Сообщений: 3397
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #8 : 09 Июль 2009, 13:14:34 »
MIxan
Прямая видимость есть? (Ставите "мощную антенну" и направленные у клиентов)
А то эти ваши "цеха, офисы" меня смущают...

Оффлайн MIxan

  • Активист
  • *
  • Сообщений: 285
  • Кто победил, тот и добро!
    • Просмотр профиля
    • Блог вебмастера
Re: How-To: Программная точка доступа (hostapd)
« Ответ #9 : 09 Июль 2009, 21:15:57 »
Да, займусь на следующей неделе. Всем спасибо, потом сообщу о результатах

Оффлайн aliftin

  • Старожил
  • *
  • Сообщений: 1398
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #10 : 10 Июль 2009, 08:57:50 »
Я почему то думал что в linux такого нет. Спасибо за описание.
Если мы не можем до чего то дотянуться, мы виним в этом не свой рост, не отсутствие табуретки, а свою цель.

Оффлайн pshvetso

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #11 : 21 Июль 2009, 15:52:33 »
Возникла проблема с точкой доступа на ubuntu и hostapd. Подробности http://forum.ubuntu.ru/index.php?topic=62844

Оффлайн rusty_dragon

  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #12 : 23 Июль 2009, 13:55:33 »
fwhr
хорошее howto, но моя проблема в том, что карточка не переключается в master mode.
соответственно hostapd пишет:
Failed to set interface wlan0 to master mode.
nl80211 driver initialization failed.
аналогично iwconfigError for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Invalid argument.

у меня появилось подозрение, что это глюк железа, так как карточка очень плохо ловит сигнал и на расстоянии метров 10 теряет сигнал в режиме ad-hoc
думаю пойти поменять в магазин, правда время много прошло.

Оффлайн fwhr

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #13 : 23 Июль 2009, 16:57:38 »
Знаешь, вот написал хавту, а пакетов в репе именно этих уже и нет, а 31 ядро не каждый будет ставить - могут возникнуть проблемы с дровами ати и нвидиа.
Ты ядро поставил 30 или 31-е? Потому что на 28-м именно так и будет ругаться hostapd, я проверял когда устанавливал систему для этой темы...
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн rusty_dragon

  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
Re: How-To: Программная точка доступа (hostapd)
« Ответ #14 : 23 Июль 2009, 19:58:32 »
сначала скажи, у тебя на том ядре, где не запустилась hostapd можно было перевести iwconfig-ом b43 в мастер мод?

вот карточки atheroth переводятся в режим ap с помощью своей утилиты, я думал может у broadcom-овского модуля есть какие-нибудь опции запуска? лично я не нашел про него в сети ничего.

а ты уверен, что на 28 именно не переключалось? может оно ругалось на отсутствие драйвера nl80211?

 

Страница сгенерирована за 0.145 секунд. Запросов: 23.