<!DOCTYPE LINUXDOCtr SYSTEM>
<!-- <!doctype linuxdoc system> -->
<article><!-- LyX 1.2 created this file. For more info see http://www.lyx.org/ -->
<title>Wireless Howto</title>
<author>Roberto Arcomano berto@bertolinux.com</author>
<date>v1.7 - August 23, 2002</date>
<trans>日本語訳 - 木村 智明&lt;<tt>t-kimura@po.shiojiri.ne.jp</tt>&gt; </trans>
<tdate>v1.7.j - Feb 14, 2003</tdate>
<abstract>
<!-- 
Wireless is a new technology in networking cards, with high speed rate
 (up to 11 Mbps). This document explains how to setup Wireless in Linux, compatibility 
 problems, something about geographic requirements and more. Latest release
 of this document can be found at <url url="http://www.bertolinux.com" name="http://www.bertolinux.com"> 
-->
ワイヤレスは、高速(最大 11 Mbps)に通信するネットワークカードの新技術の一つです。
この文章では、Linux を使ったワイヤレス環境の構築方法、
ワイヤレスカードの互換性の問題、配置における要求事項など、いろいろと説明しています。
この文章の最新版は、<url url="http://www.bertolinux.com" name="http://www.bertolinux.com">にあります。
<toc>
<sect>
<!-- Introduction -->
はじめに
<sect1>
<!-- Introduction -->
はじめに
<p>
<!-- 
This document explains something about Wireless networking, how to setup 
 it, problems with it. Unliked wired network, Wireless requires some additional
 trick to work well. You should know something about antennas, pointing it,
 roaming info and so on. Feedback are welcome. You can found more interesting
 help at <url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto">
-->
この文章では、ワイヤレスネットワークの構築方法やそれに伴う諸問題について解説しています。
ワイヤレスネットワークは、ケーブルで構築されたネットワークとは少々異なるため、
うまく動かすにはちょっとしたコツが必要です。
アンテナに関する知識をもっていた方がいいですし、それを何処に設置したらよいのか? とか、
ローミングに関する事など、その他諸々について知っておいた方がよいでしょう。
この文章に関するご意見は、大歓迎です。
<url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto">
にアクセスすれば、他の様々な情報が見つかるでしょう。
</p>
<p>
<!--
For any suggestion and feedback write to my <url url="mailto:berto@bertolinux.com" name="email address">
-->
ご意見・ご提案は、私まで<url url="mailto:berto@fatamorgana.com" name="メール">をください。
<newline>
(訳注 - 日本語訳に関するご意見・ご提案は、<url url="mailto:JF@linux.or.jp" name="JF">にお願いします)
</p>
<sect1>Copyright 
<p>Copyright (C) 2000,2001,2002 Roberto Arcomano.</p>
<p>This document is free; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published
 by the Free Software Foundation; either version 2 of the License,
 or (at your option) any later version. 
</p><p>This document is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
 for more details. You can get a copy of the GNU GPL <url url="http://www.gnu.org/copyleft/gpl.html" name="here">
</p>
<sect1>
<!-- Translations -->
翻訳に関して
<p>
<!-- 
If you want to translate this document you are free, you only have to: 
-->
もしあなたが、このドキュメントを翻訳したいと思われた場合、特に制限はありません。
但し実際に翻訳にかかる前に、少なくとも以下の事は行ってください。
</p>
<p>
<enum>
 <item>
<!-- Check that another version of it doesn't already exist at your local LDP -->
あなたの地域の LDP サイトに、この文章の他のバージョンの訳が存在していないかどうか確認してください。
<item>
<!--
Maintain all 'Introduction' section (including 'Introduction', 'Copyright', 'Translations', 'Credits').
-->
'Introduction'の項目全て ('Introduction', 'Copyright', 'Translations', 'Credits' を含む)を残すようにしてください。
</enum>
</p>
<p>
<!--
Warning! You don't have to translate TXT or HTML file, you have to modify LYX file, so that it is possible to convert it all other
 formats (TXT, HTML, RIFF, etc.): to do that you can use "LyX" application you download from <url url="http://www.lyx.org" name="http://www.lyx.org">.
-->
注意! TXT ファイルや HTML ファイルを編集する必要はありません。
LYX ファイルを編集してください。そうすればこのファイルから TXT, HTML, RIFF 等に変換できます。
変換には、"LyX" というアプリケーションを使ってください。
"LyX" は、<url url="http://www.lyx.org" name="http://www.lyx.org"> からダウンロードできます。
<newline>
(訳注 - "LyX" は、標準では日本語環境に対応していません。しかしながら、
 <url url="http://cellular.phys.pusan.ac.kr/cjk.html" name="CJK-LyX"> のパッチを適応する事で、対応できるようです。)
</p>
<p>
<!--
No need to ask me to translate! You just have to let me know (if you want) about your translation.
-->
私まで翻訳の許可を問い合わせる必要はありません。 
もしどうしても知らせたいのでしたら、翻訳結果だけ教えてください。
</p>
<p>
<!-- Thank you for your translation! -->
翻訳して頂いた方の努力に感謝します!
</p>
<sect1>
<!-- Credits -->
Credits/謝辞
<p>
<!--
Thanks to <url url="http://www.fatamorgana.com" name="Fatamorgana Computers"> for hardware equipment and experimental opportunity.
-->
実験のための機材と機会を提供してくれた <url url="http://www.fatamorgana.com" name="Fatamorgana Computers"> に感謝します。
</p>
<p>
<!--
Thanks to <url url="http://www.tldp.org" name="Linux Documentation Project"> for publishing and uploading my document in a very quickly fashion.
-->
私のドキュメントを、迅速に掲示・更新してくれた <url url="http://www.linuxdoc.org" name="Linux Documentation Project"> に感謝します。
</p>
<sect>
<!-- Background Knowledge -->
本文に入る前に
<sect1>
<!-- What about Wireless? -->
ワイヤレス とは何でしょうか？
<p>
<!--
Wireless is a new technology that can help you to connect computers
 at distance. It works with Wireless cards with a TX/RX inside at
 2.4 GHz while the software interface is Ethernet-like, with an hardware
 address different for each card in the world. Typical transmit power
 is 10-20 mW till 100mW (see standard IEEE 802.11 and FCC/CEPT licenses). 
-->
ワイヤレスは、離れた位置にある複数のコンピュータを接続する際に役立つ、新技術の一つです。
この技術は、送受信周波数 2.4GHz 帯を使い、イーサネットに良く似たソフトウェア的なインターフェースを持ち、
ハードウェアアドレスが世界中で重複しない、ワイヤレスカードを使う事で実現できます。
標準的な送信電力は、10-20mW から 100mW 程です。
(詳しくは、IEEE802.11 または FCC/CEPT の仕様を見てください)
</p>
<sect1>
<!-- What's the max distance between radio cards? -->
ワイヤレスネットワークにおける最大通信距離はどの程度ですか?
<label id="antenna">
<p>
<!--
The most important thing in Wireless communications is the line of sight
 clear: you MUST SEE (with eyes or with a binocular) the antenna from the other
 end or you can have (at most) a little tree between them. 
-->
ワイヤレス通信において最も重要な事は、見通しの良さです。
つまり、通信したい位置から(目や双眼鏡で)アンテナが見える必要があります。
直接見えない場合でも、アンテナとの間には、せいぜい小さな木が生えている程度にしておく必要があります。
</p>
<p>
<!--
The distance depends on the antenna and (eventually amplifier) used: 2-300
 meters with a omnidirectional antenna; 1 km with a directive one; 2-3 km with
 a omnidirectional amplified (200mW); some km with parabolic antenna. 50-60
 km with parabolic or directive antenna amplified (some Watts). 
-->
通信距離は、アンテナと(最終的には増幅器)その使い方に依存します。
具体的な例を挙げると、無指向性アンテナを使えば 2-300m 程度、指向性のアンテナなら、1km は通信できるでしょう。
無指向性アンテナと増幅器(200mW の出力)の組み合わせならば 2-3km、パラボラアンテナを使えば数 km は届きます。
パラボラアンテナ又は指向性アンテナと高出力の増幅器の組み合わせならば(数 W で)、50-60km まで伸びます。
</p>
<p>
<!--
Be aware that it is not always legal to amplifier Wireless cards, cause
 you could violate FCC/CEPT (and also your country relative) specifics.
-->
ワイヤレスカードの出力を増幅する事は、かならずしも合法ではないという事、
またこの行為は、FCC/CEPT の仕様や自国の法律を破る原因になりうるという事を、よく理解しておいてください。
</p>
<sect1>
<!-- What's the difference between wired and Wireless network? -->
ケーブルで繋がれたネットワークと、ワイヤレスネットワークとの違いは何でしょうか?
<p>
<!--
Wired networks are very simple to setup (at least at low level). Wireless
 networks are very difficult to setup, to manage, to debug... Typical problem
 with wired networks like hardware install, software install, debug and so on
 become very critical with Wireless: 
-->
ケーブルで繋がれたネットワークは、構築するのがとても簡単です。(少なくとも基本的なところでは)  
一方ワイヤレスネットワークでは、構築するのも、上手に運営するのも、不調の原因を特定するのも、大変難しくなります。
機材の導入に関する問題、ソフトウェアのインストールに関する問題、不調原因の特定など、
ケーブルで繋がれたネットワークで発生する典型的な問題は、ワイヤレスネットワークでは致命的な問題になります。
</p><p>
<enum>
<item>
<!--
You have to choose the right Wireless card: there are many cards from many
 vendor with many requirement and specs. If you want to create a little LAN/WAN
 you have to buy IEEE 802.11 compliant Wireless cards with an Access Point. 
-->
使用するワイヤレスカードは、適切な物を選択しなければなりません。
多くの企業から、様々な仕様・要求事項を備えたカードが販売されています。
もし小規模の LAN/WAN 環境を構築したいのであれば、IEEE 802.11 の仕様に則ったワイヤレスカードと、アクセスポイントを購入すべきです。
<item>
<!-- Many cards are PCMCIA, so you have to install pcmcia Linux source first. -->
ワイヤレスカードの多くは、PCMCIA タイプのものです。
そのため、最初に Linux 用の PCMCIA ソースをインストールする必要があります。
<item>
<!--
You have to test it with 2 running systems, first at very short distance,
 then you can get far.
-->
最初は、二つの装置の間でワイヤレスネットワークの実験をしましょう。
短距離の実験からはじめて、徐々に距離を伸ばしていきましょう。
<item>
<!-- You should test it at any weather (typically rain). -->
様々な天候(例えば雨天など)の条件下で、テストしましょう。
<item><!-- Finally be happy for setting up. -->
構築が終了したあかつきには、最高の気分を味わう事ができますよ。
</enum></p>
<p>
<!--
If you installed a repeater (Linux box that has many Wireless and wired
 cards) you may have problem editing its configuration at distance! 
-->
もしリピーター(複数のワイヤレスカードや、ケーブル接続用カードを装着した
Linux BOX)として機能するように構築しているのなら、設定に関して様々な問題
に直面するでしょうね!
</p>
<sect1>
<!-- What I need to know to setup a Wireless network? -->
ワイヤレスネットワークを構築するには、どんな知識が必要でしょう?
<p>
<!-- There are a number of requirement to setup a Wireless network;-->
ワイヤレスネットワークを構築するには、いくつか必要事項があります。例えば、
</p><p>
<!-- <verb>software requirement:</verb> -->
<verb>ソフトウェアに関する事</verb>
<p>
<enum>
<item>
<!--
Generic network knowledge like IP address, netmask, routing... covered
 by generic Linux NET3-4-HOWTO; * 
-->
IP アドレスやネットマスク、ルーティングなど、一般的なネットワークの知識が必要です。
これらは、Linux NET3-4-HOWTO に詳しいです。
<ref id="note1" name="(注１)">
<item>
<!--
Specific network knowledge like proxy arp, bridging, proc fs, contained
 in Proxy-ARP-Subnet, Bridge Mini-Howto and in Linux Kernel Source (2.2.x or
 2.4.x) under Documentation/networking/ ip-sysctl.txt) * 
