Evdeki kablosuz iletişim sağlayan cihazların sayısı arttıkça, kablosuz internet bağlantısına ihtiyaç duymaya başladık. Bu sebeple de geçen ay Darty’den Edimax EW-7711UMn kablosuz USB adaptör aldım. Satın almadan önce de internetten kullanım klavuzunu inceleyerek “access point” olarak çalıştırılıp çalıştırılamayacağına ve Linux ile uyumlu olup olmadığına baktım.

Aşağıdaki diyagram temel olarak sistemi çok güzel anlatıyor;

Basit kurulum için gerekli olan paketler;

  • hostapd > Kablosuz USB adaptörümüzün “Access Point” olarak çalışmasını sağlayacak
  • bridge-utils > Kablosuz ağ (wlan0) ile kablolu ethernet bağlantısı (eth0) arasında köprü (br0) kurmamızı sağlayacak
  • dhcp > DHCP (Dynamic Host Configuration Protocol) ile de yarattığımız “Access Point”e bağlanan cihazlara yerel IP atayacağız

/etc/hostapd/hostapd.conf dosyasından tüm bağlantı ayarlarını yapabilirsiniz;

interface=wlan0
bridge=br0
driver=nl80211
logger_stdout=-1
logger_stdout_level=2
ssid=AP-ISMI
ignore_broadcast_ssid=1
hw_mode=g
channel=6
auth_algs=3
max_num_sta=5
wpa=2
wpa_passphrase=SIFRE
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

driver parametresine adaptörünüzün sürücüsünü yazmanız gerekiyor. Aşağıdaki komutla cihazınızın Arch Linux tarafından nasıl tanındığını ve sürücü bilgilerine bakabilirsiniz. Benim cihazım RT2870 chipsetine sahip ve bu yüzden sürücü olarak nl80211 kullanıyorum.

[ozan@arch ~]$ lsusb
Bus 002 Device 003: ID 7392:7711 Edimax Technology Co., Ltd EW-7711UTn nLite Wireless Adapter [Ralink RT2870]

ignore_broadcast_ssid=1 ile ağ isminin yayımlanmasını durduruyorsunuz, ağınız normal düzeydeki kullanıcılara gizlenmiş oluyor.

/etc/rc.conf dosyasında ise aşağıdaki değişiklikleri yapmanız gerekiyor;

eth0=”eth0 up”
wlan0=”wlan0 up”
br0=”br0 192.168.2.4 netmask 255.255.255.0 up”
INTERFACES=(lo br0 wlan0 eth0)

gateway=”default gw 192.168.2.1″
ROUTES=(gateway)

/etc/conf.d/bridges dosyası;

bridge_br0=”eth0 wlan0″
BRIDGE_INTERFACES=(br0)

/etc/dhcpd.conf dosyası;

authoritative;
log-facility daemon;

subnet 192.168.1.0 netmask 255.255.255.0 {
}

# This is a very basic subnet declaration.

subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.2 192.168.2.20;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.2.255;
option routers 192.168.2.1;
option domain-name-servers 192.168.2.1;
option interface-mtu 1492;
}

/etc/rc.local dosyasına ise aşağıdaki satırları ekliyoruz;

dhcpcd br0
dhcpd
hostapd -B /etc/hostapd/hostapd.conf

İlk satır ile köprü (br0)’a IP tanımlaması yapıyoruz. İkinci satır ile DHCP sunucusunu çalıştırıyoruz, böylece bağlanacak kablosuz cihazlar otomatik IP alabilecekler. Ve son olarak da access point’i aktif ediyoruz.

Basit kurulum için gerekli tüm ayarlamalardan sonra; ethernet kartı üzerinden kablolu olarak internete bağlanan Arch Linux kurulu bilgisayarınız, kablosuz erişim noktası (access point) olarak çalışmaya başlayacak.

Eğer tüm sistem doğru çalışıyorsa kayıt dosyalarında aşağıdakine benzer bilgiler görmelisiniz;

IEEE 802.11: authenticated
IEEE 802.11: associated (aid 1)
RADIUS: starting accounting session 4D21FC1D-00000000
WPA: pairwise key handshake completed (RSN)
dhcpd: DHCPREQUEST for 192.168.2.7 from 00:11:22:33:44:55 via br0: unknown lease 192.168.2.7.

Bağlantıda bir problem varsa, /etc/rc.local dosyasındaki hostapd -B /etc/hostapd/hostapd.conf kısmını silerek, aşağıdaki kod ile manuel olarak access point’i çalıştırabilir ve problemin sebebine bakabilirsiniz.

hostapd -dd /etc/hostapd/hostapd.conf

Kendi sistemimi kurarken buradaki dokümandan ve Arch Linux Wiki’sinden yararlandım, siz de inceleyebilirsiniz.

Şuanda bu sistem ile WinXP ve Win7 kurulu iki cihaz (LG E500 notebook & LG X140 netbook) internete kablosuz olarak bağlanabiliyor. Sony PSP ile ise aşağıdaki hataları alıyorum ve bağlantı sağlanamıyor;

IEEE 802.11: authenticated
IEEE 802.11: associated (aid 2)
IEEE 802.11: deauthenticated due to local deauth request

PSP ise “A connection error has occurred. You have been disconnected from the access point” hatası veriyor.