WIFIを一時的にアクセスポイントモードに切り替える

あなたが別の国に行って、あなたがスマートフォンを持っているのに、あなたが本当にそこからインターネットに行く必要があると想像してください(例えば、連絡先を同期したり、ある種のソフトウェアを入れたり)。 オプションは何ですか?

-最初のオプションはモバイルインターネットです。 残念ながら、これは必ずしも簡単であるとは限らず、常に安いとは限りません。

-2番目のオプションはWIFIです。 あなたが到着したWIFIに接続できれば幸運です。その場合、問題はすでに解決されています。

-3番目のオプションはLANです。 しかし、LANしかない場合はどうでしょうか? 最も簡単なことは、自宅から小さなアクセスポイントを持ち出すことですが、持っていない場合や持っていない場合はどうなりますか? この場合、ラップトップまたはネットブックが誤ってあなたと一緒に持って行ってください:)



私たちは持っています



-Ubuntu 10.10を搭載したEeePC 901

-スマートフォン

-ローカルエリアネットワーク



挑戦する



-WIFIを使用してスマートフォンからネットワークアクセスを取得します



解決策



このソリューションは、アクセスポイントモードでWIFIを永続的に構成してネットブックでオンにすることはお勧めできないことに基づいて開発されたため、一時的にこのモードをオンにするスクリプトとして実装されます。



問題を解決するには、次が必要です。

-hostapd-アクセスポイントモードでのネットワークカード操作を提供します

-dnsmasq-DHCPおよびDNSサーバーとして機能

-プロセスを自動化するためのスクリプトinstall.shおよびstart.sh



最初のスクリプトは、必要なパッケージのインストールに役立ちます。



install.sh

#!/bin/bash # Install wifi hotspot daemon and dns/dhcp server sudo apt-get install hostapd dnsmasq # Stop installed services sudo service hostapd stop sudo service dnsmasq stop # Disable autostart on boot sudo update-rc.d hostapd disable sudo update-rc.d dnsmasq disable
      
      







そして、これはhostapdの最小構成です。



/etc/hostapd.conf

 # Define interface interface=wlan0 # Select driver driver=nl80211 # Set access point name ssid=laptop-wifi # Set access point harware mode to 802.11g hw_mode=g # Set WIFI channel (can be easily changed) channel=6 # Enable WPA2 only (1 for WPA, 2 for WPA2, 3 for WPA + WPA2) wpa=2 wpa_passphrase=wifipass
      
      







dnsmasqの最小構成。



/etc/dnsmasq.conf

 # Bind to only one interface bind-interfaces # Choose interface for binding interface=wlan0 # Specify range of IP addresses for DHCP leasses dhcp-range=192.168.150.2,192.168.150.10
      
      







ネットワークカードをアクセスポイントモードに設定する2番目のスクリプト(およびその逆)。



start.sh

 #!/bin/bash # Start # Configure IP address for WLAN sudo ifconfig wlan0 192.168.150.1 # Start DHCP/DNS server sudo service dnsmasq restart # Enable routing sudo sysctl net.ipv4.ip_forward=1 # Enable NAT sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # Run access point daemon sudo hostapd /etc/hostapd.conf # Stop # Disable NAT sudo iptables -D POSTROUTING -t nat -o eth0 -j MASQUERADE # Disable routing sudo sysctl net.ipv4.ip_forward=0 # Disable DHCP/DNS server sudo service dnsmasq stop
      
      







使用する





おそらくすでに推測されているように、このソリューションの使用は非常に簡単です。 だから、準備。

1. install.shを実行します。

2.パラメータ/etc/hostapd.confを使用して設定ファイルを作成します。

3.インストール済みの設定ファイル/etc/dnsmasq.confを上記のものに置き換えます。



そして今すぐ使用してください! ネットワークカードをアクセスポイントモードにするには、以下を行う必要があります。

1.システムトレイのNetwork Managerアプレットを右クリックして、「ワイヤレスネットワーク」を無効にします。

2. start.shスクリプトを実行します 。 スクリプトのシャットダウンには、アクセスポイントサーバーとDHCP / DNSサーバーのシャットダウンが伴います。



結果 :laptop-wifiおよびpassword wifipassという名前のWPA2認証を備えたアクセスポイントができます。



このソリューションはUbuntu 10.10でテストされましたが、Ubuntuの別のリリースまたは別のディストリビューションに簡単に適合させることができます。 次の海外旅行に関連して、この機能を実装する既製のソフトウェアを見つけようとしましたが、失敗しました。 この点で、上記のソリューションが生まれました。



素敵な実験をしてください!

寄付は大歓迎です。



更新

-更新されたGitHubスクリプトhttps://github.com/giner/helplinux/tree/master/scripts/wifi-host-ap



All Articles