]> www.wagner.pp.ru Git - sites/home_page.git/blobdiff - hints/bluenet.html
Описана смерть собаки Муси
[sites/home_page.git] / hints / bluenet.html
index 4963f9b19bd8c9e1c49850fee7c234be06912c19..4a79e7f115c9a20f927b23cf4cb5db161d016cb1 100644 (file)
 <HTML><HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=koi8-r">
-<TITLE>óÏÅÄÉÎÅÎÉÅ ËÏÍÐØÀÔÅÒÏ× × ÓÅÔØ ÞÅÒÅÚ Bluetooth</TITLE>
-<meta name="description" CONTENT="íÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÏÐÙÔ ÎÁÓÔÒÏÊËÉ
-ÂÌÀÔÕÓÎÏÇÏ Network access point">
+<META HTTP-EQUIV="Content-Type" "text/html; charset=utf-8">
+<TITLE>Соединение компьютеров в сеть через Bluetooth</TITLE>
+<meta name="description" CONTENT="Мой собственный опыт настройки
+блютусного Network access point">
 </HEAD><BODY>
-<H1>óÏÅÄÉÎÅÎÉÅ ËÏÍÐØÀÔÅÒÏ× × ÓÅÔØ ÞÅÒÅÚ bluetooth</H1>
 
-ëÏÇÄÁ Õ ÍÅÎÑ ÚÁ×ÅÌÁÓØ × ÄÏÍÅ ÐÁÒÏÞËÁ Bluetooth ÁÄÁÐÔÅÒÏ×, ÍÎÅ ÚÁÈÏÔÅÌÏÓØ
-ÉÓÐÏÌØÚÏ×ÁÔØ ÉÈ ÎÅ ÔÏÌØËÏ ÄÌÑ ÏÂÍÅÎÁ ÄÁÎÎÙÍÉ Ó ÍÏÂÉÌØÎÙÍÉ ÔÅÌÅÆÏÎÁÍÉ, ÎÏ
-É ÄÌÑ ÏÒÇÁÎÉÚÁÃÉÉ ÓÅÔÉ, ÞÔÏÂÙ ÐÅÒÅÍÅÝÁÑÓØ Ó ÎÏÕÔÂÕËÏÍ ÐÏ ËÏÍÎÁÔÅ ÎÅ
-ÐÒÉÈÏÄÉÌÏÓØ ÔÁÓËÁÔØ ÚÁ ÓÏÂÏÊ ethernet-Ï×ÓËÉÊ ËÁÂÅÌØ.
+Автор выражает благодарность <a href="http://vap.livejournal.com">Андрею
+Васильеву</a> за подсказку насчет конфигурирования bridge через файл
+interfaces.
+
+<H1>Соединение компьютеров в сеть через bluetooth</H1>
+
+Когда у меня завелась в доме парочка Bluetooth адаптеров, мне захотелось
+использовать их не только для обмена данными с мобильными телефонами, но
+и для организации сети, чтобы перемещаясь с ноутбуком по комнате не
+приходилось таскать за собой ethernet-овский кабель.
 <p>
-÷ÓÅ ÏÐÉÓÁÎÉÑ PAN (Personal area networking) ËÏÔÏÒÙÅ ÍÎÅ ÕÄÁÌÏÓØ ÎÁÊÔÉ ×
-ÓÅÔÉ (ÎÁÐÒÉÍÅÒ <a
-href="http://bluez.sourceforge.net/contrib/HOWTO-PAN">ÜÔÏ</a>) ËÁËÉÅ-ÔÏ
-ÆÒÁÇÍÅÎÔÁÒÎÙÅ. ðÏÜÔÏÍÕ Ñ ÒÅÛÉÌ ÏÐÉÓÁÔØ Ó×ÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÏÐÙÔ. ÷ÐÒÏÞÅÍ,
-×ÒÑÄ ÌÉ Õ ÍÅÎÑ ÐÏÌÕÞÉÔÓÑ ÌÕÞÛÅ.
+Все описания PAN (Personal area networking) которые мне удалось найти в
+сети (например <a
+href="http://bluez.sourceforge.net/contrib/HOWTO-PAN">это</a>) какие-то
+фрагментарные. Поэтому я решил описать свой собственный опыт. Впрочем,
+вряд ли у меня получится лучше.
 
-<H2>ðÏÓÔÁÎÏ×ËÁ ÚÁÄÁÞÉ</H2>
+<H2>Постановка задачи</H2>
 
-éÍÅÅÔÓÑ
+Имеется
 <ol>
