Автор Тема: WiFi hotspot & internet connection sharing  (Прочетена 1882 пъти)

remotexx

  • Участник
  • *****
  • Публикации: 773
    • Профил
WiFi hotspot & internet connection sharing
« -: Фев 05, 2016, 23:10 »
Проблема ми е че искам да споделям интернет който идва по TUN интерфейс и искам да го споделя по безжичната мрежа.

Значи под Уиндоус това нещо си работи без проблем, но искам да го подкарам и под линукс...
обик. се прави с някоя от следните програми (MyPublicWiFi, VirtualRouter, Connectify)
http://www.nextofwindows.com/8-free-tools-to-turn-windows-into-a-wifi-hotspot

но аз си го правя на ръка а и за да се разбере по-добре цялата постановка прилагам описание на ръчния метод:

1. Картата поддържа всичко което си трябва (под Уидноус работи - тествано и установено опитно)
2. интернета идва с помощта на Azilink
https://github.com/aziwoqpd/azilink
3. TUN интерфейса се създава по следния начин
https://github.com/aziwoqpd/azilink/blob/master/azilink.ovpn
4. Подкарвам всеки път със следния *.BAT файл:
rem Start administrative command prompt!!!
rem netsh wlan show drivers # Hosted network supported  : Yes
netsh wlan set hostednetwork mode=allow ssid=MySSID key=MyKey
netsh wlan start hostednetwork
pause
netsh wlan stop hostednetwork # when done

5. Споделянето е направено еднократно и перманентно от Control Panel\Network and Internet\Network Connections
TUN Connection: Shared

Въпроси:
1. Незнайно защо въпреки че е TUN (според *.ovpn файла) в Network Connections пише че е TAP??
TAP-Windows Adapter V9

Трябва ли да го докарам до TAP за да може да го споделя... въобще не съм наясно до кой слой трябва да го докарам под линукс за да може да споделям интернет?

2. Под линукс/КДЕ вградения мениджър има някакви опции за импорт обаче не видях там от *.OVPN файл да може да импортира - плъгина за OpenVPN доколкото разбирам ми иска конфгурационен файл но сървърен а аз не искам да покарвам OpenVPN server - а само да споделя интернета от OVPN клиента

3. wicd е най-успешно в смисъл всичко му се наглася и не се оплаква обаче интернет йок :(

Някакви други идеи?
т.е. въпросите са всъщност 2
1) как да споделя интернет то TUN/TAP - tool/app or manual
2) А, Уиндоус-а как го прави някой ако успее да ми обясни ще съм много благодарен

Уточнявам, че въобще не ме интересуват други начини на получаване/споделяне на интернет, а само такъв полчуен от TUN/TAP интерфейс в.сл. получен с помощта azilink.ovpn и azilink.bat

П.П. Най-после намерих нещо в което линукса да е по-назад  :o
« Последна редакция: Фев 05, 2016, 23:24 от remotexx »
Активен

gat3way

  • Участник
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: WiFi hotspot & internet connection sharing
« Отговор #1 -: Фев 06, 2016, 01:38 »
Може да бъркам защото от описанието не можах да си представя как точно изглеждат нещата и какво точно искаш, но ако съм познал, тогава нещата са горе-долу следните:

1) wicd не ти върши работа, няма как машината ти да започне да се държи като access point така, wicd е просто GUI tool за връзване към 802.11 мрежи. Това което ти трябва е hostapd за да го играеш access point, да асоцираш, автентицираш клиенти и т.н.

Няма как да го направиш това което искаш в рамките на друга 802.11 мрежа, понеже нямаш контрол върху мрежовите настройки които се раздават там, така че това с wicd не го мисли.

2) та заради това ще ти трябва също и някакъв dhcp сървър, по твои избор - за да раздаваш ip адреси на 802.11 хостовете.

3) След като dhcp-то се настрои да раздава правилните адреси с правилна маска и правилен default gateway, сложи едно MASQUERADE правило дето изкарва трафика идващ от wlan интерфейса NAT-нат през tun интерфейса.


Алтернативно на 3) е да бриджваш вместо да натваш (dev tun в конфигурацията на openvpn лесно става на dev tap0) - обаче тогава ще си качиш на главата качествено различни проблеми, от които не мисля че има смисъл.
Активен

