Terminalden Zahmetsizce Kablosuz Ağ Yönetimi
Merhaba Arkadaşlar,
Biliyorsunuz yakında İstanbul Hackerspace‘de bir workshop hazırlayacağız. Bu workshop boyunca kullanılacak Raspberry Pi, klavye, mouse, WiFi dongle gibi araçları Raspberry Pi Türkiye Distribütörü SAMM karşılayacak (yeniden teşekkürler! 🙂 ). Atölye boyunca kullanılacak araçlardan biri de WiFi dongle.
Atölye boyunca Raspberry Pi’lerde Edimax EW-7811 (Realtek RTL8188) 802.11 b/g/n destekli 150MBPS WiFi adaptör kullanılacak.
Ne yapılacağını kurcalarken kafama şu sorun takıldı: “Tamam WiFi ağlarına bağlanabiliyoruz, ama bu bence çok zahmetli, ve de herkes ağ SSID’sini bilmek veya terminale mecbur olsa bile bence takla atmak zorunda değil. Grafik arayüzünde çok basitken terminal’de de buna benzer bir yol yok mu?” diye kendime sordum, baya bi kurcaladım, ve de Linux’da kullanılan, Raspberry Pi’de de (debian) paketi olan çok tatlı bir araca denk geldim.
Bu nedenle, eğer atölyeye gelmeyi düşünüyorsanız bu makaleyi bilmeniz atölye sırasında size hız kazandıracaktır.
Kullanacağımız araç: wicd.
Wicd sayesinde Raspberry Pi’de grafik arayüzünü açmamışken tek satır kod yazmadan;
- root hakları gerekmeden ağları listeleyebilir ve listeyi güncelleyebilir,
- root hakkı gerekmeden ağlara bağlanabilir, veya kopabilir, hatta gizli ağlara bile bağlanabilir,
- ağlara otomatik olarak bağlanmayı sağlayabilir,
- ağa bağlanırken parola, statik ip, dns sunucusu (open dns, google dns vs.) gibi ayarları girebilir
- ağda DHCP’ye farklı bir isimle kendinizi tanıtabilir,
- servis olarak (daemon) çalışan bu program sayesinde kablosuz ağlara ayarlanmışsa otomatik olarak bağlanabilir,
- birden fazla WiFi aygıtı varsa hangi aygıtın arama ve bağlanmalarda kullanılacağını belirleyebilirsiniz.
Yapılacaklar;
- Öncelikle Raspberry Pi’de WiFi’nin algılandığına ve sürücüsünün kurulduğuna emin olun. Ben bu yazıyı yazarken Raspbian’ın 9 eylül 2014 tarihinde güncellenmiş imajını kurdum. Kurduğum anda WiFi ağlarına bağlanamasam bile (ayar girmediğimden) sürücü olarak tanındı. Eğer tanınmadığını düşünüyorsanız aşağıdaki komut ile Realtek firmware’ini kuabilirsiniz (başka marka model WiFi dongle’larda bu yol değişecek):
sudo apt-get update && sudo apt-get install firmware-realtek
Yani önce WiFi dongle sürücünüzü kurmalısınız.
- Ardından wicd-curses paketini kurmalısınız. Dağıtımdan dağıtıma değişecek bu yol için Raspbian’da komut şöyle:
sudo apt-get update && sudo apt-get install wicd-curses
- Kurulumun ardından tek yapmanız gereken programı çalıştırmak:
wicd-curses
- İlk açtığınızda program açılacak, ama bir bug’dan dolayı boş ekran gelecek, WiFi olarak hangi aygıtın kullanılacağını tek seferlik seçemlisiniz. Bunun için shift+p komutu ile ayarlar (Preferences) sayfasını açıp kablosuz ağ olarak hangi ortamın kullanılacağını seçmelisiniz:
- Ben göreceğiniz gibi wlan0 yazdım, %99.9 bu herkesde geçerli olacaktır, ama sizde birden fazla aygıt varsa ve misal bir diğer aygıta geçecekseniz bu değer değişebilir.Not: buraya ne yazacağınızdan emin değilseniz programı ctrl+c ile kapatıp terminale iwconfig yazın, burada WiFi adaptörünüzün solundaki yazan değeri girmelisiniz. Hiç değer göremiyorsanız WiFi aygıtınızın sürücüsünü doğru kuramamış olabilirsiniz.Daha sonra f10’a basarak kapattım (mac kullananlar, iterm gibi bir terminal emülatörü ile “F10: OK” yazısındaki F10’a mouse ile de tıklayabilir)
- Şimdi Shift+R (Refresh) tuş kombinasyonu ile ağ listesini güncelledim, ağlar çıkmaya başladı.
- Bağlanmak istediğim ağın üzerine gelip klavyemden sağ ok tuşuna bastım ( -> ). Şöyle bir sayfa karşıladı beni:
- Burada kısaca anlatmam gerekirse;
- [] use static ip’yi tikleyip (kutu içine gelip space bar tuşuna basın) altından ip, netmask ve gateway değerlerini girerseniz o kablosuz ağda Raspberry Pi’ye statik ip vermiş ve DHCP’den otomatik almamış oluyorsunuz.
- [] use static dns’yi tikleyip dns değerleri girilirse o ağ için OpenDNS, Google DNS, Yandex DNS gibi üçüncü parti dns sağlayıcıları kullanımını ayarlayabilirsiniz.
- [] use dhcp hostname’den ağdaki diğer insanların makine adı olarak sizi göreceği adı belirleyebilirsiniz. Resimde göreceğiniz gibi raspberrypi olarak kendi geldi, çünkü http://raspberrypi veya ssh pi@raspberrypi gibi dediğinizde DHCP üzerinden raspberrypi kelimesi ip adresine çözümleniyor. İşte buradan o özel ismi değiştirebilirsiniz.
- [] use system settings for all sharing this essid: Bu değer ile aynı ssid’ye sahip tüm WiFi ağlarında (ilerde olur da adı değişir essid aynı kalır ama gibi) aynı değeri kullanımını ayarlayabilirsiniz. Ben boş bıraktım.
- [] Automatically connect to this network: Bu ağ göründüğü anda otomatik olarak bağlanmasını sağlıyor. Ben açtım.
- [] use encryption: Bunu genelde kendisi dolduruyor. Ağda parola varsa tikli geliyor. Parolasız ağ ise tiki kaldırın
- Key: Buraya da WiFi parolanızı yazıyorsunuz.
- En son f10 tuşuna basarak, veya f10’un üzerine gelip mouse ile tıklayarak ayarları kaydediyorsunuz.
- Şimdi versiyona göre ya doğrudan ağa bağlanmalı (ki eğer kablolu ağa bağlıysanız kopmanızdan bunu anlayabilirsiniz), ya da yeniden ağ listeleme sayfasına düşmüş olmalısınız. Bir seferlik Shift+R ile listelemeyi yenileyip ayarladığınız ağın üzerine gelip Shift+C veya Enter tuşuna basın.
- Eğer her şeyi doğru yaptıysanız kablosuz ağa bağlanmış olacaksınız. Kablolu ağdan SSH’dan bağlanıyorsanız kablolu ağdan kopmuş olmanızdan, veya doğrudan terminaldeyseniz internetin aktif olmasından (mesela “ping 8.8.8.8 -c3” diyerek google dns’e ping atmayı deneyip internetin olup olmadığını kontrol edebilirsiniz) anlayabilirsiniz.
- Tebrikler! Artık sorunsuzca bir kablosuz ağa bağlandınız! 🙂
Kablosuz ağdan kopmak için;
- wicd-curses programını çalıştırın,
- kopmak istediğiniz o an bağlı olduğunuz ağın üzerine gelin
- Shift+D (Disconnect) diyerek bağlantıyı kesin.
- Ctrl+C diyerek programı kapatın.
Afiyet olsun! 🙂