-<li> óÔÁÃÉÏÎÁÒÎÙÊ ËÏÍÐØÀÔÅÒ, ÐÏÄËÌÀÞÅÎÎÙÊ Ë ÉÎÔÅÒÎÅÔÕ.
-<li> ìÏËÁÌØÎÁÑ ÓÅÔØ ÐÏÄËÌÀÞÅÎÎÁÑ Ë ÄÁÎÎÏÍÕ ËÏÍÐØÀÔÅÒÕ (Ô.Å ÚÁÄÁÞÉ
-ÆÏÒ×ÁÒÄÉÇÁ, ÍÁÓËÁÒÁÄÉÎÇÁ etc ÕÖÅ ÒÅÛÅÎÙ, É ÎÁ ËÏÍÐØÀÔÅÒÅ ÉÍÅÅÔÓÑ
-ÒÁÂÏÔÁÀÝÊ dhcp-ÓÅÒ×ÅÒ)
-<li> îÅËÏÔÏÒÏÅ ËÏÌÉÞÅÓÔ×Ï ÎÏÕÔÂÕËÏ× (N, N&lt;7)
-<li> îÅËÏÔÏÒÏÅ ËÏÌÉÞÅÓÔ×Ï (N+1) USB Bluetooth ÁÄÁÐÔÅÒÏ×
+<li> Стационарный компьютер, подключенный к интернету.
+<li> Локальная сеть подключенная к данному компьютеру (т.е задачи
+форвардига, маскарадинга etc уже решены, и на компьютере имеется
+работающй dhcp-сервер)
+<li> Некоторое количество ноутбуков (N, N&lt;7)
+<li> Некоторое количество (N+1) USB Bluetooth адаптеров
 </ol>
 
-èÏÞÅÔÓÑ:<br>
-þÔÏÂÙ ÐÒÉ ×ÔÙËÁÎÉÉ × ÎÏÕÔÂÕË bluetooth ÁÄÁÐÔÅÒÁ ÐÕÔÅÍ ÍÉÎÉÍÁÌØÎÙÈ
-ÔÅÌÏÄ×ÉÖÅÎÉÊ ÎÏÕÔÂÕË ÏËÁÚÁÌÓÑ × ÓÅÔÉ.
+Хочется:<br>
+Чтобы при втыкании в ноутбук bluetooth адаптера путем минимальных
+телодвижений ноутбук оказался в сети.
 
-<h2>îÁÓÔÒÏÊËÁ ÔÏÞËÉ ÄÏÓÔÕÐÁ</h2>
-ôÏÞËÏÊ ÄÏÓÔÕÐÁ Ñ×ÌÑÅÔÓÑ ÓÔÁÃÉÏÎÁÒÎÙÊ ËÏÍÐØÀÔÅÒ. îá ÎÅÍ Õ ÍÅÎÑ ÓÔÏÉÔ
+<h2>Настройка точки доступа</h2>
+Точкой доступа является стационарный компьютер. НА нем у меня стоит
 Debian sarge. 
 <p>
-äÌÑ ÏÒÇÁÎÉÚÁÃÉÉ ÄÏÓÔÕÐÁ ÔÒÅÂÕÅÔÓÑ ÒÅÛÉÔØ Ä×Å ÚÁÄÁÞÉ
+Для организации доступа требуется решить две задачи
 <ol>
-<li>þÔÏÂÙ ËÏÍÐØÀÔÅÒ ÐÒÉÎÉÍÁÌ ÓÏÅÄÉÎÅÎÉÑ
-<li>þÔÏÂÙ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÓÏÅÄÉÎÅÎÉÑ ÐÏ dhcp ÏÔÄÁ×ÁÌÁÓØ ÎÅÏÂÈÏÄÉÍÁÑ
-ËÏÎÆÉÇÕÒÁÃÉÏÎÎÁÑ ÉÎÆÏÒÍÁÃÉÑ
+<li>Чтобы компьютер принимал соединения
+<li>Чтобы после установки соединения по dhcp отдавалась необходимая
+конфигурационная информация
 </ol>
-äÌÑ ÒÅÛÅÎÉÑ ÐÅÒ×ÏÊ ÚÁÄÁÞÉ ÄÏÓÔÁÔÏÞÎÏ ÚÁÐÕÓÔÉÔØ sdpd É pand Ó ÐÒÁ×ÉÌØÎÙÍÉ
ÁÒÁÍÅÔÒÁÍÉ. üÔÉ ÄÅÍÏÎÙ (ËÁË É hcid) ×ÈÏÄÑÔ × ÐÁËÅÔ bluez-utils. 
+Для решения первой задачи достаточно запустить sdpd и pand с правильными
¿Ð°Ñ\80амеÑ\82Ñ\80ами. Ð­Ñ\82и Ð´ÐµÐ¼Ð¾Ð½Ñ\8b (как Ð¸ hcid) Ð²Ñ\85одÑ\8fÑ\82 Ð² Ð¿Ð°ÐºÐµÑ\82 bluez-utils. 
 <p>
-÷ Debian ÄÌÑ ÜÔÏÇÏ ÄÏÓÔÁÔÏÞÎÏ ÐÒÏÐÉÓÁÔØ Ä×Å ÓÔÒÏÞËÉ ×
+В Debian для этого достаточно прописать две строчки в
 <tt>/etc/default/bluez-utils</tt>
 <pre>
 PAND_ENABLED=1
 PAND_OPTIONS="--listen --role NAP"
 </pre>
 
