dastapov: (Default)
Dmitry Astapov ([personal profile] dastapov) wrote2006-11-28 12:33 am
Entry tags:

Дурная голова WiFi покоя не дает

В некотором царстве, в некотором государстве жили-были один Десктоп и три Ноутбука.

Два ноутбука были нормальными, а на третьем стоял Linux.

Сначала windows-ноутбуки были маленькими и несмышлеными, но потом выросли и обнаружили, что у них есть (не смейтесь!) WiFi. Поначалу ноутбуки не знали, что с ним делать, но потом природа взяла свое, и они стали жить друг с другом как придется (сиречь, ad-hoc). Ноутбук с Linux-ом тоже имел WiFi, но, будучи выходцем из конторских, был гордым - желал только долгосрочных и управляемых (managed) отношений, и как попало с другими ноутбуками жить не хотел.

Как-то раз Десктоп застал windows-ноутбуки в процессе коннекта, и ему стало завидно. Он сделал себе операцию и вставил самый толстый WiFi (на 108 mbit) прямо в PCI, и пошел проситься жить ad-hoc с ноутбуками - глядишь, что нибудь как-нибудь и получится ad-hoc.

Фиг там - сказали ноутбуки. У нас лишнего DHCP нет, да и вообще - не дело это ad-hoc втроем жить. Купи нам access point (AP), заодно подключим кабельный модем - у него WiFi нет, зато есть интернет.

Сказано - сделано. Купили AP, подключили кабельный модем. Заодно пригласили к себе и ноутбук с Linux-ом - а то не по-товарищески как-то получается.

И началась у них не жизнь, а сказка. Проснулся, из hibernate-а вылез, а тебе уже и WiFi, и DHCP, и IP-адрес на блюдечке несут, интернет из кабельного модема льется - только ведра подставляй.

Впрочем, счастье длилось недолго. Прошел месяц, и windows-ноутбуки стали вести себя странно и подозрительно. То и дело они говорили - "не надо мне вашего IP и вашего DHCP, возму я себе IP из zeroconf (169.254.xxx.xxx) и буду тихо грустить в углу, а вы пытайтесь меня развесилить".

Поют им песенку - грустят ноутбуки. Включают/выключают WiFi - грустят ноутбуки. Делают им "ipconfig /renew" - все бестолку. Чего ж вам надо-то? "А вот перезагрузите AP - мы и развеселимся".

И точно - перегрузишь AP, тут ноутбуки и развеселятся. И IP у них появляется, и DHCP они кушают. Часа на два-три. А потом - опять грустят.

Дурной пример заразителен - глядя на ноутбуки, стали периодически грустить даже linux-ноутбук и Десктоп.

Пришла бабка-ворожка. "Все вижу, все знаю", - говорит. "Ясно вижу - беды ваши в firmware! Позолотите ручку - вылью вам firmware, а вместе с ним тоска выльется". Позолотили ручку, залила бабка-ворожка в AP новую firmware и ушла.

Прошло три часа - снова грусть и смурь полезла из всех углов. Сидят Десктоп и ноутбуки, из zeroconf носа не кажут. в интернет не ходят, файлы друг другу не посылают. Мда, похоже, опять надо AP перезагружать.

А у AP от перезагрузок уже календарь перед глазами плывет и учет DHCP leases сбивается - что кому давал, не помнит, все путает, вместо новых IP выдает юзанные. Вы получали когда-то вместо нового IP - юзаный? Если да, то вам и так все понятно, а остальным - словами не опишешь.

Мда... Ну, делать нечего - пришлось обращаться к традиционной медицине. Позвали доктора. Пришел доктор, посмотрел и сказал: "Микстуры пить поздно. Только операция". И сделал ноутбукам с windows лоботомию.

И тут грусть-тоску как рукой сняло. И стали они жить-поживать и гигазы вареза наживать.

Мораль сказки

Маленькие дети!

Ни за что на свете!

Настроив на windows-машинах Ad-Hoc WiFi network с ESSID, допустим, "some network", не давайте такой же ESSID той Managed сети, которую вы строите на access point-е.

А если уже даете тот же ESSID, так по крайней мере используйте в Ad-Hoc и Managed сетях разные WEP-ключи или сертификаты.

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

Ноутбуки с windows будут через раз коннектится либо в managed режиме к AP, либо в ad-hoc - друг к другу. Причем, поскольку это Windows, то понять, в каком режиме работает WiFi можно только по виду иконки в списке доступных безпроводных сетей, который запрятан в дебри настрое сетевого интерфейса.

Ноутбук с linux-ом и десктоп про ad-hoc сеть не знают и пытаются работать только через AP, но им от этого не легче.

А не легче им потому, что у AP, похоже, развивается шизофрения на почве наблюдения в эфире "своего" ESSID с правильным ключем, но - в ad-hoc режиме, и он медленно сходит с ума и уходит в себя до ребута.

А самое обидное, что это бардак я развел своими руками, и он меня изводил месяц, прежде, чем я сел и подумал о причинах и следствиях.

Re: :-)

[identity profile] maycat.livejournal.com 2006-11-28 06:41 am (UTC)(link)
какое яркое описание банального глюка :) :) это читается просто взахлеб

кстати, если не сложно, хотелось бы пролить свет на такие вопросы, как будет час та натхнення -

1. при перемещении по городу Киеву на машине, GPRS отсыхает, и пока его полностью не уложишь и не поднимешь снова - иконка горит, а пакеты не ходют :(
2. авторизация WAP - как это работает, может ли сайт узнать с какого телефона\номера к нему пришли :)
3. ну и собсно перемещение между сотами при активном голосовом канале. :)

вот :)

Re: :-)

[identity profile] http://users.livejournal.com/_adept_/ 2006-11-28 07:06 am (UTC)(link)
про третье - запланирован отдельный пост

про второе - работает так же, как в случае пары "браузер - веб сайт". Номер телефона может быть передан (и обычно передается) в заголовке HTTP WAP запроса с названием, кажется, MOBILE_USER_AGENT, или как-то так.

про первое - таймслоты под GPRS выделяются по остаточному принципу, и вполне возможно, что ты въехал в зону, где их (свободных таймслотов) просто нет. Надо подождать, пока появятся :) Правда, за это время могут "отсохнуть" по тайм-ауту TCP-соединения, что скорее всего в твоем случае и происходит.

Re: :-)

[identity profile] maycat.livejournal.com 2006-11-29 01:29 pm (UTC)(link)
http://www.korrespondent.net/main/171824/

что скажете?

Re: :-)

[identity profile] http://users.livejournal.com/_adept_/ 2006-11-29 02:50 pm (UTC)(link)
Я вот думаю - писать отдельный пост про number portability теперь или меня колесуют за "потенциальную сдачу инфы конкурентам"? :)