Vous êtes sur la page 1sur 4

Making a WiFi Hotspot / Access Point using Linux & wifi lan card/USB adapter http://exain.wordpress.

com/2011/03/31/making-a-wifi-hotspotaccess-point-using-linux-wifi-lan-cardusb-adapter/
If you have a wifi LAN card / USB adapter, then you can use it as an access point so that other machines can connect to the internet via your machine using Wifi. The process is fairly simple, but requires you to have a compatible set of drivers which allow a wifi lan card to come into Master mode. It didnt work well for Linksys WUSB54GC v3 USB adapter. Till Ubuntu 10.04, there were no good drivers for use with hostapd (supporting mac80211 / nl80211). In Ubuntu 10.10, though the drivers were working, but the connection was highly unstable in fact unusable. The drivers that I tried were rt2800usb (which allowed the adapter to come into Master mode), and rt2870sta which didnt allow the adapter to come into Master mode. It always remained Auto or Managed (checked via iwconfig). Need to test in 11.04 when it arrives. What worked pretty well

02:00.0 Ethernet controller: Atheros Communications Inc. AR5001 Wireless Network Adapter (rev 01), using ath5k drivers. hostapd didnt complain at all and all was smooth. This was in Ubuntu 10.04.

Concept 1. Theres an application called hostapd which allows converting a wifi adapter into an access point and provide privileges such as WPA authentication and ssid name definition etc. I used it and it worked well. 2. When a client connects to the access point, apart from authentication itll require IP addresses to be assigned. For that a DHCP server is used. 3. You need to have 2 interfaces, one which accesses the net (e.g. eth0), and other which provides the access point services (e.g. wlan0). 4. You start the wlan interface, assign it an IP address, start the dhcp server, setup firewall/nat and start hostapd. Thats all to it. Your devices would be able to use the wifi adapter as the access point.

Procedure
apt-get install dhcp3-server hostapd

Modify /etc/hostapd/hostapd.conf and put the following


interface=wlan0 driver=nl80211 ssid=MyAP hw_mode=g channel=11 wpa=1 wpa_passphrase=MyPasswordHere wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP wpa_ptk_rekey=600

The dhcpd.conf section in /etc/dhcp3/dhcpd.conf would have something like the following
subnet 10.10.0.0 netmask 255.255.255.0 { range 10.10.0.25 10.10.0.50; option domain-name-servers 8.8.4.4, 208.67.222.222; option routers 10.10.0.1; }

Modify /etc/default/dhcp3-server
INTERFACES="wlan0"

Check what name your adapter got via iwconfig. You can change the name also and make it persistent via /etc/udev/rules.d/70-persistent-net.rules so that it always gets a single type

of name. In our example were assuming wlan0, but it could be changed. Make necessary changes in your configuration too. Configure the new interface
ifconfig wlan0 10.10.0.1

The above could also be done in a better way via the/etc/network/interfaces file, but didnt try it out. In any case if you shutdown hostapd, the network interface (wlan0) loses its address, so need to put a script which assigns it again before hostapd is started. An example could be
iface wlan0 inet static address 10.10.0.1 netmask 255.255.255.0

Restart the dhcp3-server. It should now be ready to serve addresses and is also bound to the network interface too. Allow ip masquerading
echo "1" > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Now start hostapd and see the messages that it shows


hostapd -dd /etc/hostapd/hostapd.conf

Wait for a few seconds, it should show some probes being done by other wifi devices. If it shows, then probably youre in good luck. Now try to connect via your device to this access point. It should work. To make this work on boot, can put the relevant config in/etc/default/hostapd
RUN_DAEMON="yes" DAEMON_CONF="/etc/hostapd/hostapd.conf" DAEMON_OPTS="-dd"

and also put the firewall rules in /etc/rc.local (make sure its executable). Remember if you shutdown your hostapd, the network card would lose its address. So you have to assign that again before starting hostapd. The usual practice would be

Stop hostapd Stop dhcp server Restart network (or rather ifup wlan0 / ifconfig wlan0 10.10.0.1would do) Restart dhcp server Start hostapd

Miscellaneous 1. You can check the wifi interfaces via


iwconfig

2. To set a wifi adapter into master mode, try the following. If it doesnt work and shows an error that its not possible or something, fret not use hostapd as thatll do that in any case.
iwconfig wlan0 mode Master

3. Network Manager could create issues, though in my test environment instead of using an ethernet interface, I used two wlan interfaces, one being controlled by Network Manager for internet access, and other for making it an access point. 4. modprobe -r ath5k / modprobe -r rt2800usb etc. is to be used for unloading the modules. 5. If you wish to proceed without using authentication so that you can test it easy, then put the following in /etc/hostapd/hostapd.conf
6. interface=wlan0 7. driver=nl80211 8. ssid=MyAP 9. hw_mode=g channel=11

Vous aimerez peut-être aussi