[Çözüldü] Bağlantı Durumlarını (Bağlanma, Kopma...) Yakalama

Başlatan ersinkandemir, 22 Eylül 2014 - 11:48:01

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ersinkandemir

İyi günler,


Daha çok programlama ile ilgili bir soru olacak fakat çözümün networking paketlerinde/programlarında olabileceğini düşündüğüm için buraya açmaya karar verdim.


Durum şu:


Üniversitenin hotspot bir ağı var. Yani bağlanırken şifresiz fakat bağlandıktan sonra tarayıcıya girdiğinizde giriş sayfasına yönlendiriyor. Orada gerekli bilgilerle giriş yapıp normal kullanıma başlıyorsunuz.


Benim sormak istediğim, bağlantı yapılır yapılmaz bir betik çalıştırmak için nasıl bir tetikleyici kullanmalıyım? Kernel, sürücü, bağlantı yöneticisi, unity vs. bunlardan herhangi biri bir event oluşturuyor mu "connected", "disconnected" gibi?


Teşekkür ederim,


Düzenleme: Doğrudan bu iş için yazılmış bir araç varmış, gözümden nasıl kaçtı bilmiyorum, kusura bakmayın: iwevent
Where there's a shell, there's a way.



if

@ersinkandemir, ağ yöneticisi gerçekleşen durumları bildirir aslında. dmesg'ten de alabilirsiniz fakat alınan olayları ayıklamak gerekebilir. Gerçi gerekli paketi bulmuşsunuz. Nasıl kullandınız iwevent'i?

ersinkandemir

Bahsettiğim gibi login için bir script yazmadım başka bir ağı kullanmaya geçtiğim için fakat şu şekilde dinleyebilmiştim:


#!/bin/bash

while read line; do
   [[ $(echo "$line" | grep -E "Cell address:(.{2}:){5}.{2}") ]] && echo "bağlandı"
done < <(iwevent)



Normalde iwevent çıktısı bağlantı olduğunda şöyle oluyor:


Waiting for Wireless Events from interfaces...
05:42:22.432299   eth1     Scan request completed
05:42:22.487834   eth1     Association Request IEs:0007656475726F616D010882848B962430486C210209122402010B30140100000FAC040100000FAC040100000FAC010C0032040C1218602D1A2C181BFF00000
05:42:22.487898   eth1     Association Response IEs:010882848B960C12182432043048606C2D1A2C181BFFFF0000000000000000000000000000000000000000003D1609080400000000000000000000000000000
05:42:22.487921   eth1     New Access Point/Cell address:20:37:06:12:24:F1
Where there's a shell, there's a way.