"Knowledge is power" - France is Bacon

remotexx

  • Участник
  • *****
  • Публикации: 773
    • Профил
Re: WiFi hotspot & internet connection sharing
« Отговор #2 -: Фев 07, 2016, 08:42 »
Не помага особено...
аз доколкото разбирам проблема е че TUN и TAP работят на различни слоеве в TCP/IP стека, а програмата отсреща (която е на джава - което е малко спорно при адроид, особено след като се съдиха там... ама както и да е) та Азилинк не може да подава на друг слой.
То и аз (с моите ограничени познания) си мислех че Уиндоуса го upgrade to next layer пък то май downgrade излиза освен ако уикипедията не подвежда
https://en.wikipedia.org/wiki/TUN/TAP
TUN (namely network TUNnel) simulates a network layer device and it operates with layer 3 packets like IP packets. TAP (namely network tap) simulates a link layer device and it operates with layer 2 packets like Ethernet frames. TUN is used with routing, while TAP is used for creating a network bridge

аз и без това четох някъде (големите глави), че TUN не можел да се bridge-ва
те това е проблема
интересен факт е как уиндоуса го прави - с обсолютно същия *.bat файл вътре дето се мъдри dev tun
Аз не мога да го сменя на dev TAP защото отсреща програмата не го поддържа

за DHCP знам че трябва да подкарам даже отсреща у-вото (таблет) очаква и някакво файлче да получи преди да захапе ама има фикс (хвърля му там нещо) ама аз да го докарам до там пък...

1) wicd го споменах защото само то ми дава са споделям интернет от всяко друго у-во вкл. и TUN, не се оплаква обаче и не работи в смисъл че прецаква ми и интернета, който иначе си върви нормално от същия тоя TUN
2) за dhcp ясно обаче
3) как да MASQUERADE нещо което е на толкоз нисък слой 2
3) алтернативно - отпада (великите глави от openvpn казват че не може bridge - трябвало да е минимум TAP)
та коригирам си въпросите
1. Как Уиндоуса го прави?
2. как евентуално да upgrade-вам или по-точно downgrade TUN до TAP (предполагам такак го прави Уиндоуса), но с друга/външна програма (понеже Азилинк не поддържа)
3. Как да MASQUERADE, networkmanager, wicd и пр. споделя интернета

btw: тъпото КДЕ май се опитва да ми каже че видите ли само wired connection можело да споделя - ама нека се изкажат тука експертите..

П.П. Преди време пак бях пускал тема мисля тука също - даже и с wired connection пак ми се оплакваше че не може да направи bridge - само че тогава бях пробвал по USB eth0 и т.н т.е. USB ми идваше като wired интерфейс а не wireless и пак internet sharing не работеше.

П.П.П. Изрових и старата тема, не че някой успя да помогне особено тогава понеже мен лично решения различни от софтуерно подкарване на десктоп или лаптоп под линукс не ме вълнуват особено (а под Уиндоус просто си работи не ми казва като КДЕ ама не ти е wired connection, ама аз мога само от ethX да споделям интернет)
Bridge tun0 - usb0
« Последна редакция: Фев 07, 2016, 08:51 от remotexx »
Активен

gat3way

  • Участник
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: WiFi hotspot & internet connection sharing
« Отговор #3 -: Фев 07, 2016, 15:13 »
Мисля че си "разменил" двете понятия и оттам идва объркването.

И tun и tap интерфейсите може да им вдигнеш IP адрес и да им рутираш и nat-ваш трафика. Разликата е че докато tap интерфейса идва с емулиран link layer отдолу и можеш да го бриджваш, tun интерфейса въобще не "знае" за това, няма L2 (MAC) адрес и съответно не може да го бриджваш. В този ред на мисли, ако няма да бриджваш интерфейси си ОК (а и предполагам не искаш да го правиш така или иначе - има драми с това, най-малкото MTU-тата вероятно ще са различни).

Ta с MASQUERADE няма да имаш драми.

Не знам какво точно прави уиндоуса.
Активен

"Knowledge is power" - France is Bacon

remotexx

  • Участник
  • *****
  • Публикации: 773
    • Профил