-òÅÛÅÎÉÅ ×ÔÏÒÏÊ ÚÁÄÁÞÉ - ÂÏÌÅÅ ÓÌÏÖÎÏÅ É ÍÅÎÅÅ ÄÏËÕÍÅÎÔÉÒÏ×ÁÎÏÅ. ÷ÉÄÉÍÏ,
-ÂÏÌØÛÉÎÓÔ×Ï Á×ÔÏÒÏ× ÈÁÕÔÕÛÅË ÐÏÄÎÉÍÁÌÉ ÓÔÁÔÉÞÅÓËÉÅ ÁÄÒÅÓÁ ÎÁ ÏÂÏÉÈ
-ËÏÎÃÁÈ ÌÉÎËÁ É ÎÁ ÜÔÏÍ ÕÓÐÏËÁÉ×ÁÌÉÓØ. îÏ Õ ÍÅÎÑ ÅÓÔØ ÖÅÎÁ, Á Õ ÖÅÎÙ -
-ÎÏÕÔÂÕË. ðÏÜÔÏÍÕ ÐÒÉÈÏÄÉÔÓÑ ÒÅÛÁÔØ ÚÁÄÁÞÕ × ÏÂÝÅÍ ×ÉÄÅ - Ó ×ÏÚÍÏÖÎÏÓÔØÀ
ÏÄËÌÀÞÅÎÉÑ ÂÏÌÅÅ ÞÅÍ ÏÄÎÏÇÏ ÕÓÔÒÏÊÓÔ×Á.
-<p>
-äÌÑ ÔÏÇÏ ÞÔÏÂÙ dhcp-ÓÅÒ×ÅÒ ÓÌÕÛÁÌ ÎÁ ÉÎÔÅÒÆÅÊÓÅ, ÉÎÔÅÒÆÅÊÓ ÄÏÌÖÅÎ
-ÓÕÝÅÓÔ×Ï×ÁÔØ × ÍÏÍÅÎÔ ÚÁÐÕÓËÁ dhcpd. âÏÌÅÅ ÔÏÇÏ, pand ÓÏÚÄÁÅÔ ÄÌÑ
-ËÁÖÄÏÇÏ bluetooth-ÓÏÅÄÉÎÅÎÉÑ ÏÔÄÅÌØÎÙÊ ÉÎÔÅÒÆÅÊÓ. úÁÍÕÞÁÅÛØÓÑ ÏÐÉÓÙ×ÁÔØ
-É ÐÅÒÅÄÅÒÇÉ×ÁÔØ dhcpd ÐÏ ËÁÖÄÏÍÕ ÓÏÅÄÉÎÅÎÉÀ. ðÏÜÔÏÍÕ ×ÓÅ HOWTO
-ÒÅËÏÍÅÎÄÕÀÔ ÉÓÐÏÌØÚÏ×ÁÔØ bridging. üÔÏ ÔÁËÁÑ ÆÕÎËÃÉÏÎÁÌØÎÏÓÔØ ×
-ÌÉÎÕËÓÏ×ÏÍ ÑÄÒÅ, ÐÏÚ×ÏÌÑÀÝÁÑ ÏÂßÅÄÉÎÉÔØ ÎÅÓËÏÌØËÏ ÆÉÚÉÞÅÓËÉÈ ÉÎÔÅÒÆÅÊÓÏ×
-× ÏÄÉÎ. äÌÑ ÒÁÂÏÔÙ Ó ÂÒÉÄÖÉÎÇÏÍ ÎÁÍ ÐÏÎÁÄÏÂÉÔÓÑ ÐÁËÅÔ bridge-utils, ×
-ÓÏÓÔÁ× ËÏÔÏÒÏÇÏ ×ÈÏÄÉÔ ÕÔÉÌÉÔÁ brctl.
-<p>
-÷ PAN-HOWTO ÒÅËÏÍÅÎÄÕÅÔÓÑ ÏÒÇÁÎÉÚÏ×ÁÔØ ÂÒÉÄÖ-ÉÎÔÅÒÆÅÊÓ, × ËÏÔÏÒÙÊ ÂÕÄÅÔ
-ÄÏÂÁ×ÌÅΠÜÚÅÒÎÅÔ-ÉÎÔÅÒÆÅÊÓ ÌÏËÁÌØÎÏÊ ÓÅÔÉ É ÂÕÄÕÔ Á×ÔÏÍÁÔÉÞÅÓËÉ
-ÄÏÂÁ×ÌÑÔØÓÑ bluetooth-ÉÎÔÅÒÆÅÊÓÙ ÐÏ ÍÅÒÅ ×ÏÚÎÉËÎÏ×ÅÎÉÑ.
+Решение второй задачи - более сложное и менее документированое. Видимо,
+большинство авторов хаутушек поднимали статические адреса на обоих
+концах линка и на этом успокаивались. Но у меня есть жена, а у жены -
+ноутбук. Поэтому приходится решать задачу в общем виде - с возможностью
¿Ð¾Ð´ÐºÐ»Ñ\8eÑ\87ениÑ\8f Ð±Ð¾Ð»ÐµÐµ Ñ\87ем Ð¾Ð´Ð½Ð¾Ð³Ð¾ Ñ\83Ñ\81Ñ\82Ñ\80ойÑ\81Ñ\82ва.
+<p>
+Для того чтобы dhcp-сервер слушал на интерфейсе, интерфейс должен
+существовать в момент запуска dhcpd. Более того, pand создает для
+каждого bluetooth-соединения отдельный интерфейс. Замучаешься описывать
+и передергивать dhcpd по каждому соединению. Поэтому все HOWTO
+рекомендуют использовать bridging. Это такая функциональность в
+линуксовом ядре, позволяющая объединить несколько физических интерфейсов
+в один. Для работы с бриджингом нам понадобится пакет bridge-utils, в
+состав которого входит утилита brctl.
+<p>
+В PAN-HOWTO рекомендуется организовать бридж-интерфейс, в который будет
+добавлен эзернет-интерфейс локальной сети и будут автоматически
+добавляться bluetooth-интерфейсы по мере возникновения.
 <P>