-->
proxy arp、ブリッジ、proc fs などの、特殊な機能に関する知識も必要となります。
これらに関しては、Proxy-ARP-Subnet、Bridge Mini-Howto などのドキュメントや、
Linux(2.2.x , 2.4.x) のカーネルソースにある、Documentation/networking/ip-sysctl.txt に詳しいです。
<ref id="note1" name="(注１)">
<item>
<!--
Wireless network knowledge like access mode (ADHOC, INFRASTRUCTURE and
 ACCESS POINT), channel concept, outdoor and indoor defines and so on that you
 can find in any document concerning Wireless: IEEE standard 802.11, CEPT, etc.
-->
ワイヤレスネットワークに関する特有な知識、例えばアクセスモード
(アドホック、インフラストラクチャやアクセスポイントなど)に関する事や、
チャンネルの概念、室外・室内の定義などの知識も必要となります。
これらワイヤレスに関する多くのドキュメントは、IEEE standard 802.11, CEPT などで見つける事ができます。
</enum>
<p>
<!-- <verb>non software requirement: </verb> -->
<verb>ソフトウェア以外に関する事</verb>
<p>
<enum>
<item>
<!-- Minimal experience in antennas, physical mounting, pointing -->
アンテナに関して、その設置方法や設置場所に関する事など、最低限の経験が必要です。
<item>
<!--
Pc hardware installation with particular attention to not produce interference
 between different Wireless Cards (if required).
-->
必要に応じて、複数のワイヤレスカード間で、相互干渉を
起こさないように導入していく技術も必要です。
</enum>
</p><p><!-- finally a great luck! -->
最後に一番必要なのは、”運”です!
</p>
<p>
<!-- 
* All Howtos needed by this document can be retrieved from <url url="http://www.tldp.org" name="http://www.tldp.org"> -->
(注１)<label id="note1">
このドキュメントで紹介している全ての HOWTO は、<url url="http://www.tldp.org" name="http://www.tldp.org">から入手する事ができます。
<newline>
(訳注 - これらドキュメントの日本語訳は、JF <url url="http://www.linux.or.jp/JF/" name="JF">から入手できます)
</p>
<sect1>
<!-- Why should I setup a Wireless network and what I expect from it?  -->
なぜワイヤレスネットワークの構築をすべきなのでしょう? またそれから何を期待できるのでしょうか?
<p>
<!-- Why? Because you're not satisfied of wired network! -->
なぜかって? それはあなたがケーブルで繋がったネットワークに満足していないからでしょ。
</p>
<p>
<!--
With Wireless cards you can go across garden, parks, houses, (but you MUST
 SEE the other end!). 
-->
ワイヤレスカードさえあれば、庭や公園、町並みを突っ切ってどこへでも行く事ができます。
(但し、通信の相手側が見える位置でないとだめですけどね!)
</p>
<p>
<!--
High Level Protocol used in Wireless Cards are the same used in Ethernet
 cards: TCP/IP over Wireless Ethernet-like but make attention to Windows Sharing
 Application, cause if you use Linux to forward, you are warned that a ip forwarder
 doesn't let pass through broadcast messages (see more on NetBIOS protocol):
 in this case you should use a WINS server to support Network Browsing (see
 Samba doc). 
-->
ワイヤレスカードで使われている上位のプロトコルは、イーサネットカードで使われているそれと同様のものです。
例えば TCP/IP は、ワイヤレス環境下でもイーサネットの様に使えます。
しかし、Windows 共有アプリケーションを使う場合は、注意が必要です。
もし転送の目的で Linux を使っていると、
「ip forwarder が、ブロードキャストメッセージを通してくれない」と警告される原因になります。
(もっと詳しく知りたい人は、Net BIOS プロトコルの解説書を見てください)
このような場合は、WINS サーバーを導入して、ネットワークブラウジングをサポートしましょう。(Samba の付属文章を読んでください)
<newline>
(訳注 - Samba は、UNIX マシンを Windows 系 OS のファイル、プリント・サーバーとして機能させるための CIFS/SMB サーバソフトウェアです。詳しくは、
Samba 本部 <url url="http://www.samba.org/" name="http://www.samba.org"> か、
Samba 日本語版<url url="http://www.samba.gr.jp/" name="日本 Samba ユーザ会"> 
にアクセスしてください)
</p><p>
<!--
Wireless let you create a little LAN/WAN with a central point of access
 (maybe with Internet Access!) and give access to anyone by air!
-->
一つのアクセスポイントさえあれば、小規模のワイヤレス LAN/WAN 環境を構築できますし
(たいてい同時にインターネットへのアクセスまでもが可能になります!)、又誰でも無線でアクセスできるようになります!
</p><p>
<!-- Imagine a country all cabled by radio machines. -->
国中に無線システムが整備された国を想像してみてください。
</p><p>
<!-- 
Imagine a network that can connect all country people together, sharing
 files, audio applications, video applications at high bandwidth (like cable
 network). 
