Главная > Linux > Расшариваем интернет через wi-fi карту в Linux.

Расшариваем интернет через wi-fi карту в Linux.


Ситуация:
Есть домашний компьютер, который практически постоянно подключен к интернет через ethernet соединение и есть ноутбук, с которым хотелось бы ходить по квартире и тоже лазать в интернете.

Пошаговое решение:
1. Устанавливаем на компьютер карту wi-fi в pci слот.
2. Настраиваем wi-fi карту на компьютере и поднимаем беспроводную сеть в режиме ad-hoc:

ifconfig $LAN_IFACE down
iwconfig $LAN_IFACE mode ad-hoc
iwconfig $LAN_IFACE channel 6
iwconfig $LAN_IFACE essid home
ifconfig $LAN_IFACE 192.168.3.1
ifconfig $LAN_IFACE up

где INET_IFACE=»eth1″ (Название сетевой на которую интернет приходит)
LAN_IFACE=»wlan0″ (Название сетевой которая смотрит в локальную сеть)

3. Разрешаем подключения к интернет через беспроводную сетевую карту на компьютере:

# Удаление всех правил во всех таблицах.
iptables -F
iptables -t nat -F
iptables -t mangle -F

# Удаление пользовательских правил во всех таблицах.
iptables -X
iptables -t nat -X
iptables -t mangle -X

# Включить перенаправление пакетов через ядро.
#echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl net.ipv4.ip_forward=1

#разрешаем интернет для всей сети
iptables -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

#разрешаем интернет только для одного адреса:
iptables -t nat -A POSTROUTING -o $INET_IFACE -s 192.168.3.4/24 -j MASQUERADE

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

4. Устанавливаем на компьютере dnsmasq:
в debian-based дистрибутивах:

apt-get install dnsmasq

в redhat-based дистрибутивах:

yum install dnsmasq

5. На ноутбуке устанавливаем любой IP-адрес из диапазона 192.168.3.0/255.255.255.0, Указываем в качестве шлюза и в качестве DNS сервера адрес wi-fi карты на компьютере (192.168.3.1). И радуемся беспроводному интернету. 🙂



Вот набросок простейшего скрипта:
#!/bin/sh
# Переменные, задающие пути к файлам для запуска
iptables="/sbin/iptables"
ifconfig="/sbin/ifconfig"
iwconfig="/sbin/iwconfig"

# Название сетевой на которую интернет приходит
INET_IFACE="eth1"

# Название сетевой которая смотрит в локальную сеть
LAN_IFACE="wlan0"

ifconfig $LAN_IFACE down
iwconfig $LAN_IFACE mode ad-hoc
iwconfig $LAN_IFACE channel 6
#iwconfig $LAN_IFACE key 123456789
iwconfig $LAN_IFACE essid home
ifconfig $LAN_IFACE 192.168.3.1
ifconfig $LAN_IFACE up

# Удаление всех правил во всех таблицах.
iptables -F
iptables -t nat -F
iptables -t mangle -F

# Удаление пользовательских правил во всех таблицах.
iptables -X
iptables -t nat -X
iptables -t mangle -X

# Включить перенаправление пакетов через ядро.
#echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl net.ipv4.ip_forward=1
#разрешаем интернет для всей сети
iptables -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE
#разрешаем интернет только для одного адреса:
#iptables -t nat -A POSTROUTING -o $INET_IFACE -s 192.168.3.4/24 -j MASQUERADE

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

  1. 3 апреля, 2011 в 2:00 пп

    Единственное, в чем пока не разобрался, как установить ключ, поэтому для подключение никакого ключа не запрашивается.
    В принципе, все должно делаться командой: iwconfig wlan0 key 123456789, где 123456789 — это ключ. Но у меня она не срабатывает. Возможно, потому, что я не отключал NetworkManager, а может, почему-то еще, хз.

  2. 14 апреля, 2011 в 3:10 пп

    Привет. Обменяемся ссылками ? Пишите на oleggo@mail.ru.

  3. 19 апреля, 2011 в 11:54 дп

    Интересный топик,. Вы автор?

  4. 11 мая, 2011 в 10:28 дп

    Я)

  1. No trackbacks yet.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

%d такие блоггеры, как: