понедельник, декабря 29, 2008

Проброс интернета через два компа на КПК


Как всегда, захотелось странного. А именно чтобы интернет мог работать одновременно на трёх компьютерах. На домашнем компьютере, ибо он раздаёт торренты 24/7. На ноутбуке, ибо использую как рабочий комп, ну и плюс в нём wifi есть, чтобы давать интернет на КПК. Ну и КПК, лежать в кроватке и пользовать интернет.


Всё опять же не просто, а очень просто. Хотя для многих не очевидно, посему хочу поделиться готовым рецептом.

Конкретно имеем следующую цепочку:
ADSL router--Wire-->Computer--Wire-->Laptop--Wireless-->PDA

ADSL: всё стандартно. Настроен роутером, DHCP выключено, т.е. адрес на компьютере настраиваем статически. Адрес роутера как обычно 192.168.1.1.

Computer: тут имеем две сетевых карточки. Одна для соединения с роутером, вторая с ноутбуком. Соответственно настраиваем два интерфейса, eth0 и eth1 у меня. Настройки:

eth0(выдержка из /etc/network/interfaces):
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 195.5.61.70 195.5.61.68
dns-search netserverdomaineth1(выдержка из /etc/network/interfaces):

eth1(выдержка из /etc/network/interfaces):

allow-hotplug eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0

Здесь опять же важный момент. Должен быть включен ip-форвардинг и маскарадинг в iptables:

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING --out-interface eth0 -j MASQUERADE

Laptop: опять же ничего сложного. Снова два интерфейса, для второго новая подсеть для wifi-интерфейса. Настройки(тут уже из Arch Linux, посему имеют немного иной вид):
eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
wlan0="wlan0 192.168.20.1 netmask 255.255.255.0 broadcast 192.168.20.255"
wlan_wlan0="wlan0 essid Wifi"
INTERFACES=(eth0 wlan0)
gateway="default gw 192.168.0.1"
ROUTES=(gateway)

Здесь стоит обратить внимание на wlan_wlan0="wlan0 essid Wifi" это мы сходу имеем настроенную AD-Hoc точку, без шифрования. Для /etc/network/interfaces это выглядит примерно вот так:

auto wlan0
iface wlan0 inet static
address 192.168.20.1
netmask 255.255.255.0
wireless-mode ad-hoc
wireless-channel 1
wireless-rate auto
wireless-essid Wifi

Вот так и получаем интернет сразу на трёх девайсах. Зачем? Это уже личное дело каждого. Мне вот нужно. Может есть ещё кто с такими потребностями.



P.S. С Windows на ноутбуке такую цепочку не осилил. Как-то там всё это непонятно организовано...

3 комментария:

losaped комментирует...

У меня все проще =) У меня роутер на все хозяйство wifiрвздает.

eduard_pustobaev комментирует...

Рутер покупать нужно. А тут "я его слепила из того, что было"... А с роутером конечно проще.

Анонимный комментирует...

прикольно мне тоже понравилась эта идея