-->
すべての国民が同時に接続する事ができて、ファイルを共有し、
高速な回線のもと音楽アプリケーションや映像アプリケーションを(ケーブルで接続されたネットワークと同じ様に)
使う事ができる、そんなネットワーク環境を想像してみてください。
</p><p>
<!--
All that can be done (and it's already done in some country) using Wireless
 cards with Wireless Access Point and Wireless Linux Boxes that can operate
 as repeater (at IP level such as router or, if you want, at data-link level,
 with bridge driver, see more at <url url="http://openrock.net/bridge" name="Bridge Http Link"> or <url url="ftp://openrock.net/bridge" name="Bridge Ftp Link">
-->
これらの事は、ワイヤレスカード、ワイヤレスアクセスポイントと、
リピーターとして機能するワイヤレス Linux Box を使う事で実現可能です。
(すでにいくつかの国では、これらを実現しています)
このようなリピーターの構成方法(IP レベルではルーター、データリンク層まで見る場合はブリッジドライバを用いる)については、
<url url="http://openrock.net/bridge" name="Bridge Http Link"> か <url url="ftp://openrock.net/bridge" name="Bridge Ftp Link"> を見てください)
</p>
<sect1>
<!-- What Wireless cards are covered by this howto? -->
この HOWTO では、どんなワイヤレスカードに対応しているのですか?
<p>
<!--
In this howto I start with a generic configuration (to introduce Wireless
 networking), then I describe an example for each card I knew directly, with
 some trick you can use to improve its performance. 
-->
この HOWTO では、まず一般的な設定(ワイヤレスネットワークの導入のために)からはじめて、
私が直接知っているそれぞれのカードの設定例を、その性能を十分に発揮するための
いくつかのコツを交えながら挙げていきます。 
</p><p>
<!-- <verb>Wireless Card list:</verb> -->
<verb>ワイヤレスカードのリスト</verb>
<p>
<enum>
<item>Proxim Symphony -<url url="http://www.proxim.com" name="http://www.proxim.com">
<item><!-- Webgear AviatorPRO 2.4 (pcmcia support needed) - <url url="http://www.webgear.com" name="http://www.webgear.com"> -->
Webgear AviatorPRO 2.4 (PCMCIA への対応が必要です) - <url url="http://www.webgear.com" name="http://www.webgear.com">
<item><!-- Lucent Wavelan I, II, Orinoco - <url url="http://www.lucent.com" name="http://www.lucent.com"> and <url url="http://www.orinocowireless.com" name="http://www.orinocowireless.com"> -->
Lucent Wavelan I, II, Orinoco - <url url="http://www.lucent.com" name="http://www.lucent.com"> か <url url="http://www.orinocowireless.com" name="http://www.orinocowireless.com">
<item>Cabletron - <url url="http://www.cabletron.com" name="http://www.cabletron.com">
<item>YDI am930_isa - <url url="http://www.ydi.com" name="http://www.ydi.com">
<item>Siemens Radio Modem (Dect) - <url url="http://www.siemens.com" name="http://www.siemens.com">
<item><!-- RadioLan (5 GHZ) - <url url="http://www.radiolan.com" name="http://www.radiolan.com">  -->
RadioLan (5 GHz 帯を使用) - <url url="http://www.radiolan.com" name="http://www.radiolan.com">
</enum>
</p><p>
<!-- 
For a very more exhaustive list see <url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto">. -->
これ以上のリストは、
<url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto"> 
を見てください。
</p><p>
<!-- 
Siemens Radio Modem is not a really 802.11 Wireless card, they are modems
 that you can attach to serial and they act as modem (at 1800 MHz, so DECT technology).
 Appendix B describe their use. 
-->
Siemens Radio Modem は、 802.11 準拠のワイヤレスカードではありません。
これはシリアルを通して接続するモデムであり、実際モデムの様に動作します。
(1800 MHz の周波数帯で、DECT 技術を使っています)
このカードの使用方法は、<ref id="appendix b" name="付録 B">でふれます。
</p><p>
<!--
RadioLan cards work at 5.4GHz in a Windows 9x environment and with a RadioLan
 Access Point that bridges between Wired and Wireless networks (there are no
 Linux driver as I know).
-->
RadioLan のカードは、Windows9x の環境下では 5.4GHz で動作します。
また RadioLan のアクセスポイントと一緒に使うと、アクセスポイントがワイヤー
で繋がれたネットワークとワイヤレスネットワークの橋渡しをしてくれます。
(私の知る限り Linux 用のドライバは提供されていません)
</p>
<sect1>
<!-- How much do they cost?  -->
どのくらいの費用がかかるのでしょう?
<p><!-- 
Wireless cards listed above are very low expansive: they start from very
 few hundred of dollars up to some thousand of dollars for Access Point that
 have 2 Wireless card (Lucent, for example) that can act as a bridge. 
-->
先に示したワイヤレスカードは、とっても安いものです。
これらは２−３百ドル程度から、ブリッジとして機能する二つのワイヤレス
カードを持ったアクセスポイント(Lucent 社の製品など)で数千ドルまでです。
</p>
<sect>
<!-- Technical info about Wireless -->
ワイヤレスに関する技術解説
<p><!-- Here I report some technical info to understand basic Wireless environment. -->
この章では、ワイヤレスの基礎を理解するために、その基本技術について説明します。 
</p>
<sect1>
<!-- Physical Layer -->
物理層
<p><!-- At first layer ISO/OSI we can have 3 kind of spec: -->
ISO/OSI モデルの第一層には、三つの仕様があります
</p><p>
<enum>
<item>
<!-- FHSS, Frequency Hopping Spread Spectrum -->
FHSS (Frequency Hopping Spread Spectrum) - 周波数ホッピング・スペクトラム拡散方式
<item>
<!-- DSSS, Direct Sequence Spread Spectrum -->
DSSS (Direct Sequence Spread Spectrum) - 直接スペクトラム拡散方式
<item>
<!-- Infrared connections, not covered by this howto-->
赤外線方式 - この方式に関しては、この HOWTO ではふれません
</enum>
</p>
<sect1><!-- Configurations -->
構成
<p><!-- 2 types of configurations: -->
構成には２種類あります
</p><p>
<enum>
<item>
<!-- 
AdHoc mode (also called Independent mode), where you have independent networks
 with a BSS (Basic Service Set) each one. Each station has the same BSS.
-->
AdHoc mode - アドホック・モード( Independent mode - 独立モード とも呼ばれます)では、
それぞれの局が、BSS(Basic Service Set)を構成した独立ネットワークを持ちま
す。またこの BSS は、いずれも共通の仕様です。
<item>
<!-- 
Infrastructure mode, where a number of networks (with a BSS each one) can
 communicate each other by means of an Access Point (one for each BSS) to create
 a ESS (Extended Service Set). Also there is a roaming function letting a station
 &quot;attach&quot; to the nearer Access Point. 
-->
Infrastructure mode - インフラストラクチャ・モードでは、
それぞれのネットワーク( BSS を構成しています)は、アクセスポイント
を通して互いに通信します。
つまり、アクセスポイントを中心に、ESS(Extended Service Set)を構築します。
またこのモードでは、局を近くのアクセスポイントに &quot;接続させる
&quot;ローミング機能も備えています。
</enum>
</p><p>
<!--
Adhoc is the simpler method (and the also the less scalable) and let many
 hosts communicate each other directly. The restrictive requirement is that
 all one are to be visible directly to reach a complete coverage of the network. 
 (at least Ideally, because this problem could be solved at IP level! For more
 see Par 5.4).
-->
アドホック・モード はとても単純な機構(拡張性も乏しいが)であり、多数のホスト間でお互い直接通信します。
制限要項は、すべてのホストがネットワークの届く範囲内、つまり直接見えるような位置にあることです。
(これはあくまでも理想です。というのは、この問題は IP 層で解決することも
可能だからです。詳しくは<ref id="ip_setting" name="5.4 章">を見てください)
</p><p>
<!--
<verb>
                                 Adhoc mode 

                               A - - - - - C
                                 &bsol;       /
                               |   &bsol;   /   |
                                     /&bsol;
                               |   /    &bsol;  |
                                 /       &bsol;
                               B - - - - - D
</verb>
-->
<verb>
                              アドホック・モード(Adhoc mode) 

                               A - - - - - C
                                ＼       /
                               |  ＼   /   |
                                     /
                               |   /  ＼   |
                                 /      ＼
                               B - - - - - D
</verb>
</p><p>
<!--
In a Infrastructure environment you use the Access Point to which ALL other
 hosts must connect to share the network. 
-->
インフラストラクチャ・モードの環境下では、アクセスポイントを使います。
全てのホストは、ネットワークを共有するために、アクセスポイントに接続します。
</p><p>
<!--
<verb>
Infrastructure mode 
                                    ESS
 
          A - - - | - Access Point - -  Access Point - | - - - D
 
          B - - - |   BSS1                   BSS2      | - - - E
 
          C - - - |                                    | - - - F
</verb>
-->
<verb>
インフラストラクチャ・モード(Infrastructure mode)
                                    ESS
 
          A - - - | - アクセスポイント - -  アクセスポイント- | - - - D

          B - - - |   BSS1                          BSS2      | - - - E
 
          C - - - |                                           | - - - F
</verb>
</p><p>
<!-- 
B and C could not see D,E and F, but they can communicate as well cause
 all one are using the same ESS. Important: A,B and C could also not see each
 other. 
-->
B と C は、D,E,F を見る事ができません。しかし、全てのホストが同じ ESS を利用する事で、通信が可能です。
重要なのは、A,B,C もまた、お互いが見えていないという事です。
</p><p>
<!-- 
In addition there are terms like indoor and outdoor to distinguish short
 area coverage from long area coverage. 
-->
加えて、室内と室外というように、広いサービス範囲と狭いサービス範囲を区別するという課題があります。
</p>
<sect1>
<!-- Compatibility -->
互換性
<p>
<!-- 
Keep on mind that there are a number of Wireless cards in the world, but
 not every card can communicate with every other one. For talking together the
 cards have to use to: 
-->
世界には数多くのワイヤレスカードが存在している事を、頭の隅においておいてください。
全てのカードが、他の全てのカードと通信できるわけではありません。
互いに通信するためには、以下の条件をみたす必要があります。例えば、
</p><p>
<enum>
<item>
<!-- same configuration mode: all Adhoc or all Infrastructure -->
同じ設定モードを使う - 全てのホストをアドホック・モード にするか、インフラストラクチャ・モードにする
<item>
<!-- same physical layer: all DSSS or all FHSS -->
同じ物理層を使う - 全てのホストが DSSS または FHSS を使う
<item>
<!-- 
same protocol (for example Proxim has its particular proprietary protocol
 OpenAir that cannot talk with other FHSS cards). 
-->
同じプロトコルを使う
(例えば Proxim 社は、OpenAir という他の FHSS カードと通信できない、独自なプロコトルを実装しています)
</enum>
</p><sect1>
<!-- Should I use Adhoc or Infrastructure? -->
アドホック・モードとインフラストラクチャ・モード、どちらを使うべきでしょうか?
<p>
<!-- 
Access Point are very useful and killing problem but they are expansive.
 Ideally, for a more concentrated network you could use Infrastructure mode,
 while for few hosts you can choose Adhoc: why to spend much money for few hosts? 
-->
アクセスポイントはとても便利ですし、問題の発生が少なくなります。
しかしながら、ちょっとばかし高価です。
理想を言えば、大規模なネットワークの運用を目的とするのであれば、インフラストラクチャ・モードを選択すべきでしょう。
ホストの数が少ないのなら、アドホック・モードを選択する事も可能です。
ホストが少ないのに、そんなにお金をかけられませんからね。
</p><p>
<!-- 
Anyway be aware that if you spend much money probably all works well while
 spending less you could have some trouble. 
-->
一方で、お金を多くつぎ込めば、いろいろが順調に進むであろうというのも、また真実です。
お金をけちれば、その分トラブルにもぶつかるでしょうね。 
</p><sect1>
<!-- A Linux Box cannot act as an AccessPoint? -->
Linux Box は、アクセスポイントとして使えませんか?
<p><!-- Good asking! -->
よい質問です！
</p><p>
<!--
Recently there is a kind of hardware that allows this feature:
 Prism2 
-->
最近、このような形態での利用が可能なハードウェアがあります。それは Prism2 というものです。
</p><p>
<!-- 
You can find something at <url url="http://people.ssh.com/jkm/Prism2/" name="http://people.ssh.com/jkm/Prism2/">
-->
Prism2 に関する情報は、<url url="http://people.ssh.com/jkm/Prism2/" name="http://people.ssh.com/jkm/Prism2/">にアクセスしてください。
<newline>
(訳注 - 上記サイトは<url url="http://hostap.epitest.fi/"name="http://hostap.epitest.fi/">に移動しているようです。
また、Prism2 の chip 製造元は、Intersil
<url url="http://www.intersil.com/design/prism/"name="http://www.intersil.com/design/prism/">
です。)
</p>
<sect>
<!-- Toolbox required -->
ツール box の必要条件 
<sect1>
<!-- Hardware requirement -->
ハードウェアとしての必要条件
<p>
<!-- 
You need a Linux Box (486 or, better, a Pentium 100+ with 16MB+ ram), the
 Wireless network card, an antenna (see par 2.2). You need the same on the other
 end (with Win9x or WinNT, if you prefer...) cause you have to simulate a communication! 
-->
まず Linux Box (486 かそれ以上、例えば Pentium 100MHz などの CPU と 16MByte 以上のメモリ)
が必要です。その他には、ワイヤレスネットワークカード、アンテナ(<ref id="antenna" name="2.2 章">参照)も必要です。
ネットワークの相手側( Win9x とか WinNT などがお望みであれば)も、交信の実験を行うのに必要ですね。
</p>
<sect1>
<!-- Software requirement -->
ソフトウェアとしての必要条件
<p><!-- You need:  -->
以下が必要となります -
</p><p>
<enum>
<item>
<!-- recent stable kernel sources (2.2.x) -->
最新の安定版カーネルソース (2.2.x)
<item>
<!-- recent stable pcmcia sources (pcmcia-cs) if you bought a pcmcia card -->
PCMCIA カードを購入したのであれば、最新の安定版 PCMCIA ソース (pcmcia-cs) 
<item>
<!-- 
Wireless network driver: if you don't have it you can download it from
 the vendor web site or the card manufacturer web site. If you don't find it
 you can search at <url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto">. 
-->
ワイヤレスネットワークカード用ドライバ -
もし持っていなのなら、提供メーカーかカード製造会社のウェブサイトからダウンロードできるでしょう。
それでも見つける事ができないのであれば、
<url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="JeanTourrilhes Wireless Howto"> 
で検索することもできます。
</enum>
</p><p>
<!-- 
If you don't find even here you probably have to wait or to convert a Windows
 driver to a Linux driver!! (good luck!). 
-->
どうしても見つからないのであれば、ドライバができるのを待つか、Windows 用の
ドライバを Linux 用のドライバへ変換するしかないでしょう。
(がんばってください!)
</p><p>
<!-- 
After that, you have to recompile your kernel, recompile your pcmcia source 
 (if need by the Wireless card), finally recompile your Wireless driver. That
 is the generic situation, maybe for some card you have to perform step 3 only
 or 1 and 3, it depends on specific driver. 
-->
以上の準備が整った後、カーネルの再コンパイルを行います。
続いて PCMCIA のソースを再コンパイル(ワイヤレスカードを使うのに必要であれば)します。
そして最後に、ワイヤレスドライバを再コンパイルします。 
これらは一般的な手法です。
使うカードによってはステップ 3 だけで良いでしょうし、ステップ 1 と 3 が必要かもしれません。
この辺はドライバの仕様によって違います。
</p>
<sect>
<!-- Overview on Wireless network setup.-->
ワイヤレスネットワーク構築の概要
<sect1>
<!-- Fundamental steps -->
基礎的な段階
<p>
<!-- 
Once you have got the needed material and you have compiled all the needed
 you should do the fundamental step in a Wireless configuration: 
-->
一旦必要なものを入手して、必要なコンパイルをすべて実行してしまったら、
基礎的なワイヤレスの設定段階へ進みましょう。
 </p><p>
<enum>
<item>
<!-- 
Low level kernel config Let the Linux Kernel see your Wireless card (at
 low level, such as ioport, interrupts, dma...): you must see some kind of kernel
 message that advertise you that Wireless card has been right found and configured. 
-->
カーネルの低レベルの設定 - 
カーネルの低レベルの設定を行い、Linux のカーネルがワイヤレスカードを認識できるようにしましょう。
(低レベルとは、例えば I/O Port とか、割り込み(IRQ)とか、DMA などです)
つまりカーネルから、「ワイヤレスカードを正しく認識して設定しました」という表示が
出るように設定しなければなりません。
<item>
<!-- 
Data-link level setting For each particular Wireless card there is an utility
 that can set typical Wireless data-link level value. For example in Proxim
 Symphony the utility is called &quot;rl2cfg&quot; while in pcmcia cards settings
 are in pcmcia config files. You have to set all your Wireless cards with coherence
 to make them talk together.
-->
データリンク層の設定 - 
各ワイヤレスカードには、データリンク層における標準値を設定するためのツールが提供されています。
例えば Proxim Symphony の場合、&quot;rl2cfg&quot; と呼ばれるツールです。
これは PCMCIA カードでの設定とは別で、そちらは PCMCIA 設定ファイルで行います。
自分の持つ全てのワイヤレスカードに対して、互いに交信できるようにするために、
首尾一貫して設定する必要があります。
<item>
<!-- 
Ip setting Now you should be able to use ifconfig and route capabilities
 to change IP settings.
-->
IP 層の設定 - ここまでくれば、ifconfig や route のコマンドを使い、IP 関係の設定ができます。
<item>
<!-- 
Tricks for better performance and to a avoiding conflicts. Now your Wireless
 Network is basically working: in addition you have to adjust some particular
 setting like proxy-arp, icmp echo redirect, bridging, channel change and so
 on to optimize your network and avoiding strange and bandwidth killing conflicts 
-->
性能を十二分に発揮させつつ、競合を避けるコツ - 
この段階までくれば、あなたのワイヤレスネットワークは、基本的な動作はしています。
ここに加えて、特殊な機能の設定をする必要があります。
例えば proxy-arp とか、icmp echo redirect、ブリッジ、チャンネル変更などです。 
これらの設定を施す事で、ネットワークを最適化し、
原因究明が困難で、バンド幅を狭くしてしまうような競合を回避します。
</enum>
</p><p>
<!-- 
N.B.: step 1, 2 and 3 correspond to level 1, 2 and 3 of standard ISO/OSI, 
 while step 4 is an addendum to solve situation generated by netmask 255.255.255.255. 
 In fact 32 bit netmask violates standard ISO/OSI cause the network force to
 use the same address for broadcast and ip machine and the network address doesn't
 exist.
 -->
注意点 - ステップ 1 2 3 は、ISO/OSI 標準モデルのレベル 1 2 3 に相当します。
一方ステップ 4 は、ネットマスクが 255.255.255.255 という状況時に発生する
問題を解決するために付け加えたものです。
実際 32bit のネットマスクは、ISO/OSI 標準を守っていないので、
ネットワークに対して、ブロードキャストとマシンの IP に同じアドレスを使い、
ネットワークアドレスが存在しないような割り当てを強制することになります。
</p><p>
<!-- 
Someone could criticize this point of view, but if you use the standard
 ISO/OSI to configure Wireless network with you'll loss many ones configuring
 subnets; for each subnet usually you discard 2 IP number (Network and broadcast)
 and you cannot achieve the flexibility on IP assigning (geographically kind). 
 You can find more on Appendix A about this. 
-->
この見方には批判をする人がいるでしょう。しかし、もしあなたが 
ワイヤレスネットワークを設定するために標準 ISO/OSI モデルを使うのであれば、
サブネットのために多くのアドレスが無駄になりますし(個々のサブネットにおいて、2 つの IP ナンバー(ネットワークとブロードキャスト)を捨ててしまうので)、また柔軟な IP 割り当て(地理的な条件などで発生する) ができなくなります。
これについては、<ref id="appendix a" name="付録 A">で詳しく解説します。
</p><p>
<!-- 
You could notice that step 2 is not present in Wired cards cause there's
 no particular settings to do there. 
-->
先のステップ 2 は、ケーブル接続のネットワーク設定では出てこない事柄です。
というのは、ケーブル接続のカードでは、この部位の特別な設定はないからです。
</p>
<sect1>
<!-- Low Level Kernel Config -->
低レベルのカーネル設定<label id="Low Level Kernel Config">
<p>
<!-- 
Always it's a problem for Pc administration: to let kernel (or in general)
 see your hardware. 
-->
Linux カーネルに限らず、ハードウェアを認識させる事は PC を管理する上でいつも頭
の痛い問題です。 
</p><p>
<!-- 
Wireless cards are more complex because many of them usually have a Pcmcia
 plug, so first of all you have to let your kernel see Pcmcia adapter card,
 then you can try to install specific hardware driver for your Wireless card. 
-->
ワイヤレスカードは、たいてい PCMCIA 形式なので、少しばかり複雑です。
まず第一に、カーネルから PCMCIA アダプターを認識できるようにする必要があります。
それができれば、ワイヤレスカード用の特定ドライバのインストールに挑戦できます。
</p><p>
<!-- <verb>So, in Pcmcia config you have to: </verb> -->
<verb>PCMCIA の設定において、以下の事をしなければなりません -</verb>
<p>
<enum>
<item>
<!-- 
install linux kernel source, from <url url="http://www.kernel.org" name="http://www.kernel.org"> to /usr/src/linux (see tar and gzip utilities) 
-->
linux のカーネルソースをインストールします。ソースは、
<url url="http://www.kernel.org"name="http://www.kernel.org"> 
から取得して /usr/src/linux に展開しましょう。
(展開の方法がわからない人は tar と gzip の使い方をみてください)
<newline>
訳注 - カーネルソースは、できるだけ国内のミラーサーバーから入手するようにしましょう。
<item>
<!-- 
install linux pcmcia source, from <url url="ftp://projects.sourceforge.net/pub/pcmcia-cs" name="ftp://projects.sourceforge.net/pub/pcmcia-cs"> to install to /usr/src/pcmcia (see tar
 and gzip utilities)
-->
linux pcmcia のソースをインストールしましょう。ソースは、
<url url="ftp://projects.sourceforge.net/pub/pcmcia-cs"
name="ftp://projects.sourceforge.net/pub/pcmcia-cs">から取得して /usr/src/pcmcia に展開してください。
(展開方法がわからない人は tar と gzip のマニュアルをみてください)
<newline>
訳注 - カーネルのソースと同様、できるだけ国内のミラーサーバーから入手しましょう。
<item>
<!-- 
config and recompile your kernel: read file README in your linux directory
 (/usr/src/linux) 
-->
カーネルの設定を行い、自分用のカーネルをコンパイルします。
この作業では、linux ディレクトリ (/usr/src/linux) 内にある README ファイルを読んでください。
<newline>
訳注 - JF プロジェクトでは、このファイル群も日本語への翻訳を進めています。
詳しくは<url url="http://www.linux.or.jp/JF/"name="JF">を見てください。
<item>
<!-- 
config and recompile your pcmcia source: under /usr/src/pcmcia use configure
 and make. Be sure your driver is here, else your have to install it following
 driver instructions (usually a tar zxvf driver.tgz under pcmcia dir is sufficient). 
 After type &quot;make all&quot; to compile. At the end type &quot;make install&quot;. 
-->
PCMCIA ソースの設定と再コンパイルを行います。
ディレクトリ /usr/src/pcmcia で configure, make コマンドを使います。
事前に、必要なドライバがあるか確認してください。
無い場合には、ドライバの説明に従いインストールする必要があります。
(たいてい pcmcia のディレクトリで "tar zxvf driver.tgz" を実行すれば OK です)
準備が整った後、コンパイルするため &quot;make all&quot; を実行します。
コンパイルが終わった後、&quot;make install&quot; を実行し、インストールしましょう。
<item>
<!-- 
After typed install you'll find some useful config files under /etc/pcmcia . 
-->
インストールを実行した後、有用な設定ファイル群は /etc/pcmcia 以下にあります。
</enum>
<p>
<!-- <verb>In non pcmcia case: </verb> -->
<verb>PCMCIA では無い場合 -</verb>
<p>
<enum>
<item>
<!--
If your driver is present (99&percnt; not) under linux sources, you have
 to install it in a directory, then to compile it. 
-->
もし必要なドライバが linux のソースに含まれているのであれば(そんな事は
 99&percnt 無いと思いますが)、それをディレクトリにインストールし、
コンパイルする必要があります。
</enum>
</p><p>
<!--
Once you know module name you have to load it: in pcmcia config you only
 need to start pcmcia daemon (/etc/rc.d/init.d/pcmcia start for RedHat), for
 other &quot;modprobe module_name options&quot;.
 With options you'll give ioport, irq and data-link settings (see
 Par 5.3) to Wireless driver. Anyway your useful tools to know if
 hardware has correctly been seen by driver are:
-->
この段階にまで進めば、読み込む必要のあるモジュールの名前がわかっているはずです。
PCMCIA の設定は、PCMCIA のデーモンを起動すればよいだけです。
(RedHat ならば，"/etc/rc.d/init.d/pcmcia start")、
他のディストリビューションの場合は、&quot;modprobe module_name options&quot; です。
ここのオプションの項目で、ワイヤレスドライバが使う、ioport, irq, data-link の値
を与えます。(<ref id="Data-link_level_settingip" name="5.3 章">参照)
とにかく、ハードウェアがドライバから正しく認識されているかどうか確認するには、以下のようにします -  
</p><p>
<enum>
<item>
<!-- &quot;tail /var/log/messages&quot; that explains info about syslog -->
&quot;tail /var/log/messages&quot; : このコマンドで、syslog が吐き出す情報を見る事ができます。
<item>
<!-- &quot;dmesg&quot; for more info. -->
&quot;dmesg&quot; : このコマンドで、より詳しい情報を得る事ができます。
<item>
<!-- /proc dir: ioports, devices, irq files and driver specific sub-directories.-->
/proc ディレクトリ : このディレクトリ以下のファイル群から、ioport, デバイス,
irq やドライバの情報がわかります。
</enum></p><sect1>
<!-- Data-link level setting -->
データリンク層の設定<label id="Data-link_level_settingip">
<p>
<!-- <verb>What is that? </verb> -->
<verb>それって何 ? </verb>
</p><p>
<!--
Wired networks need only to connect each other and then you'll
 be able to set TCP/IP parameters. 
-->
ケーブルで繋がれたこれまでのネットワークでは、機器間をケーブルで繋いでし
まえば、データリンク層の設定をしなくとも、TCP/IP パラメータを設定することができました。
</p><p>
<!-- In opposite Wireless networks need data-link settings, such as:-->
ワイヤレスネットワーク環境では、これとは対照的に、データリンク層の設定が必要です。例えば、
 </p><p>
<enum>
<item>
<!-- What kind of Wireless network I belong to? (Adhoc or Infrastructure)-->
私が接続するワイヤレスネットワークは、どの種類(アドホックかインフラストラクチャか)でしょう?
<item>
<!-- What channel I have to use? -->
どのチャンネルを使わなければならないの?
<item>
<!-- What subnet (BSSID) I belong to, what is my ESS ID? -->
これから接続するネットワークのサブネット( BSSID )は何?
また ESS ID は? 
<item>
<!-- Is my communication protected by such a encryption algorithm?
 Length key? 
-->
私の通信は、encryption アルゴリズムのようなもので守られているのでしょうか? 
もし守られているならば、Length キーは何? 
</enum></p><p>
<!--
As you see there are many settings you have to adjust, the reason
 come from the architecture of Wireless network: there could be someone,
 in near distance, that could see your packets, use your services
 only pointing his antenna on the right direction and setting up right
 TCP/IP parameters. 
-->
このように、調整が必要な設定項目はたくさんあります。
理由は、ワイヤレスネットワークの基本設計によるものです。
誰か近くにいる人が、アンテナをこちらに向けて、正しい TCP/IP の設定をするだけ
で、あなたのパケットを見ることも、サービスを使うことも出来ます。
</p><p>
<!--
In addition there could be many Wireless subnets that could generate
 interference each other. 
-->
加えてワイヤレス環境の下では、互いに混信を起こしそうな多くのワイヤレスサ
ブネットが、同時に存在している可能性があります。
</p><p><!-- So here are: -->
従って、下記のような設定項目があります - 
</p><p><enum>
<item>
<!--
Options at load-time module: &quot;modprobe ray_cs essid='LINUX'&quot;
 for example or
-->
load-time モジュールのオプション設定 - 例えば &quot;modprobe ray_cs essid='LINUX'&quot;
<item>
<!--
Utilities at run-time driver: &quot;rl2cfg eth1 master&quot;.
-->
run-time ドライバのユーティリティの使用 -  例えば &quot;rl2cfg eth1 master&quot;    
</enum></p>
<sect1><!-- Ip setting -->
IP の設定<label id="ip_setting">
<p>
<!--
This is the third problem you have to face. Here situation become
 problematic only when your network begin to evolve in a bigger one.
-->
これはあなたが直面しなければならない、三番目の問題です。
この問題は、ワイヤレスネットワークがさらに大きくなってきたときに、顕在化してくるでしょう。
</p><p>
<!-- <verb>Remember Wireless IP Networking doesn't stress you if you don't stress it! </verb> -->
<verb>
ワイヤレス IP ネットワークは、負荷をかけて使わないのなら、あなたの負担にもならないことを覚えておいてください。
</verb>
</p><sect2>
<!-- A simple configuration -->
簡単な構成例
<p>
<!--
<verb>                       All the hosts view each other
 
                               A - - - - - C
                                 &bsol;       /
                               |   &bsol;   /   |
                                     /&bsol;
                               |   /    &bsol;  |
                                 /       &bsol;
                               B - - - - - D

</verb>
-->
<verb>
                       全てのホストは、互いが見えます
 
                               A - - - - - C
                                ＼       /
                               |  ＼   /   |
                                     /
                               |   /  ＼   |
                                 /      ＼
                               B - - - - - D

</verb>
</p><p>
<!--
A configuration like this is very simple and don't require nothing
 special (at Ip level): you only need to assign an IP address for
 each host and to assign a coherent global netmask.  
-->
このような構成はとても単純で分かりやすく、また特殊な設定( IP レベルの設定など)
を必要としません。 それぞれのホストへの IP アドレスと、正しい汎用ネットマスクを
割り当てればよいだけです。
</p>
<sect2><!-- A more complex configuration -->
ちょっと複雑な構成例
<p>
<!--
<verb>
                       A doesn't see B directly
 
                                A &lt;- - - -
                              NO&bsol;        |
                            TALK&bsol;        C
                                &bsol;        |
                                B &lt;- - - -
 
</verb>
-->
<verb>
                       ホスト A は 直接ホスト B が見えません
 
                                A &lt;- - - -
                              通信＼        |
                            不可能＼        C
                                 ＼        |
                                B &lt;- - - -
 