-<b>îÉËÏÇÄÁ ÔÁË ÎÅ ÄÅÌÁÊÔÅ</b>. äÅÌÏ × ÔÏÍ ÞÔÏ ÂÒÉÄÖ ÏΠÐÏ Ó×ÏÅÊ ÐÒÉÒÏÄÅ
-×ÒÏÄÅ ÈÁÂÁ - ÏΠÐÒÏÔÁÌËÉ×ÁÅÔ ×ÓÅ ÐÁËÅÔÙ, ÐÒÉÈÏÄÑÝÉÅ ÎÁ ÏÄÉΠÉÚ
-×ËÌÀÞÅÎÎÙÈ × ÎÅÇÏ ÉÎÔÅÒÆÅÊÓÏ× ×Ï ×ÓÅ ÏÓÔÁÌØÎÙÅ. óÏÏÔ×ÅÔÓÔ×ÅÎÎÏ,
-ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ÂÒÉÄÖÁ ÒÁ×ÎÁ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ ÓÁÍÏÇÏ ÔÏÒÍÏÚÎÏÇÏ ÉÚ
-×ËÌÀÞÅÎÎÙÈ × ÎÅÇÏ ÉÎÔÅÒÆÅÊÓÏ×. ðÏÜÔÏÍÕ ×ËÌÀÞÉ× × ÏÄÉΠÂÒÉÄÖ 100-mb
-ethernet É bluetooth, ×Ù ÐÏÓÁÄÉÔÅ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ethernet-Á ÄÏ
-ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÓÏÔÉ ÂÌÀÔÕÚÁ - Ô.Å. ÄÏ ÐÒÉÍÅÒÎÏ ÏÄÎÏÇÏ ÍÅÇÁÂÉÔÁ.
-<p>
-ðÏÜÔÏÍÕ ÍÙ ÄÅÌÁÅÍ ÓÌÅÄÕÀÝÅÅ:
+<b>Никогда так не делайте</b>. Дело в том что бридж он по своей природе
+вроде хаба - он проталкивает все пакеты, приходящие на один из
+включенных в него интерфейсов во все остальные. Соответственно,
+производительность бриджа равна производительности самого тормозного из
+включенных в него интерфейсов. Поэтому включив в один бридж 100-mb
+ethernet и bluetooth, вы посадите производительность ethernet-а до
+производительнсоти блютуза - т.е. до примерно одного мегабита.
+<i>(На самом деле код бриджинга, конечно, гораздо умнее, и может работать
+как свитч, а не как хаб. Более того, можно его настроить так, чтобы
+можно было втыкать и вытыкать ethernet не прерывая работы, чтобы если
+есть кабель, пакеты автоматически бегали по нему, а если нет то через
+bluetooth. Но лучше не связываться.)</i> 
+<p>
+Поэтому мы делаем следующее:
 <ol>
-<li>óÏÚÄÁÅÍ É ÎÁÓÔÒÁÉ×ÁÅÍ ÂÒÉÄÖÅ
-<li>îÅ ×ËÌÀÞÁÅÍ ÎÉ ÏÄÎÏÇÏ ÆÉÚÉÞÅÓËÏÇÏ ÉÎÔÅÒÆÅÊÓÁ × ÜÔÏÔ ÂÒÉÄÖ
-<li>îÁÐÕÓËÁÅÍ ÎÁ ÜÔÏÔ ÂÒÉÄÖ dhcpd.
+<li>Создаем и настраиваем бридже
+<li>Не включаем ни одного физического интерфейса в этот бридж
+<li>Напускаем на этот бридж dhcpd.
 </ol>
-<p>
-çÏÔÏ×ÏÇÏ ÓËÒÉÐÔÁ ËÕÄÁ ÍÏÖÎÏ ×ÐÉÓÁÔØ ËÏÍÁÎÄÙ ÓÏÚÄÁÎÉÑ ÂÒÉÄÖÁ Ñ ÎÅ ÎÁÛÅÌ.
-ðÏÜÔÏÍÕ × /etc/init.d  ÂÙÌ ÄÏÂÁ×ÌÅΠÓËÒÉÐÔ ÓÌÅÄÕÀÝÅÇÏ ÓÏÄÅÒÖÁÎÉÑ:
-
+Насторйки bridge, рекомендованные в HOWTO-PAN следующие:
 <pre>
