Windows10でアドホックWiFi接続

2017年11月5日Windows10

訪問サポートしていると時々特殊な環境に遭遇するのですが、今回も結構珍しいパターンです。

アドホック接続でプリンタを利用出来るようにしたいとの希望。

 

今やWiFiが当たり前になってきて、無線親機があるのは当然のようになってきました。

スマホは当然として、デスクトップのPCや周辺機器もWiFi搭載が当たり前のようになってきています。

そこでマンションの一室を事務所として使っているお客様。

PCを買い替えでの設定です。

ネット回線はマンション提供の光回線で、壁からクラスBローカルアドレス配布でケーブルを接続するだけで利用できます。

PCはデスクトップのため有線接続なので特に無線ルータなどご用意無く使うつもりもないとのこと。

その方が早いし安定してますからね。

PCはそれで良いのですが、PCに無線が搭載されている事から、プリンタは無線で利用したいとのご希望。

なるほど、プリンタの置き場所も背中側壁際なので長いケーブルも邪魔ですしね。

最近のWiFiダイレクト接続が使えるプリンタであれば簡単な話なのですが、結構古い型のプリンタのため使えません。

PCをAPモードにするという手段もありましたが、あまり使ったこともなく安定してプリンタを使えるか不安だったので、昔懐かしいアドホック接続で設定することとなりました。

ところが、Windows8以降ではアドホックの設定がnetshコマンドからでないと出来なくなっていたんですね。

 

アドホック接続とは

昔はPC同士を無線で直結してローカル無線ネットワークを構築するのに時々使われていましたが、最近はあまり見たことがありません。

接続する数台を同じ無線設定で無線の接続をしてネットワークを構築するというもので、IPアドレスはDHCPサーバが無いのでそれぞれIP固定となります。

(結構お互いリンクローカルで通信できちゃう事もあるんですけどね)

ですので、WiFiのアダプタ(NIC)は固定IPとなりますので、他のWiFiに接続するつもりがあるのであれば、その度にIP変更が必要になるのでこの方法は止めた方が良いです。

そして無線ルータがあればアドホックは必要ありません。

スポンサーリンク


まずネットワークの設定を決定

 

アドホック接続も通常のWiFiと同じようにESSIDがあります。

接続する時のパスワードもフリーでも出来ますが、WEPも使えるのでせめてWEPは設定しておいたほうが良いでしょう。

ですのでESSIDとキーを決めます。

ここでは仮にESSIDを「adhoc」とし、WEPキーを「1111222233334」として解説します。

今回の場合はアドホックのネットワークのIPアドレスは、壁からクラスBのアドレスが配布されているので、それ以外にしないといけませんでした。

サブネットで仕切るのもOKですが、解りにくいのでここではクラスCとしました。

プリンタ:192.168.250.1/24
PC:192.168.250.100/24

 

プリンタのIPアドレスを固定

まずプリンタのIPを192.168.250.1に設定。

サブネットを255.255.255.0に設定。

ゲートウェイ:なし:0.0.0.0に。

DNS:なし:0.0.0.0に。

 

PCの無線アダプタのIPを固定

ワイヤレスネットワーク接続のIPを192.168.250.100に設定。

サブネットを255.255.255.0に設定。

ゲートウェイ:なし:0.0.0.0に。

DNS:なし:0.0.0.0に。

間違えて有線アダプタを変更しないよう注意しましょう。

別途アドホック専用のUSB無線を増設して使うのも一つの手です。

プリンタを無線設定

先程のESSIDとキーをプリンタに設定します。

ESSIDを「adhoc」とし、WEPキーを「1111222233334」とします。

プリンタによって設定は様々ですが、マニュアル設定できる所から各設定をします。

機種によってはIPも一緒に設定するようになっていると思いますのでプリンタの説明書やPDFを見て確認して下さいと言いたい所なのですが、アドホックの説明は相当古い機種でないと出ていないと思います。

なので、プリンタの設定画面を見ながら場所を探しつつ設定します。

 

PCを無線設定

コンパネからネットワークと共有センターを開きます。

新しい接続またはネットワークのセットアップを開きます。

net-share

ワイヤレスネットワークに手動で接続しますを選択します。

adhoc1