</verb>
</p><p>
<!-- Here A and B can communicate only passing through C. -->
 A と B は、C を通してのみ交信が可能です。 
</p><p>
<!--
If the network is in Infrastructure mode and C is the Access
 Point all is ok. In Adhoc mode you also can design a host to &quot;master&quot;
 capability (I know the term is not so formal!), a host that creates
 a BSS and to which any other host can join that BSS. 
-->
もしネットワークがインフラストラクチャ・モードで構成されていて、C がアクセ
スポイントであるならば、別に問題はありません。
アドホック・モードの場合、 &quot;master&quot; ホストが構成した BSS に対し、他のホストは接続する事ができます。
(「&quot;master&quot; ホスト」という言い方が正式なもので無い事は、十分承知していますけどね!)
</p><p>
<!--
Full connectivity now is reached at IP level: A and B talk to
 C using the same C interface, so if you try to ping from A to B you'll
 receive many ICMP REDIRECT packets from C, cause C is telling A that
 the destination is already in the network from which come the request.
-->
これで IP レベルの完全な相互接続が実現できています。
つまり A と B は、C が持つ同じインターフェースを使って通信をおこないます。
もし A から B に ping を打とうとすると、C からたくさんの ICMP REDIRECT パケットを受信します。
この理由は、 C は A に対して、&quot;パケットの目的地が、要求が来た所と同じネット
ワーク内にあるよ&quot;という事を伝えているからです。
</p><p>
<!--
Solution: type a &quot;echo 0 &gt; /proc/sys/net/ipv4/conf/ethx/send_redirects&quot;
 (where ethx is the interface on C towards A and C) to null all that.
-->
解決方法 - これを抑止するため、コマンドラインから
&quot;echo 0 &gt; /proc/sys/net/ipv4/conf/ethx/send_redirects&quot;
と入力してみましょう。
(ここの ethx は、A と B に向けた C 上のインターフェースです)
</p><p>
<!--
Another problem: what netmask I assign to A and C? If you assign
 a netmask to A that include A and C nothing works because A don't
 use the gateway (C) but make the ARP request with unknown destination
 MAC address. 
-->
他の問題 -
A と C には、どんなネットマスク値を割り振ったらよいのでしょう?
仮に A に対して、A と C を含んだネットマスクを設定すると、ネットワークはうまく動かないでしょう。
というのは、A はゲートウェイ(この場合 C )を使う事なく、
行き先の知らない MAC アドレスと共に ARP 要求を出しているからです。
</p><p>
<!--
You could think to use proxy arp, but without effect cause proxy
 arp reply to source only when the destination is in a different interface
 from the source: this is not the case!! 
-->
あなたは proxy arp の利用を思いつくかもしれません。
しかし、proxy arp から行き先を知る事ができるのは、送り先が要求先のインターフェース
とは別のインターフェースにある時だけなので、今回のケースには該当しません!!
</p><p>
<!--
So you have to set a very little netmask (Win9x let it be 255.255.255.254,
 WinNT at least 255.255.255.248), and you have to assure that hosts
 A and C don't have the same net address. 
-->
この様な場合、とっても小さなネットマスク
(Win9x ならば 255.255.255.254 を、WinNT ならば、すくなくとも 255.255.255.248)
を設定する必要があります。
またホスト A と C が同じネットアドレスを持たないように、確実に設定する必要があります。
</p><p>
<!-- <verb>Examples: </verb> -->
<verb>例 : </verb>
<p><enum>
<item>
<!--
IP(A) = x.y.z.2/31, IP(B) = x.y.z.3/31. This doesn't work cause
 A asks for B in its network (ARP request) and C doesn't answer cause,
 for it, A and B belong to the same interface (so, no proxy arp).
-->
IP(ホスト A) = x.y.z.2/31, IP(ホスト B) = x.y.z.3/31 
この設定では、うまく動きません。
というのは、
A はネットワークに対して B の事を尋ねますが (ARP の要求)、
A と B が同じインターフェースに繋がっているにも関わらず(従って proxy arp は無し)、 
C は要求に応答してくれません。 
<item>
<!--
IP(A) = x.y.z.1/31, IP(B)= x.y.z.2/31. This works cause A ask
 to C (send requests to B with C MAC address) for B. 
-->
IP(ホスト A) = x.y.z.1/31, IP(ホスト B) = x.y.z.2/31 
この設定は動作します。
なぜなら、A は C に対して B の事を聞くからです。
( B に対して、C の MAC アドレスと一緒にして要求を出すので)
</enum></p><p>
<!--
In general with a netmask 255.255.255.254 system works with 2
 IP changing only for the final bit. 
-->
一般的にシステムは、ネットマスク値 255.255.255.254 という状態下において、
最終ビットだけが違う 2 つの IP アドレスを与えることで動きます．
</p><p>
<!--
All that is a TCP/IP forcing but is the only method to obtain
 an high level of flexibility. 
-->
これらすべては、TCP/IP を強制しています。
しかしこれは、高いレベルの柔軟性を得るためには、唯一の方法です。
</p><p>
<!--
Note: If you use an Access Point (network in Infrastructure mode)
 you haven't redirect problem, cause all is solved at data-link level
 (almost every Access Point acts as a bridge...). But Access Point
 are expansive (about 1000 USD or more) and it is more economic to
 use a P133 32MB Ram to forward, even with 2 or more cards.
-->
注意点 - もしアクセスポイントを利用しているのであれば、
(ネットワークはインフラストラクチャ・モード)
すべての問題はデータリンク層で解決されてしまうので、このような問題に直面する事はありません。
(ほとんどのアクセスポイントは、ブリッジとして機能しますから...)
しかしアクセスポイントは高価です。(だいたい 1000 US$ か、それ以上)
ですから、2、3 個のワイヤレスカード程度であれば、転送用に Pent133MHz,32MByte の RAM を積んだ程度の PC を使うと、
けっこう経済的です。
</p><sect2><!-- Internet Access -->
インターネットへのアクセス
<p>
<!--
<verb>                               A - - - - - C - - Internet
                                 &bsol;       /
                               |   &bsol;   /   |
                                     /&bsol;
                               |   /    &bsol;  |
                                 /       &bsol;
                               B - - - - - D
</verb>
--> 
<verb>
                               A - - - - - C - - インターネット
                                ＼       /
                               |  ＼    /  |
                                     /
                               |   /  ＼   |
                                 /      ＼
                               B - - - - - D

</verb>
</p><p>
<!-- There is a number of situation: -->
いくつかの状況が想定されます
</p><p>
<enum>
<item>
<!--
C is the only Public IP address. You only have to set private
 IP address (192.168.x.y for example) for the Wireless network enabling,
 on C, forwarding and masquering. A, B and D will have C as default
 GW. 
-->
C だけが唯一、公の IP アドレスを持っています。
このワイヤレスネットワークを動かすためには、プライベートな IP アドレス(例えば 192.168.x.y)を 
設定し、C 上において転送やマスカレードを行うだけでよいです。
A, B, D は、C を標準のゲートウェイとします。
<item>
<!--
You have a public netmask visible from Internet and C is your
 default GW to Internet for the network. You only need to enable forwarding
 on C, setting up default GW on A, B and D to point to C. 
-->
インターネットからアクセス可能な、一般的なネットマスクを割り当てられており、
C はこのネットワークからインターネットへ接続するための、標準ゲートウェイです。 
必要なのは、C 上で転送機能を有効にする事と、A, B, D に対して C を標準ゲートウェ
イとするだけです。
<item>
<!--
You have a public netmask visible from Internet and C is not
 the default GW to Internet. You have 2 possible solutions: Modify
 your default GW to let it point to C for your network. Symmetrically
 you have to let C point to default GW to go to Internet. You could,
 instead, enable proxy arp feature to C (echo 1 &gt; /proc/sys/net/ipv4/conf/ethx/proxy_arp
 where ethx is the interface towards the default GW) and set your
 default GW on C to point to the default GW. Proxy arp is a TCP/IP
 forcing but works well.
-->
インターネットからアクセス可能な、一般的なネットマスクを割り当てられており、
加えて C は、インターネットへアクセスするための標準ゲートウェイではない場合を考えます。
この場合二つの方法があります。
一つは、ネットワークに対して、C を標準ゲートウェイとして使うように構築することです。
対称的に C に対しては、インターネットにアクセスするために、標準ゲートウェイを指すように
仕向けなければなりません。
この方法のかわりにできる事は、C に対して proxy arp 機能を有効にする事です。
(echo 1 &gt; /proc/sys/net/ipv4/conf/ethx/proxy_arp ここの ethx は、標準ゲートウェイ
に繋がっているインターフェースです)
そして C 上の標準ゲートウェイを、インターネットへアクセスする
標準ゲートウェイを指すように設定します。
Proxy arp は TCP/IP に対して強引に振る舞いますが、うまく機能します。
</enum></p>
<sect2><!-- Mixed network: Wired and Wireless -->
ケーブルで繋がったネットワークとワイヤレスネットワークが混在している場合
<p>
<!--
<verb>                                Internet         
                                       &bsol;      
                                        &bsol;        E
                                         &bsol;     /
                                          &bsol;  /       Wireless
                               A - - - - - C - - F
                                 &bsol;       /   &bsol;
                               |   &bsol;   /   |   &bsol;
                        Wired        /&bsol;          G
                               |   /    &bsol;  |
                                 /       &bsol;
                               B - - - - - D

-->
<verb>
                               インターネット
                                   ＼
                                     ＼        E
                                       ＼     /
                                         ＼  /       ワイヤレス
                               A - - - - - C - - F
                                ＼       /   ＼
                               |  ＼   /   |   ＼
                     ケーブル         /           G
                               |   /  ＼   |
                                 /      ＼
                               B - - - - - D

 
</verb>
</p><p>
<!-- Now C joins 2 networks: on the right Wireless and Wired on the 
 left. 
-->
ここの C は、二つのネットワークの中継をしています。
右側はワイヤレスネットワークで、左側はケーブル接続のネットワークです。
</p><p>
<!-- More you have Internet Access, so in total you have 3 network
 cards in C. 
-->
加えて、インターネットへのアクセスも可能です。
つまり C には、3 枚のネットワークカードが搭載されているのです。
</p><p>
<!--
What IP Address I assign to hosts? You have 2 possible solutions:
-->
ホストに対して、どんな IP アドレスを割り振ったらよいのでしょう?
これには二つの解決策があります。 
</p><p>
<enum>
<item>
<!--
Split up network in 2 subnets: for example 192.168.1.0/24 and
 192.168.2.0/24. This solution is quickly but is not scalable if you
 are using Internet IP addresses cause you have to drop too many IPs.
-->
ネットワークを二つのサブネットに分割する方法 -
例えば 192.168.1.0/24 と 192.168.2.0/24　のように分割します。
この解決方は手っ取り早い方法ですが、もしインターネット IP アドレスを使っていると、
多くの IP が無駄になるので拡張性に欠けます。
<item>
<!--
Enable Proxy Arp feature to C for all 2 interfaces. Network parameters
 (net address and netmask) are the same for Wireless and Wired, but
 with proxy-arp enabled I can choose which IPs are on Wired and which
 on Wireless. 