-#!/bin/sh
-#
-# This script configures bridge interface for Bluetooth Personal Area
-# network. This interface should be up before dhcpd started
-#
-#
-IFACE=pan0
-ADDRESS=10.0.0.1
-NETMASK=255.255.255.0
-BROADCAST=10.0.0.255
-
-case "$1" in
-start)
-       # Creating bridge interface $IFACE
-       brctl addbr $IFACE
-       # Setting options according to HOWTO-PAN
-       brctl setfd $IFACE 0
-       brctl stp $IFACE off
-       # Configuring interface
-       ifconfig $IFACE $ADDRESS netmask $NETMASK broadcast $BROADCAST
-       ;;
-stop) ifconfig pan0 down
-       ;;
-*) 
-       echo "Usage $0 start|stop" &gt;&amp;2 
-;;     
-esac
+brctl setfd pan0 0
+</pre>
+Установить <tt>forward delay</tt> - задержку в пересылке пакета в 0 
+<pre>
+brctl stp pan0 off
 </pre>
+Запретить использование Spanning tree protocol.
+<p>
+Эти возможности кода bridging в линуксовом ядре предназначены для
+ситуаций, когда сети объединяются более чем одним bridge и нужно
+принимать меры для того чтобы пакеты не бегали по кругу. В данной
+простой ситуации - топология "звезда", нам это не нужно, а задержки оно
+добавляет.
 
-îÁ ÜÔÏÔ ÓËÒÉÐÔ ÓÏÚÄÁΠÓÉÍÌÉÎË × /etc/rc2.d Ó ÎÏÍÅÒÏÍ, ÍÅÎØÛÉÍ ÞÅÍ Õ
-dhcpd (ÔÏÔ S20, Á ÜÔÏÔ S15)
 <p>
-÷ ÐÒÉÎÃÉÐÅ, ÍÏÖÎÏ ÂÙÌÏ ÂÙ ÎÅ ×ËÌÀÞÁÔØ × ÜÔÏÔ ÓËÒÉÐÔ ËÏÍÁÎÄÕ ifconfig, Á
-ÞÅÓÔÎÏ ÏÐÉÓÁÔØ ÅÇÏ × /etc/network/interfaces ËÁË
+Сетевые интерфейсы в debian описываются в файле
+<tt>/etc/network/interfaces</tt>,
+документированном в man-странице <b>interfaces</b>(5). На первый взгляд,
+ничего касающегося бриджей там не обнаруживается. Но, оказывается,
+синтаксис этого файла расширяем с помощью скриптов, помещаемых в
+<tt>/etc/network/if*.d</tt>.
+<p>
+Пакет bridge-utils приносит с собой и устанавливает в
+/etc/network/if-pre-up.d скрипт bridge, который обрабатывает команды
+конфигурирования bridge. Дополнительные директивы конфигурации
+интерфейса, обрабатываемые этим скриптом, описаны в
+<tt>/usr/share/doc/bridge-utils/README.Debian.gz</tt>.
+<p>
+Поэтому добавляем в <tt>/etc/network/interfaces</tt> фрагмент следующего
+содержания:
 
 <pre>
 auto pan0
 iface pan0 inet static
+       bridge_ports none
+       bridge_fd 0
+       bridge_stp off
        address 10.0.0.1
-       network 10.0.0.0
        netmask 255.255.255.0
-       broadcast 10.0.0.255
+       brodcast 10.0.0.255
 </pre>
-
-îÏ ÔÏÇÄÁ ÓÌÅÄÕÅÔ ÐÏÚÁÂÏÔÉÔØÓÑ, ÞÔÏÂÙ ÓËÒÉÐÔ, ×ÙÐÏÌÎÑÀÝÉÊ <tt>brctl
-addbr</tt>. ×ÙÐÏÌÎÑÌÓÑ ÄÏ /etc/init.d/networking, Ô.Å. × /etc/rcS.d.
-ðÏÞÅÍÕ-ÔÏ ÍÎÅ ÜÔÁ ÉÄÅÑ ÎÅ ÐÏÎÒÁ×ÉÌÁÓØ.
+Наиболее важной в этой конструкции является директива bridge_ports none.
+Скрипт bridge вступает в работу именно при  наличии директивы
+bridge_ports с непустым списком интерфейсов. Поскольку на самом деле мы
+не хотим добавлять какие-либо интерфейсы в список сразу (только по мере
+подключения bluetooth-клиентов) то используем зарезервированное слово
+none.
+<p>
+Две другие строки, начинающиеся с bridge соответствуют вышеприведенным
+командам конфигурации.
 <p>
-ôÅÐÅÒØ ËÏÇÄÁ Õ ÎÁÓ ÅÓÔØ ÉÎÔÅÒÆÅÊÓ, ÍÙ ÍÏÖÅÍ ÐÒÏÐÉÓÁÔØ × /etc/dhcpd.conf
-ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ subnet É ÄÏÂÁ×ÉÔØ ÉÍÑ ÜÔÏÇÏ ÉÎÔÅÒÆÅÊÓÁ × ÓÔÒÏÞËÕ
-INTERFACES × /etc/default/dhcpd.
+Теперь когда у нас есть интерфейс, мы можем прописать в /etc/dhcpd.conf
+соответствующую subnet и добавить имя этого интерфейса в строчку
+INTERFACES в /etc/default/dhcpd.
 <p>