Re: WiFi hotspot & internet connection sharing
« Отговор #4 -: Фев 08, 2016, 04:11 »
Ха-ха и аз не знам какво прави Уиндоуса, но го прави добре  8)

Правилно ме е разбрал колега (извинявам се предварително но го писах посред нощите и повечето информация са подробности) - основният проблем е "споделянето на интернет". Досега винаги съм стигал до вдигането на 2та интерфейса и ..дотам
инак и аз не знам защо всички примери са все с bridge бил той eth0 -> usb0 или към wireless
ще се опитам да изровя точно tutorial по който се борих навремето

Значи да се върнем на по-простия вариант
tun0 -> usb0
дайте правила за MASQUERADING така че да се сподели нета който идва от tun0 да иде и към usb0
- улеснявам още повече задачата - тъй като на usb0 няма да им сървъри и пр. та ще съм доволен и за прехвърляне/препредаване само на пакетите за връзки отворени от към usb0 т.е. то там ще има само едно IP де

Код
GeSHi (Bash):
  1. root@localhost:~# ifconfig
  2. lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
  3.        inet 127.0.0.1  netmask 255.0.0.0
  4.        inet6 ::1  prefixlen 128  scopeid 0x10<host>
  5.        loop  txqueuelen 0  (Local Loopback)
  6.        RX packets 2611319  bytes 4373117881 (4.0 GiB)
  7.        RX errors 0  dropped 0  overruns 0  frame 0
  8.        TX packets 2611319  bytes 4373117881 (4.0 GiB)
  9.        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  10.  
  11. tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
  12.        inet 192.168.56.2  netmask 255.255.255.255  destination 192.168.56.1
  13.        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 100  (UNSPEC)
  14.        RX packets 1878026  bytes 2602303277 (2.4 GiB)
  15.        RX errors 0  dropped 0  overruns 0  frame 0
  16.        TX packets 968456  bytes 46457839 (44.3 MiB)
  17.        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  18.  

http://askubuntu.com/questions/180733/how-to-setup-an-access-point-mode-wi-fi-hotspot
това дали ще помогне - уточнявам че съм пробвал само първата част и там КДЕ не ми даде да споделя от нещо различно от eth0 "wired" сега гледам че отдолу са дописали ръчен метод - ще пробвам и него после
Активен

remotexx

  • Участник
  • *****
  • Публикации: 773
    • Профил
Re: WiFi hotspot & internet connection sharing
« Отговор #5 -: Фев 08, 2016, 08:55 »
Намерих точно как пробвах преди и не ми се получи - моя случай е абсолютно същия само дето нета ми не идва от eth0 ами от tun0

http://blog.mathieu.carbou.me/post/60454997009/reverse-usb-tethering-with-android-22

незнайно защо всички примери са само с bridge и то ethX -> usbX
и незнайно защо не може да направи bridge от tun0 -> usb0

та от примера горе - как трябва да се пренапишат правилата от стъпка 3 така че като се изпълни стъпка 4 да има Интернет и на (в сл.) таблета

STEP 4: From your computer, execute:
./adb shell netcfg usb0 dhcp

П.П. Това е по-лесния вариант (за осъществяване) - ако го подкарам тогава ще пробвам по-удбния т.е. безжичен че да има и по стаите :-)

П.П.П. Най-накрая намерих официално изявление
https://community.openvpn.net/openvpn/wiki/BridgingAndRouting
TUN drawbacks:
Cannot be used in bridges
« Последна редакция: Фев 08, 2016, 09:01 от remotexx »
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Internet Connection Sharing, MTU
Настройка на програми
Knopper 1 1415 Последна публикация Апр 06, 2004, 21:43
от
Internet Connection Sharing
Настройка на програми
theend 4 1841 Последна публикация Май 28, 2005, 09:37
от tdobrev
Internet Connection Sharing
Настройка на програми
pcpro 11 3480 Последна публикация Авг 17, 2007, 00:07
от ice4o
Странен проблем с internet connection sharing
Настройка на програми
Robert_ 2 1754 Последна публикация Фев 08, 2006, 14:06
от Robert_
Internet connection sharing
Настройка на хардуер
ssl 7 1998 Последна публикация Яну 05, 2008, 01:32
от Stratovarius