-->
二つ目の解決策は、C 上の二つのインターフェースに対して Proxy Arp 機能を有効にする事です。
ネットワークパラメータ（ネットアドレスや、ネットマスク)は、ワイヤレスでも
ケーブル接続ネットワークでも一緒です。しかし、
proxy-arp を有効にすることで、どの IP がケーブル接続ネットワーク上のものか、あるいは
ワイヤレスネットワークなのか、選択できるようになります。
</enum><p>
<!-- <verb>Now we examine solution 2</verb> -->
<verb>2 つ目の解決策について検討してみましょう</verb>
</p><p>
<!-- For example: Consider you have Internet public subnet x.y.z.0/24. -->
例 - インターネットの公なサブネット x.y.z.0/24 を持っている場合を想定します
</p><p>
<!-- <verb>Interfaces are:</verb> -->
<verb>各インターフェースの設定は以下のとおり</verb>
<p><enum>
<item>
<!-- ifconfig eth0 x.y.z.C netmask 255.255.255.255 (Wired) -->
ifconfig eth0 x.y.z.C netmask 255.255.255.255 (ケーブル接続ネットワーク)
<item>
<!-- ifconfig eth1 x.y.z.C netmask 255.255.255.255 (Wireless) -->
ifconfig eth1 x.y.z.C netmask 255.255.255.255 (ワイヤレスネットワーク) 
<item>
<!-- ifconfig eth2 x.y.z.C netmask 255.255.255.255 (to Internet) -->
ifconfig eth2 x.y.z.C netmask 255.255.255.255 (インターネットへ) 
</enum>
<p>
<!-- <verb>Static routes on eth2:</verb> -->
<verb>eth2 上における静的な配送</verb>
<p><enum>
<item>route add IPGW dev eth2 
<item>route add default gw IPGW 
</enum>
</p><p>
<!--
This route stands for addressing all Internet requests to your
 Default GW: as you notice, first you have to tell Linux where is
 the router, then let default requesting through it.
-->
この配送経路指定では、全てのインターネットからのアドレス指定要求に対して、
自分の標準ゲートウェイを指定します。
つまりお気づきのように、最初に Linux に対して何処にルーターがあるのか教える必要があり、
そうすれば、標準の要求がそこを通過するようにできます。
</p><p>
<!-- <verb>Static routes on eth0:</verb> -->
<verb>eth0 上における静的な配送</verb>
<p>
<enum>
<item>route add x.y.z.A dev eth0 
<item>route add x.y.z.B dev eth0 
<item>route add x.y.z.D dev eth0 
</enum>
</p><p>
<!-- Hosts A,B and D on the Wired Network -->
ホスト A B D は、ケーブル接続のネットワーク上にあります。
</p><p>
<!-- <verb>Static routes on eth1:</verb>-->
<verb>eth1 上における静的な配送</verb>
<p>
<enum>
<item>route add x.y.z.E dev eth1 
<item>route add x.y.z.F dev eth1 
<item>route add x.y.z.G dev eth1 
</enum>
</p><p>
<!-- Hosts E,F and G on the Wireless Network -->
ホスト E F G は、ワイヤレスネットワークに繋がっています。
</p><p>
<!-- Note that flexibility is very high, but you have to manual set
 each host. 
-->
注目すべき点は、柔軟性が大変高い事です。
しかし、それぞれのホスト毎に手動で設定しなければなりませんが。
</p>
<sect><!-- Setup -->
設定
<p>
<!--
Here I report some examples (I hope useful!) on how to configure
 more diffuse and not expansive Wireless Cards. 
-->
ここでは、安価で広く普及しているワイヤレスカードの設定方法を、
いくつかの例（この例が役立てばいいのですが!)を挙げて説明します。
</p><sect1>
<!-- General setup info  -->
一般的な設定情報<label id="General setup info">
<p>
<!--
Wireless cards have interface similar to any Ethernet cards,
 so you have to add in /etc/conf.modules: 
-->
ワイヤレスカードは、一般的なイーサカードと似たインターフェースを持っています。
ですから、/etc/conf.modules に加える事が必要です。
以下に例を示します - 
</p><p>
<enum>
<item>
<!--
&quot;alias ethx module&quot;, where ethx is the interface you
 want to assign to your wireless card and module is name of kernel
 module. 
-->
&quot;alias ethx module&quot; ここの ethx は、
あなたが自分のワイヤレスカードに割り振りたいインターフェースを指しています。
module は、カーネルモジュールの名前です。
<item>
<!--
&quot;options module io=0xAAA irq=I ...&quot;, where 0xAAA is
 the io base address to assign the card, I is the IRQ and so on if
 there are other parameters. 
-->
&quot;options module io=0xAAA irq=I ...&quot; ここの 0xAAA は、ワイヤレスカードの I/O アドレスを示しており、
I はIRQ を示しています。もし他のパラメータがあるのなら、後に続けます。
</enum>
</p><p>
<!--
After this you'll be able to use ifconfig and route commands
 to configure your card at IP level. 
-->
以上が完了すると、ifconfig や route コマンドを使って IP レベルでの
カード設定を行う事ができるようになります。
</p>
<sect1>Proxim Symphony
<p>
<!--
Network type: FHSS, Adhoc only and with proprietary protocol
 OpenAir. 
-->
ネットワークの形式 : FHSS ___ アドホック・モードのみに対応し、
独自に開発した OpenAir プロトコル を使います。
</p><p>
<!--
Web site:<url url="http://www.proxim.com" name="http://www.proxim.com"> where you need to download documentation and driver
 for Linux and Win9x. 
-->
ウェブサイト : <url url="http://www.proxim.com" name="http://www.proxim.com"> ___ このサイトで Linux、Windows9x 用のドライバと、ドキュメントをダウンロードする必要があります。  
</p><p>
<!-- Drivers come with source code to compile: -->
ドライバには、コンパイルするためにソースコードが附属しています。
</p><p>
<enum>
<item>
<!-- untar it in a empty directory -->
空きディレクトリで解凍します
<item>
<!-- type make for help. -->
ヘルプを見るため、make と入力してみましょう
<item>
<!-- 
make modules; make modules_install to install the driver rlmod.o
 and the utility rl2cfg.  
-->
ドライバ rlmod.o と、そのユーティリティ rl2cfg をインストールするため、 
make modules; make modules_install を実行します。
<item>
<!--
to run the driver (after modified /etc/conf.modules: see Par.6.1.)
 you only need to turn up the interface with ifconfig command. 
-->
ドライバを動かすために( /etc/conf.modules を編集した後 - 
<ref id="General setup info" name="6.1 章">参照)
ifconfig コマンドを使って、インターフェースを有効にしましょう
</enum>
</p><p>
<!--
Utility rl2cfg (for help type man rl2cfg once done c step) let
 you change typical data-link level settings: 
-->
ユーティリティ rl2cfg を使うと、代表的なデータリンク層の設定値を変更できます。
(ステップ 3 を実施してしまったら、man rl2cfg でヘルプを見る事ができます)
</p><p>
<enum>
<item>
<!--
&quot;rl2cfg dev ethx sta&quot; to set it to station (Slave)
-->
&quot;rl2cfg dev ethx sta&quot; ethx のワイヤレスカードを、スレーブ局(Slave)として設定します
<item>
<!--
&quot;rl2cfg dev ethx msta&quot; to set it to master station (Master) 
-->
&quot;rl2cfg dev ethx msta&quot; ethx のワイヤレスカードを、マスター局(Master)として設定します
<item>
<!--
&quot;rl2cfg dev ethx alt&quot; to set it to automatically mode
-->
&quot;rl2cfg dev ethx alt&quot; ethx のワイヤレスカードを、自動モード(automatic mode)に設定します
</enum>
</p><p>
<!--
This is all you have to know to get it properly working.
-->
以上が、確実な動作をさせるために知っておかなければならない全てです。
</p>
<sect1><!-- Webgear Aviator 2.4 and AviatorPro -->
Webgear Aviator 2.4 と AviatorPro 
<p>
<!--
Network type: FHSS, Adhoc only for Aviator 2.4 and Infrastructure
 for AviatorPro.
-->
ネットワークの形式 : FHSS ___ Aviator 2.4 はアドホック・モードのみに対応し、 
AviatorPro はインフラストラクチャ・モードに対応します。
</p><p>
<!--
These cards need more for working, because you have to compile
 Pcmcia source as they come with Pcmcia plug. 
-->
これらのカードを動かすには、もう少し作業が必要です。
というのは、これらのカードのソースは PCMCIA のプラグに付属しているので、
コンパイルを行わなければならないのです。
</p><p>
<!--
Web site is <url url="http://www.webgear.com" name="http://www.webgear.com">. 
-->
ウェブサイト : <url url="http://www.webgear.com" name="http://www.webgear.com"> 
</p><p>
<!-- To configure: -->
インストール・設定方法
</p><p>
<enum>
<item>
<!--
You have to download source pcmcia and to expand it to /usr/src/pcmcia
 (see Par 5.2)  
-->
PCMCIA のソースをダウンロードし、/usr/src/pcmcia に展開します。
(<ref id="Low Level Kernel Config" name="5.2 章">参照)
<item>
<!--
Download driver form <url url="http://www.webgear.com" name="http://www.webgear.com"> and type &quot;tar zxvf driver.tgz&quot;
 in /usr/src/pcmcia directory. 
-->
ドライバを、<url url="http://www.webgear.com" name="http://www.webgear.com">からダウンロードし、
/usr/src/pcmcia のディレクトリで、&quot;tar zxvf driver.tgz&quot; と入力して展開します。
<item>
<!-- reconfig pcmcia (see Par 5.2) -->
PCMCIA の再設定(<ref id="Low Level Kernel Config" name="5.2 章">参照)
<item>
<!--
Following instructions you have to append to file /etc/pcmcia/config.opts
 entry &quot;source ./ray_cs.opts&quot;.  
-->
ファイル /etc/pcmcia/config.opts に対して、&quot;source
./ray_cs.opts&quot; の行を追加する必要があります。
<item>
<!--
Note that in /etc/pcmcia/ray_cs.opts there is a line like this:
 &quot;module &quot;ray_cs&quot; opts &quot;...&quot;. Here you have
 to modify some settings at data-link level present in "opts" .
-->
注意点 - /etc/pcmcia/ray_cs.opts のファイル中に、次の行があります。
&quot;module
&quot;ray_cs
&quot; opts 
&quot;...&quot;
ここの opts 行に対して、データリンク層の設定を施す必要があります。
</enum>
<p>
<!-- <verb>Arguments: </verb> -->
<verb>設定項目</verb>
<p>
<itemize>
<item>
<!-- pc_debug=x , where x is the log level. -->
pc_debug=x , ここの x は、ログレベルを表します。
<item>
<!-- net_type=x, x=0 for AdHoc, x=1 for Infrastructure. -->
net_type=x, x=0 はアドホック・モード、 x=1 はインフラストラクチャ・モードを表します。
<item>
<!-- essid=x, x is the ESSID -->
essid=x, x は、 ESSID を表します。
</itemize>
</p><p>
<!--
Finally, to verify configuration with pc_debug &gt; 0, you will
 see data-link messages in your console like these: &quot;network
 started&quot; for a new Wireless network created and &quot;network
 joined&quot; for a new Wireless network joined to another one. 
-->
最後に、設定項目を確認するため pc_debug &gt; 0 を実行します。
こうすると、コンソールにデータリンク時のメッセージが表示されます。
こんな感じです - 
<newline>
&quot;network started&quot; : 新しいワイヤレスネットワークが構築された時 
<newline>
&quot;network joined&quot; : 新しいワイヤレスネットワークが、他のネットワークに繋がった時
</p><p>
<!--
Also File /proc/ray_cs can help you: flied BSSID report to which
 Subnet you belong to, if it is null you can receive data from no
 one cards. 
-->
ファイル /proc/ray_cs も役立ちます。
このファイルには、あなたが接続しているサブネット上の BSSID 情報が書かれています。
もしこのファイルが空ならば、他のカードからデータを受信できません。
</p>
<sect1>
<!-- Lucent Wavelan I, II, Orinoco products and Cabletron  -->
Lucent Wavelan I, II, Orinoco 製品と Cabletron
<p>
<!-- Network type: DSSS, Adhoc and Infrastructure. -->
ネットワークの形式 : DSSS ___ アドホック・モードとインフラストラクチャ・モードに対応
</p><p>
<!-- Lucent products are very professional ones. -->
Lucent 社の製品は、業務用途向けに作られています。
</p><p>
<!--
Web site: <url url="http://www.lucent.com" name="http://www.lucent.com"> and <url url="http://www.orinoco.net" name="http://www.orinoco.net">. 
-->
ウェブサイト : <url url="http://www.lucent.com" name="http://www.lucent.com"> と <url url="http://www.orinoco.net" name="http://www.orinoco.net"></p><p>
<!-- Setup is like WebGear-like: step 1,2,3 are similar -->
設定は WebGear に似ています。ステップ 1 2 3 は同じです。
</p><p>
<!--
Then you have to add to file /etc/pcmcia/config.opts: module 
 &quot; wavelan_cs&quot; opts &quot; ...&quot;  for Lucent Wavelan I module and 
 &quot;wavelan2_cs&quot; opts &quot; ...&quot;, for Lucent Wavelan II or Orinoco. 