ネットワーク名にESSIDを、セキュリティの種類はWEPを選択、セキュリティキーを入れ、この接続を自動的に開始しますのチェックを外します。

adhoc2

次に進むと追加完了です。

adhoc3

このままではネットワークの種類がアクセスポイントになっています。

adhoc4

 

コマンドで設定変更

 

アドホックの設定に変更する為に管理者コマンドプロンプト管理者パワーシェルを開き下記コマンドを投入します。

> netsh wlan set profileparameter name="adhoc" connecttype=IBSS

 

nameのところは実際に設定したESSIDを入れます。

adhoc-ibss

正常に更新されましたと出ればOKです。

 

設定を確認

念の為現在の設定を確認します。

先程のコマンドに続けて

> netsh wlan show profiles name="adhoc" key=clear

 

と入れます。

出てきた接続の設定のネットワークの種類がアドホックになっていればOKです。

adhoc-show

key=clearはキーの確認用なので無くても構いません。
(また表示されるキーが違うように見えますが、実際に使われるWEPキーはHEX(16進数)なのでキーが数字の場合はそれぞれ3が頭に付きます。)

またアドホックの場合自動接続は使えませんので、プロファイル情報の接続モードは手動接続になっています。

 

実際の接続

接続する際には通常通りadhocの項目を選べば繋がるような気もしますが、これでは接続できません

wifi-connect

やはりコマンドプロンプト(管理者でなくても良い)かパワーシェルを開いてコマンドで接続します。

> netsh wlan connect name="adhoc"

 

 

adhoc-connect

これで接続要求が正常に完了しましたと出れば接続されていると思います。

ただ、毎回このコマンドを投入するのは非常に面倒なので、デスクトップにでもファイルを用意しておいてそれを実行するようにしましょう。

例えばデスクトップにadhoc-connect.cmdというファイルを作成し内容に

netsh wlan connect name="adhoc"
pause

 

と記入し保存します。

(拡張子を表示する設定にしてadhoc-connect.cmd.txtになっていないように注意します。)

次からはこのアイコンを開けば接続されます。

adhoc-connect-cmd

接続されたら何かキーを押せば窓は閉じます。

ちゃんと通信できるかプリンタのIP(192.168.250.1)へpingを飛ばして確認してみましょう。

ping

 

もしpingが通らなかったら

 

プリンタへの通信であれば大丈夫だと思いますが、双方向通信がうまく行かない場合は、さらに設定が必要な場合があります。

「設定」から「WiFI」を開き、adhocを選択します。

setting-wifi

ここでこのPCを検出可能にするのスイッチをONにします。

wifi-localnet

これでネットワークの種類がパブリックからローカルに変わりローカルネットワークとして通信出来るようになります。

スポンサーリンク

プリンタの設定

プリンタまでpingが通ったら後はプリンタの設定をするだけです。

プリンタのIPは固定になっているのでポートは標準TCPの固定アドレスで設定して大丈夫だと思いますし、通常の設定通りでウィザードで検索すればプリンタが発見されると思います。

後はプリンタ利用時にはadhoc-connect.cmdを実行して接続してから印刷すするようにしましよう。

 

さらに応用して

ココまで来ると接続時にコマンド必須なのであれば、adhoc-connect.cmdにIPの設定も入れてしまえばDHCPのまま行けますよね。

ただ切断する時に元のDHCPに戻しておいてあげないといけませんので戻すコマンドも毎回投入の必要があり、adhoc-kill.cmdも必要になります。
そうでないと、別の場所でWiFi接続した時にIP取れずに無線は繋がっているのに通信できないという状況になってしまいます。

忘れやすいのでこの方法はあまりおすすめできません。

 

例えばこんな感じ

接続する時

adhoc-connect.cmd

netsh interface ip set address "ワイヤレスネットワーク接続" static 192.168.250.100
netsh wlan connect name="adhoc"
pause

 

 

切断する時

adhoc-restore.cmd

netsh interface ip set address "ワイヤレスネットワーク接続" dhcp
netsh interface ip set dns "ワイヤレスネットワーク接続" dhcp
pause

 

この辺はタスクスケジューラに仕込むと手間いらずになるのですが、設定されていることを忘れてしまう可能性もありますし、他人が見た時や環境が変わった時などハマる原因になります。

 

参考にしたサイト:

Windows10

Posted by pctaskal