Jak połączyć się ze sterownikiem tuningu Linuksa

Trudno mi zrozumieć ten problem - próbuję napisać program, który będzie współdziałał ze sterownikiem tunelu Linux. Na bardzo podstawowym poziomie chcę po prostu utworzyć aplikację, która będzie w stanie przesyłać dane przez tunel sieciowy. Jednak zupełnie nie rozumiem, jak prawidłowo skonfigurować sterownik tunelu, aby to osiągnąć.

Rozwijam się na Ubuntu 9.04 i mam załadowany moduł jądra sterownika tunelu.

Istnieje urządzenie/dev/net/tun, jednak nie ma/dev/tunX pomysłowość. Nie mogę utworzyć tych urządzeń za pomocąifconfig - kiedy biegnę/sbin/ifconfig tun0 upna przykład pojawia się następujący błąd:

tun0: BŁĄD podczas pobierania flag interfejsu: Brak takiego urządzenia.

Jeśli spróbuję spojrzeć na/dev/net/tun urządzenie, pojawia się następujący błąd:

cat: / dev / net / tun: deskryptor pliku w złym stanie.

Próba otwarcia/dev/tunX za pomocą małego programu, w zasadzie prosty

<code>tun_fd = open( "/dev/tun0", O_RDWR )
</code>

zwraca -1: aplikacja działa jako root i nadal nie może otworzyć tego urządzenia tunelowego. Możliwe jest otwarcie/dev/net/tun, jednak wydaje się, że nie generuje to nowego/dev/tunX zamiast tego użyć urządzenia.

Podsumowując - w jaki sposób można napisać aplikację, która chce używać sterownika tunelu Linux? Wszelkie spostrzeżenia byłyby bardzo mile widziane.

Dzięki; ~ Robert

questionAnswers(3)

yourAnswerToTheQuestion