-->
ファイル /etc/pcmcia/config.opts に対して追加する必要があります。
&quot;wavelan_cs&quot; opts &quot; ...&quot; は Lucent Wavelan I 用モジュールで、 
&quot;wavelan2_cs&quot;opts &quot; ...&quot; は Lucent Wavelan II 又は Orinoco 用のモジュールです。
</p><p>
<!-- Under opts you will specify: -->
opts 以下で明示する項目
</p><p>
<enum>
<item><!-- port_type=x, where x indicates Adhoc(3) or Infrastructure(1) -->
port_type=x, ここの x は、アドホック・モード(3)またはインフラストラクチャ・モード(1)を示します。
 <item><!-- channel=x, x=channel, option relevant for AdHoc mode only. -->
channel=x, x=channel, このオプションは、アドホック・モードのみに関係します。
<item>
<!--
transmit_rate=x, to fix the speed rate: attention to this setting
 for compatibility with Cabletron cards. 
-->
transmit_rate=x, 通信速度の確定 -
この設定をするときには、Cabletron カードとの互換性に注意してください。
</enum>
</p><p>
<!--
Note: Ideally, it is possible in a Linux Box to have 2 Lucent
 Wavelanx cards, one in Adhoc mode and the other in Infrastructure
 mode. Only one of them could properly works because, when starting
 pcmcia service, all 2 cards are set with same opts value (so in Adhoc
 or Infrastructure mode). So we have to create a Linux module (or
 maybe a user mode program) that can change data_link parameters at
 run-time such as access mode and channel used in Adhoc mode! 
-->
注意 -
理想的には、一つの Linux Box で二枚の Lucent Wavelanx カードを使う事は可能です。つまり、
一方をアドホック・モードにして、もう一方をインフラストラクチャ・モードにするような事です。
しかしこのようにすると、どちらか一方のみしか正しく動作しません。
というのは、PCMCIA のサービスが開始される時、二つのカード両方に対し、同じ opts 値
（アドホック・モードの値か、インフラストラクチャ・モードの値のどちらか）がセットされるからです。
そこで我々は、データリンク層のパラメータ、例えばアクセス・モードやアドホック・モー
ドで使われるチャンネルなどを、任意に変更可能な Linux モジュール
(またはユーザーモードプログラムみたいなもの)
を作らなければならないのです!
</p><p>
<!--
The channel parameter is usually used to avoid interference with
 near other Wireless TX/RX. 
-->
多くの場合、チャネルパラメータは、近くにある他のワイヤレス送受信との
混信を避けるために使われます。
</p><p>
<!--
Lucent drivers could also be used for Cabletron cards <url url="http://www.cabletron.com" name="http://www.cabletron.com">
-->
Lucent 用のドライバは、Cabletron 社のカード <url
url="http://www.cabletron.com" name="http://www.cabletron.com">にも使用
可能です。
</p>
<p>
(訳注 - 山口さんによるレポート : Lucent のサイトは2回の企業吸収により、現在
の Wavelan または Orinoco 関連は <url url="http://www.proxim.com/" name="http://www.proxim.com/">に移っているようです。
また Linux のドライバは、
<url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Orinoco.html"
name="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Orinoco.html">にある
orinoco.cs の方が Lucent の wavelan2 よりもずっと良いと思います。)
</p>
<sect1>YDI 
<p><!-- Network type: DSSS, Adhoc and Infrastructure. -->
ネットワークの形式 : DSSS ___ アドホック・モードとインフラストラクチャ・モードに対応
</p><p>
<!--
YDI sells very professional cards with antennas, amplifiers and
 more. 
-->
YDI 社は、業務用のワイヤレスカード、アンテナ、増幅器などを扱っています。
</p><p>
<!-- 
Web-site <url url="http://www.ydi.com" name="http://www.ydi.com"> 
-->
ウェブサイト : <url url="http://www.ydi.com" name="http://www.ydi.com">
</p><p>
<!-- <verb>To install: </verb> -->
<verb>インストール方法</verb>
<p>
<enum>
<item><!-- untar it in a empty directory.-->
空いたディレクトリで展開します
<item><!-- type make for compile. -->
make を実行し、コンパイルします
<item><!-- make install to install the driver am930_isa and the wlanctl
 utility
-->
make install を実行し、ドライバ am930_isa と wlanctl ユーティリティをインストールします
</enum>
</p><p>
<!--
Once done you can choose if type manual commands using "wlanctl"
 data-link utility or run the "scripts/wlan" file or "scripts/rc.wlan"
 file to automatically config your network. 
-->
一旦インストールが済んでしまえば、
データリンク層設定用ユーティリティ "wlanctl" を使って手動コマンドで設定するか、
シェルスクリプト "scripts/wlan" 又は "scripts/rc.wlan" を実行して、
自動的にネットワークの設定を行うか、どちらかの方法を選択する事ができます。
</p><p><!-- In manual case these are major settings: -->
手動で設定する場合の、代表的な設定例を挙げます
</p><p>
<enum>
<item><!-- &quot;wlanctl scan ...&quot; to search for BSSs already present. -->
&quot;wlanctl scan ...&quot; : すでに存在している BSS を探します
<item><!-- &quot;wlanctl netlist&quot; show you what's found with &quot;wlanctl
 scan ...&quot;. 
-->
&quot;wlanctl netlist&quot; :  &quot;wlanctl scan ...&quot; コマンドを
使って探し出した結果を表示します
<item><!-- &quot;wlanctl bsscreate ... ssid&quot; to create a new network
 with ssid parameter. 
-->
&quot;wlanctl bsscreate ... ssid&quot; : ssid 値を使い、新しいネットワークを構築します
<item><!-- &quot;wlanctl bssjoin bssid&quot; to join the network identified
 by bssid. 
-->
&quot;wlanctl bssjoin bssid&quot; : bssid 値で認証されたネットワークに参加します
<item><!-- &quot;wlanctl authen&quot; and &quot;wlanctl assoc&quot; for
 authentication services. -->
&quot;wlanctl authen&quot; と &quot;wlanctl assoc&quot; は、認証サービスを使って通信する時のオプションです
</enum></p>
<sect><!-- More about Wireless -->
Wireless に関するさらなる情報
<sect1><!-- A Wireless Linux distribution -->
ワイヤレスに対応した Linux ディストリビューション
<p>
<!--
The wireless distribution FlyingLinux started in October 1999
 in the Telecommunication Systems Lab at Teleinformatics KTH with
 the objective of studying the possibilty of using MobileIPv4 and
 standard DHCP-based wireless access for student labs. 
-->
ワイヤレスに対応したディストリビューションとして FlyingLinux というのがあります。
このディストリビューションは、1999年の10月、 
Teleinformatics KTH 社 の Telecommunication Systems Lab(通信システム研究所)で、
MobileIPv4 をワイヤレス環境下で使う事の可能性の研究と、学生の研究所で使うための
ワイヤレスアクセス環境下における標準 DHCP の技術確立を目標に、
開発がはじまりました。
</p><p>
<!--
The result of that work was the FlyingLinux environment available
 for one hundred students and teachers during the 2G1303 project course
 that was held from March to May year 2000. 
-->
この研究結果は、
100人の生徒と先生が、2000年3月から5月までの 2G1303 プロジェクトの期間中、
FlyingLinux 環境の元でワイヤレスネットワークが利用できました。
</p><p>
<!--
FlyingLinux is the first linux distribution oriented to mobility
 services. We have taken care of the security issues including Kerberos
 support and OpenSSH. 
-->
FlyingLinux は、モバイルサービスに適合させた Linux のディストリビューションとしては
、最初のものでしょう。
このディストリビューションでは、Kerberos のサポートや OpenSSH
の導入など、セキュリティ面にも配慮してあります。
</p><p>
<!--
FlyingLinux is part of the Open Source movement. We have included
 software that have been developed at KTH under the GPL licence. 
-->
FlyingLinux は、オープンソースの流れの中の一部です。
我々は FlyingLinux の中に、GPL のライセンス下で開発されてきた KTH を入れました。
</p><p>
<!--
You can find the Wireless Linux distribution at this <url url="http://www.flyinglinux.net" name="Web Site">.
-->
このワイヤレス Linux のディストリビューションは、
<url url="http://www.flyinglinux.net" name="http://www.flyinglinux.net">で見つける事ができます。
</p><p>
<!--
Mantainer: Alberto Escudero <url url="mailto:aep@it.kth.se" name="Email">, <url url="http://www.it.kth.se/~aep" name="Home Page">
-->
管理者 - Alberto Escudero <url url="mailto:aep@it.kth.se" name="Email">, <url url="http://www.it.kth.se/~aep" name="Home Page">
</p><sect><!-- Useful links -->
リンク集
<sect1><!-- Open software link -->
オープンソフトウェア関係のリンク
<p>
<itemize>
<item><url url="http://www.linux-wlan.org/" name="Linux-wlan project">
<item><url url="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux" name="Jean Tourrilhes Wireless Howto">
</itemize>
</p>
<sect1><!-- Commercial link -->
商用関係のリンク
<p>
<itemize>
<item><url url="http://www.fatamorgana.com" name="Fatamorgana Computers">
<item><url url="http://www.lucent.com" name="Lucent web site">
<item><url url="http://www.ydi.com" name="YDI web site">
<item><url url="http://www.siemens.com" name="Siemens web site">
</itemize>
</p>
<sect><!-- FAQ - Frequently asked questions  -->
FAQ - Frequently asked questions, 良くある質問
<p><!-- Q1: What's the difference between BSSID and ESSID and when I
 need a ESSID? -->
Q1: BSSID と ESSID の違いはなんでしょうか? また、どんな時に ESSID が必要になるのでしょう?
</p><p>
<!--
A1: BSSID is 48 bit number used to identify the BSS short area,
 where all hosts talk each other (eventually with an Access Point)
 ESSID is a variable length string that can let communicate different
 BSS are to extend it to a Extended Service Set (ESS). There is one
 Access Point for each BSS and all they talk together only if you
 belong to the same ESSID. Really you need ESSID if you have a large
 network with at least 2 Access Points. 
-->
A1:
BSSID は、狭い領域の BSS の認証に使われる 48bit の数字です。
ここでは、全てのホストが互いに(また、一つのアクセスポイントとも)交信しています。
ESSID は、別の BSS と通信を可能にする、長さが可変な文字列のようなものであり、
異なった BSS 間を、 Extended Service Set(ESS)に拡張して通信可能にしています。
それぞれの BSS に一つのアクセスポイントがあり、それらがすべて同じ ESSID に属している時だけ、他のホストと交信できます。
少なくとも 2つのアクセスポイントが存在するような、大きなネットワークにアクセスするような時、本当に ESSID が必要となるのです。
</p><p><!-- Q2: What Access Point I have to buy? -->
Q2: どんなアクセスポイントを購入したらよいでしょう?
</p><p>
<!--
A2: The less expansive you find: what is important is that the
 Access Point and the cards you are using use the same Physical Layer
 Specific: all FHSS compatible or all DSSS compatible. Attention to
 Proxim RangeLan2 cards that cannot talk with other standard FHSS
 because they use the proprietary protocol OpenAir. 
-->
A2: あなたが見つけた中の、安いものにしましょう。
というのは、重要なのはアクセスポイントとあなたが使っているカードが、
同じ物理層の仕様を使っているかどうか? という事だからです。
全ての FHSS 仕様のカードには互換性があります。また DSSS 仕様のカードも同様です。
但し、Proxim RangeLan2 は、他の標準的な FHSS のカードと通信できないので注意が必要です。
このカードは、OpenAir という独自のプロトコルを使っているからです。
</p><p>
<!-- Q3: What do I use the channel setting for? -->
Q3: 設定の際には、どのチャンネルを使ったらよいのですか?
</p><p>
<!--
A3: When you have more network with different BSS (and with different
 vendors) you could have interference problem: changing channel on
 Access Points or in Adhoc mode hosts could help you avoiding this
 kind of problems. 