-ðÒÉ×ÅÄÕ ÎÁ ×ÓÑËÉÊ ÓÌÕÞÁÊ ÆÒÁÇÍÅÎÔ ÉÚ dhcpd.conf
+Приведу на всякий случай фрагмент из dhcpd.conf
 <pre>  
-# üÔÏ ÁÄÒÅÓ ÓÅÒ×ÅÒÁ × ethernet-ÓÅÔÉ
+# Это адрес сервера в ethernet-сети
 server-identifier 192.168.217.1;
 
   subnet 10.0.0.0 netmask 255.255.255.0 {
@@ -156,63 +166,62 @@ server-identifier 192.168.217.1;
     option time-servers 192.168.217.1;
     option lpr-servers 192.168.217.1;
     range 10.0.0.2 10.0.0.254;
-       # ïÂÑÚÁÔÅÌØÎÏ ÐÅÒÅÄÁ×ÁÊÔÅ domain-name ÓÅÒ×ÅÒ
+       # Обязательно передавайте domain-name сервер
     option domain-name-servers 192.168.217.1;
     option routers 10.0.0.1;
        
   }
 </pre>
 <p>
-ïÓÔÁÌÏÓØ ÐÏÚÁÂÏÔÉÔØÓÑ Ï ÔÏÍ, ÞÔÏÂÙ ×ÎÏ×Ø ÐÏÑ×ÌÑÀÝÉÅÓÑ bnep-ÉÎÔÅÒÆÅÊÓÙ
-×ËÌÀÞÁÌÉÓØ × ÜÔÏÔ ÂÒÉÄÖ É ÏÂÓÌÕÖÉ×ÁÌÉÓØ dhcpd. äÌÑ ÜÔÏÇÏ ÐÉÛÅÍ ÓËÒÉÐÔ
-<tt>/etc/bluetooth/pan/dev-up</tt> ÓÌÅÄÕÀÝÅÇÏ ÓÏÄÅÒÖÁÎÉÑ:
+Осталось позаботиться о том, чтобы вновь появляющиеся bnep-интерфейсы
+включались в этот бридж и обслуживались dhcpd. Для этого пишем скрипт
+<tt>/etc/bluetooth/pan/dev-up</tt> следующего содержания:
 <pre>
 #!/bin/sh
 brctl addif pan0 $1
 ifconfig $1 0.0.0.0
 </pre>
-ðÅÒ×ÁÑ ËÏÍÁÎÄÁ × ÜÔÏÍ ÓËÒÉÐÔÅ ÄÏÂÁ×ÌÑÅ ÉÎÔÅÒÆÅÊÓ $1 (Ô.Å. ÔÏÔ, ËÏÔÏÒÙÊ
-pand ÐÅÒÅÄÁÌ × ËÁÞÅÓÔ×Å ÐÁÒÁÍÅÔÒÁ ÓËÒÉÐÔÕ) × ÂÒÉÄÖ pan0.
-÷ÔÏÒÁÑ ËÏÍÁÎÄÁ - ÐÏÄÎÉÍÁÅÔ ÉÎÔÅÒÆÅÊÓ. õÓÔÁÎÁ×ÌÉ×ÁÔØ ÏÓÍÙÓÌÅÎÎÙÊ IP ÔÁÍ
-ÎÅ ÎÁÄÏ, Ï ÜÔÏÍ ÐÏÚÁÂÏÔÉÔÓÑ ÕÒÏ×ÅÎØ ÂÒÉÄÖÁ.
-
-
+Первая команда в этом скрипте добавляе интерфейс $1 (т.е. тот, который
+pand передал в качестве параметра скрипту) в бридж pan0.
+Вторая команда - поднимает интерфейс. Устанавливать осмысленный IP там
+не надо, об этом позаботится уровень бриджа. Вероятно, было бы
+достаточно прописать туда up вместо нулевого адреса.
 <p>
-äÁ, ÅÝÅ. òÅËÏÍÅÎÄÕÀ ÚÁÍÅÎÉÔØ ÎÁ ÜÔÏÍ ËÏÍÐØÀÔÅÒÅ ÓÔÁÎÄÁÒÔÎÙÊ     ÓËÒÉÐÔ
-bluez-pin ÎÁ ÞÔÏ-ÎÉÂÕÄØ ÍÅÎÅÅ ÉÎÔÅÒÁËÔÉ×ÎÏÅ. éÎÁÞÅ ×Ï ×ÓÑËÏÍ ÓÌÕÞÁÅ ÐÒÉ
ÅÒ×ÏÍ ÓÏÅÄÉÎÅÎÉÉ ÐÒÉÄÅÔÓÑ ××ÏÄÉÔØ PIN ÎÁ ÏÂÏÉÈ ËÏÍÐØÀÔÅÒÁÈ.
-óÍ ÎÁÐÒÉÍÅÒ <a
-href="http://www.45.free.net/~vitus/software/unix/btdev.html">ÍÏÊ
-×ÁÒÉÁÎÔ ÒÅÛÅÎÉÑ ÜÔÏÊ ÐÒÏÂÅÌÍÙ</a>
+Да, еще. Рекомендую заменить на этом компьютере стандартный   скрипт
+bluez-pin на что-нибудь менее интерактивное. Иначе во всяком случае при
¿ÐµÑ\80вом Ñ\81оединении Ð¿Ñ\80идеÑ\82Ñ\81Ñ\8f Ð²Ð²Ð¾Ð´Ð¸Ñ\82Ñ\8c PIN Ð½Ð° Ð¾Ð±Ð¾Ð¸Ñ\85 ÐºÐ¾Ð¼Ð¿Ñ\8cÑ\8eÑ\82еÑ\80аÑ\85.
+См например <a
+href="http://www.wagner.pp.ru/~vitus/software/unix/btdev.html">мой
+вариант решения этой пробелмы</a>
 
 
 
-<h2> îÁÓÔÒÏÊËÁ ËÌÉÅÎÔÁ</h2>
+<h2> Настройка клиента</h2>
 
-îÁÓÔÒÏÊËÁ ËÌÉÅÎÔÁ ÎÁÍÎÏÇÏ ÐÒÏÝÅ. ðÏÓËÏÌØËÕ ÓÅÒ×ÅÒ ÁÎÎÏÒÓÉÒÕÅÔ ÓÅÂÑ ÐÏ
ÒÏÔÏËÏÌÕ sdp, ÔÏ ÎÁ ËÌÉÅÎÔÅ ÄÏÓÔÁÔÏÞÎÏ ÚÁÐÕÓÔÉÔØ 
+Настройка клиента намного проще. Поскольку сервер аннорсирует себя по
¿Ñ\80оÑ\82околÑ\83 sdp, Ñ\82о Ð½Ð° ÐºÐ»Ð¸ÐµÐ½Ñ\82е Ð´Ð¾Ñ\81Ñ\82аÑ\82оÑ\87но Ð·Ð°Ð¿Ñ\83Ñ\81Ñ\82иÑ\82Ñ\8c 
 <pre>
 pand --search 
 </pre>
-þÔÏÂÙ ÓÏÅÄÉÎÅÎÉÅ ÕÓÔÁÎÏ×ÉÌÏÓØ.
+Чтобы соединение установилось.
 <p>
-÷ <tt>/etc/network/interfaces</tt> ÐÒÏÐÉÓÙ×ÁÅÍ
+В <tt>/etc/network/interfaces</tt> прописываем
 <pre>
 iface bnep0 inet dhcp
 </pre>
-É ÔÅÐÅÒØ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ×Ó£ ÚÁÒÁÂÏÔÁÌÏ, ÄÏÓÔÁÔÏÞÎÏ ÞÔÏÂÙ ËÔÏ-ÔÏ ÐÏÓÌÅ
-ÕÓÔÁÎÏ×ÌÅÎÉÑ ÓÏÅÄÉÎÅÎÉÑ ÄÅÒÎÕÌ <tt>ifup bnep0</tt>
-<p>
-ñ ÐÒÏÐÉÓÁÌ ÜÔÏ × <tt>/etc/bluetooth/pan/dev-up</tt>, ÈÏÔÑ, ×ÅÒÏÑÔÎÏ,
-ÍÏÖÎÏ ÂÙÌÏ ÐÒÏÓÔÏ ÐÒÏÐÉÓÔÁØ × <tt>/etc/network/interfaces</tt> ÄÌÑ ÜÔÏÇÏ
-ÉÎÔÅÒÆÅÊÓÑ <tt>mapping hotplug</tt>
-<p>
-ïÓÔÁÌÓÑ ÏÄÉÎ-ÅÄÉÎÓÔ×ÅÎÙÎÊ ×ÏÐÒÏÓ - Á ËÔÏ ÂÕÄÅÔ ÚÁÐÕÓËÁÔØ pand Ó ÒÕÔÏ×ÙÍÉ
ÒÁ×ÁÍÉ ÐÒÉ ×ÔÙËÁÎÉÉ bluetooth-ÁÄÁÐÔÅÒÁ × ÎÏÕÔÂÕË. íÏÑ ÐÁÒÁÎÏÊÑ ÎÅ
ÏÚ×ÏÌÑÅÔ ÒÁÚÒÅÛÉÔØ ÜÔÏ ÄÅÌÁÔØ hotplug-Õ. íÁÌÏ ÌÉ ÇÄÅ Ñ ÒÅÛÉÌ
-×ÏÓÐÏÌØÚÏ×ÁÔØÓÑ  bluetooth ÄÌÑ ÒÁÂÏÔÙ Ó ÍÏÂÉÌØÎÙÍ ÔÅÌÅÆÏÎÏÍ, É ÍÁÌÏ ÌÉ
-ËÁËÕÀ ÓÅÔØ ÏÎÏ ÔÁÍ ÎÁÊÄÅÔ. ðÏÜÔÏÍÕ ÐÉÛÅÍ × <tt>/usr/local/bin</tt>
-ÔÁËÏÊ ÓËÒÉÐÔ
+и теперь для того, чтобы всё заработало, достаточно чтобы кто-то после
+установления соединения дернул <tt>ifup bnep0</tt>
+<p>
+Я прописал это в <tt>/etc/bluetooth/pan/dev-up</tt>, хотя, вероятно,
+можно было просто пропистаь в <tt>/etc/network/interfaces</tt> для этого
+интерфейся <tt>mapping hotplug</tt>
+<p>
+Остался один-единственынй вопрос - а кто будет запускать pand с рутовыми
¿Ñ\80авами Ð¿Ñ\80и Ð²Ñ\82Ñ\8bкании bluetooth-адапÑ\82еÑ\80а Ð² Ð½Ð¾Ñ\83Ñ\82бÑ\83к. Ð\9cоÑ\8f Ð¿Ð°Ñ\80анойÑ\8f Ð½Ðµ
¿Ð¾Ð·Ð²Ð¾Ð»Ñ\8fеÑ\82 Ñ\80азÑ\80еÑ\88иÑ\82Ñ\8c Ñ\8dÑ\82о Ð´ÐµÐ»Ð°Ñ\82Ñ\8c hotplug-Ñ\83. Ð\9cало Ð»Ð¸ Ð³Ð´Ðµ Ñ\8f Ñ\80еÑ\88ил
+воспользоваться  bluetooth для работы с мобильным телефоном, и мало ли
+какую сеть оно там найдет. Поэтому пишем в <tt>/usr/local/bin</tt>
+такой скрипт
 <pre>
 #!/bin/sh
 case "$1" in