-->
A3: もし複数の BSS (かつ別の会社の機器で構成されている)
にアクセスできるのなら、混信という問題が生じる可能性があります。
このような場合、アクセスポイント上のチャンネルを変更するか、
アドホック・モードのホスト群に参加するようにすれば、問題を回避できます。
</p><p><!-- Q4: Why I cannot set channel on Infrastructure hosts?  -->
Q4: なぜインフラストラクチャ・モード上のホストに対して、自分でチャンネルの設定ができないのでしょう?
</p><p><!-- qA4: Because the channel is decided by the Access Point. -->
A4: チャンネルは、アクセスポイントによって決定されるものだからです。
</p>
<sect><!-- Appendix A - Netmask 255.255.255.255, proxy arp and bridging -->
付録 A <label id="appendix a">- 255.255.255.255 というネットマスクと proxy arp, ブリッジ に関して
<p><!-- Here we view some Linux advantages in Wireless Internetworking.-->
この章を読む事で、ワイヤレスネットワーク環境における Linux の優位性を知る事になるでしょう。
</p><p>
<!--
Linux let you specify a netmask like 255.255.255.255 for an interface
 which can help you assign IP addresses in to any interface you want,
 for example one in eth0, another in eth1 and so on... 
-->
Linux では、インターフェース毎に特定のネットマスク値、例えば 255.255.255.255 のような値を
設定することができます。
この事により、eth0 にはこの値、eth1 には別の値というように、
多くのインターフェースに対して、自分が設定したい IP アドレスを自由に割り振る事が可能になります。
</p><p><!-- This has not particularly side-effects. -->
この事は、別段の副作用を起こしません。
</p><p>
<!--
In addition you have proxy arp setting under /proc/sys/net/ipv4/conf/ethx/proxy_arp
 where ethx if your interface. -->
加えて proxy arp の機能があります。
この機能の設定は、ファイル /proc/sys/net/ipv4/conf/ethx/proxy_arp 
(ここの ethx は、自分のインターフェースを指します)
を編集するだけです。
</p><p>
<!--
If you &quot;echo 1 &gt; proxy_arp&quot; you enable proxy_arp
 for that interface while with &quot;echo 0 &gt; proxy_arp&quot; you
 disable it. 
-->
proxy_arp を有効にしたいのであれば、
&quot;echo 1 &gt; proxy_arp&quot; とすればよく、
無効にしたいのであれば、&quot;echo 0 &gt; proxy_arp&quot; とすれば、機能は停止します。
</p><p>
<!--
What's proxy_arp? Quickly proxy arp help you when you want a
 router answer to an ARP request if the destination address is in
 another interface of the linux router. 
-->
proxy_arp とは何でしょう? 高速な proxy arp は、目的のアドレスが Linux ルーターの別のインターフェース上にある時など、
ルーターから ARP 要求の返答が早く欲しい時に役立ちます。
</p><p><!-- Example: -->
例 : 
</p><p>
<!--
<verb>192.168.1.1 ---- 192.168.1.2 Linux router 192.168.2.2 ----192.168.2.1 </verb>
-->
<verb>192.168.1.1 ---- 192.168.1.2 Linux ルーター 192.168.2.2 ---- 192.168.2.1 </verb>
</p><p><!-- To get this example working you should: -->
この例が動作するためには、以下の事が必要です
</p><p><!-- <verb>Without proxy-arp </verb> -->
<verb>proxy-arp を無効にした場合</verb>

<p>
<enum>
<item><!-- In 192.168.1.1 host to set 192.168.1.2 as gateway -->
192.168.1.1 ホスト上において、192.168.1.2 をゲートウェイとして設定します
<item><!-- In 192.168.2.1 host to set 192.168.2.2 as gateway -->
192.168.2.1 ホスト上において、192.168.2.2 をゲートウェイとして設定します
<item><!-- pinging with success from any edge. -->
どちらの端からも ping が通ります
</enum>
<p>
<!-- <verb>With proxy-arp </verb> -->
<verb>proxy-arp を有効にした場合</verb>
<p>
<enum>
<item><!-- In 192.168.1.1 host to set 192.168.1.2 as gateway -->
192.168.1.1 ホスト上において 192.168.1.2 をゲートウェイとして設定します
<item>
<!--
do not set gateway for 192.168.2.1 host but enable proxy_arp
 for right interface of the router. 
-->
192.168.2.1 のホストには ゲートウェイを設定しません。その代りに、
ルーターにつながる右側のインターフェースに対して proxy_arp を有効にします
<item><!--pinging with success from any edge -->
どちらの端からも ping が通ります
</enum>
</p>
<p>
<!--
Proxy-arp in 2. case let the linux router answer when you ping
 from 192.168.2.1 host, saying that it has the 192.168.1.1 host so
 it can answer for it. After, when the source start sending ICMP packet,
 Linux router knows that it have to redirect it to the real host 192.168.1.1
-->
192.168.2.x 上での Proxy-arp は、
192.168.2.1 のホストから ping を打ち linux ルーターに答えさせる場合、
ルーターは 192.168.1.1 のホストが在ると答えるので、ping に対して応答する事ができます。
ソース元が ICMP パケットの送信を開始した後、Linux ルーターは 192.168.1.1 の
本当のホストに対して向け直さなければならない事を知っているのです。
</p><p>
<!--
In Wireless network proxy arp can help you if you have many Linux
 boxes that acts as IP Forwarders and you wouldn't set to all hosts
 a number of static route. 
-->
ワイヤレスネットワーク環境下おける proxy arp は、
IP 転送マシンとして機能する Linux Box を多く抱えている時や、
全てのホストに対して静的なルートナンバーを設定したくない時などに役立ちます。
</p><p><!-- You also can experiment Linux bridging in Wireless network: -->
ワイヤレスネットワーク環境下における Linux ブリッジの実験を行う事もできます。
</p><p>
<enum>
<item><!-- install a recent stable kernel -->
最新の安定版カーネルをインストールしましょう
<item>
<!--
download good bridge utils at <url url="http://openrock.net/bridge" name="http link"> or <url url="ftp://openrock.net/bridge" name="ftp link"> 
-->
優れたブリッジ用ユーティリティをダウンロードしましょう。 
場所は <url url="http://openrock.net/bridge" name="http link">、
または <url url="ftp://openrock.net/bridge" name="ftp link"> にあります
</enum>
</p><p><!-- Bridging should be more simple to manage. -->
管理していくためには、ブリッジ機能はできるだけシンプルにしましょう。
</p>
<sect><!-- Appendix B - Siemens DECT Radio Modem -->
付録 B<label id="appendix b"> - Siemens 社 DECT Radio Modem
<p><!-- Web Site: <url url="http://www.siemens.com" name="http://www.siemens.com"> -->
ウェブサイト : <url url="http://www.siemens.com" name="http://www.siemens.com">
</p>
<p>
<!--
What's that? These 2 components are not real PC cards but are
 more like modems that you use as external device. 
-->
まずは、この製品がどんな物か? という疑問に対する解答からですが、これら二
つの構成部品は、本物のワイヤレス PC カードとはちょっと異なり、外部デバイスとして使うモデムに近いものです。
</p><p>
<!-- <verb>Host1-serial - RadioModem1 - - - - - RadioModem2 - serial-Host2 </verb> -->
<verb>ホスト 1 - シリアル - RadioModem1 - - - - - RadioModem2 - シリアル - ホスト 2 </verb>
</p><p><!-- How can I connect it? -->
・どのように接続したらよいのでしょう?
</p><p><!-- If you see them in an abstract vision you can model them like
 this: 
-->
この製品の大まかな構造を理解したのなら、下記のような構成にできます
</p><p>
<!-- <verb>Host1-serial - - NULL MODEM CABLE - - serial-Host2 </verb> -->
<verb>ホスト 1 - シリアル - - NULL モデムケーブル - - シリアル - ホスト 2 </verb>
</p><p><!-- So you'd have a connection between 2 far serials with 2 possible
 configurations: -->
つまり二つのホスト間を、長いシリアルケーブルで接続するような感じです。
2 つの実際にありそうな接続における設定例は、以下のようになります -
</p><p>
<enum>
<item>
<!--
Linux with Windows, Linux has a daemon that answer to a ppp call
 while Windows has a Dial up connection under Remote Access. 
-->
Linux 対 Windows 接続 -
Linux には ppp コールに対して反応するデーモンがあります。
一方 Windows には、Remote Access をベースにしたダイヤルアップ接続機能があります。
<item>
<!--
Linux with Linux, where you can run (on all 2 hosts) a ppp connection,
 with IP addresses inverted. 
-->
Linux 対 Linux 接続 -
ここでは、(両方のホスト上で) IP アドレスをあべこべにした状態で ppp 接続を実行する事ができます。 
</enum>
</p><p>
<!-- For 1 you can use this simple script in Linux: -->
1 の場合 Linux 上で下記のような簡単なスクリプトを使う事ができます。
</p><p>
&quot;/usr/sbin/pppd -detach lock idle 300 crtscts connect &quot;/usr/sbin/chat
 -v TIMEOUT 5 AT OK AT OK AT OK AT OK&quot; IPLINUX:IPWINDOWS /dev/ttySx
 115200 disconnect &quot;/usr/sbin/chat -v AT OK&quot; ms-dns IPDNS&quot;
</p><p><!-- where: -->
解説
</p><p>
<itemize>
<item><!-- /dev/ttySx is your serial port, -->
/dev/ttySx は、あなたが使おうとするシリアルポートです
<item><!-- IPDNS is the IP address of your dns server, -->
IPDNS は、DNS サーバーの IP アドレス
<item><!-- IPLINUX is the Linux IP address as IPWINDOWS is the Windows IP
 address. 
-->
IPLINUX は、Linux の IP アドレス、
IPWINDOWS は、Windows の IP アドレス
</itemize>
</p><p>
<!--
The above script is need for letting Windows believe there is
 a modem on the serial end! 
-->
上記のスクリプトは、Windows に対して、シリアルの末端にモデムが存在しているように
信じ込ませるのに必要なのです!
</p><p>
<!--
In Windows you need to create a Dial Up connection with crtscts
 enabled, speed at 115200 and with a stupid number to call (need by
 Remote Access but absolutely not used). 
-->
Windows では、ダイアルアップの接続を作る必要があります。
この場合、CRT/CTS は有効、速度は 115200 にします。
あと、電話を掛けるためのダミーの電話番号を決めます。
(Remote Access が要求してきますが、全く使われません)
</p><p>
<!--
With 2 Linux boxes you only have to run a very simple script
 like this at each Linux side: 
-->
2 つ目の例の様に、両端とも Linux Box の場合、両サイドで下記のとっても簡単なスクリプトを
実行するだけです。
</p><p>
&quot;/usr/sbin/pppd passive local crtscts IPLINUX1:IPLINUX2
 /dev/ttySx 115200 noauth persist&quot; 
</p><p><!-- where you'll invert IPLINUX1 with IPLINUX2 at the other edge.-->
このスクリプトを実行する際には、
IPLINUX1 と IPLINUX2 を両端の LinuxBox で逆にして指定する必要があります。
</p><p><!-- Note that you can do authentication even Linux-Windows than in
 Linux-Linux if you want.
-->
注目すべき点は、あなたが望めば Linux 対 Linux の接続と Linux 対 Windows の接続は
同程度であると証明できる事です。
</p>
<sect>日本語訳について
<p>
翻訳に関するご意見は、<url url="mailto:JF@linux.or.jp" name="JF">までお
願いします。 
</p>
<p>校正およびご意見を頂いた方々(敬称略 五十音順) :
<itemize>
<item><verb>Seiji Kaneko <skaneko@a2.mbn.or.jp></verb>
<item><verb>Shingo Yamaguchi <shingo@axs2.com></verb>
<item><verb>Yoshiyuki YAMASHITA <dica@eurus.dti.ne.jp></verb>
</itemize>
</p>
</article>