@@ -222,22 +231,22 @@ on)
 off)
         sudo pand -K
 ;;      
-# úÄÅÓØ ÂÕÄÅÔ ×ÁÒÉÁÎÔ ÒÁÂÏÔÙ ÎÏÕÔÂÕËÁ ÓÅÒ×ÅÒÏÁ
+# Здесь будет вариант работы ноутбука сервероа
 *)
         echo "use $0 on|off" &gt;&amp;2
         exit 1
 esac    
 </pre>
 
-é × /etc/sudoers ÐÒÏÐÉÓÙ×ÁÅÍ ÚÁÐÕÓË /usr/bin/pand ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÅÊ ÂÅÚ
ÁÒÏÌÑ.
+И в /etc/sudoers прописываем запуск /usr/bin/pand для пользователей без
¿Ð°Ñ\80олÑ\8f.
 <p>
-ôÅÐÅÒØ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÏËÁÚÁÔØÓÑ × ÓÅÔÉ ÎÁÍ ÎÕÖÎÏ ÓÄÅÌÁÔØ ÒÏ×ÎÏ Ä×Å ×ÅÝÉ:
+Теперь для того, чтобы оказаться в сети нам нужно сделать ровно две вещи:
 <ol>
-<li>÷ÏÔËÎÕÔØ bluetooth ÁÄÁÐÔÅÒ
-<li>ÓËÁÚÁÔØ bluenet on
+<li>Воткнуть bluetooth адаптер
+<li>сказать bluenet on
 </ol>
 
-äÏÐÏÌÎÉÔÅÌØÎÙÅ ÏÓÏÂÅÎÎÏÓÔÉ ÎÁÓÔÒÏÊËÉ dhcp ÎÁ ÎÏÕÔÂÕËÁÈ, ËÁË ÎÁÐÒÉÍÅÒ, ÐÏÌÅÚÎÏÓÔØ ÌÏËÁÌØÎÏÇÏ DNS-ÓÅÒ×ÅÒÁ, ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÐÁËÅÔÁ resolvconf ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÜÔÏÔ ÓÅÒ×ÅÒ ÈÏÄÉÌ Ë ÐÒÁ×ÉÌØÎÏÍÕ ÆÏÒ×ÁÒÄÅÒÕ, ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÏÐÃÉÉ time-servers É ntp-servers ÏÔÄÁ×ÁÅÍÙÈ dhcp-ÓÅÒ×ÅÒÏÍ ÄÌÑ ÓÉÎÈÒÏÎÉÚÁÃÉÉ ×ÒÅÍÅÎÉ ÏÓÔÁ×ÉÍ ÐÏËÁ ÚÁ ÓËÏÂËÁÍÉ. äÌÑ ÜÔÏÇÏ ÎÕÖÅΠÏÔÄÅÌØÎÙÊ ÔÅËÓÔ, ÔÁË ËÁË ÎÉÞÅÇÏ ÂÌÀÔÕÚ-ÓÐÅÃÉÆÉÞÎÏÇÏ × ÎÉÈ ÎÅÔ. ÷ ÓÌÕÞÁÅ ethernet ÔÁÍ ÔÒÅÂÕÅÔÓÑ ×Ó£ ÔÏ ÖÅ ÓÁÍÏÅ.    
+Дополнительные особенности настройки dhcp на ноутбуках, как например, полезность локального DNS-сервера, использование пакета resolvconf для того, чтобы этот сервер ходил к правильному форвардеру, использование опции time-servers и ntp-servers отдаваемых dhcp-сервером для синхронизации времени оставим пока за скобками. Для этого нужен отдельный текст, так как ничего блютуз-специфичного в них нет. В случае ethernet там требуется всё то же самое.    
 </BODY>
 </HTML>