Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Помогите объединить интерфейсы.  (Прочитано 1693 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Помогите объединить интерфейсы.
« : 16 Ноября 2011, 17:27:37 »
Здравствуйте, камрады!
Вынудили меня обстоятельства самостоятельно делать роутер.

Есть машика под управлением Ubuntu 10.04.
В ней есть интегрированная сетевуха (eth0), wi-fi (wlan1) и еще одна сетевая (eth1), обычная pci.

На данный момент на компьютер интернет приходит уже "готовый" из роутера. Но, роутер, к сожалению, надо отдавать, потому я уже сделал следующее:
1) Использую поиск по форуму поднял hostapd.
2) Используя поиск по форуму установил dnsmasq и заставил его работать с wlan интерфейсом.

Теперь следующий шаг:
3) Объединить wi-fi и вторую сетевуху.

На данный момент имею следующее:

 sudo ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:27:0e:04:c9:ec 
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::227:eff:fe04:c9ec/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:19171057 errors:0 dropped:0 overruns:0 frame:0
          TX packets:57609333 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1398126433 (1.3 GB)  TX bytes:81339835418 (81.3 GB)
          Interrupt:44 Base address:0x2000

eth1      Link encap:Ethernet  HWaddr 4c:00:10:53:9a:ef 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:21 Base address:0x1000

lo        Link encap:Локальная петля (Loopback) 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:97 errors:0 dropped:0 overruns:0 frame:0
          TX packets:97 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:12828 (12.8 KB)  TX bytes:12828 (12.8 KB)

mon.wlan1 Link encap:UNSPEC  HWaddr 00-22-5F-5A-24-B5-00-00-00-00-00-00-00-00-00-00 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:390809 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:54517759 (54.5 MB)  TX bytes:0 (0.0 B)

wlan1     Link encap:Ethernet  HWaddr 00:22:5f:5a:24:b5 
          inet addr:192.168.10.1  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::222:5fff:fe5a:24b5/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:587 errors:0 dropped:0 overruns:0 frame:0
          TX packets:244 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:61052 (61.0 KB)  TX bytes:43246 (43.2 KB)

cat /etc/dnsmasq.conf# Интерфейс, который будет слушать dnsmasq
interface=wlan1

# Адрес, на котором будет находится dnsmasq
listen-address=192.168.10.1

# Укажем dnsmasq слушать только интерфейсы
bind-interfaces

# Укажем локальный домен, для нашей домашней сети, это не обязятельно
domain=media-server.lan

# Диапазон IP для DHCP, длинная маска, время аренды IP
dhcp-range=192.168.10.20,192.168.10.50,255.255.255.0,24h

# Маршрут по-умолчанию для клиентов
dhcp-option=3,192.168.10.1

cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto 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 192.168.1.1


auto wlan1
iface wlan1 inet static
    address 192.168.10.1
    netmask 255.255.255.0
    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off

Пользователь решил продолжить мысль 16 Ноября 2011, 17:31:00:
В сетях не совсем дуб-дубом, потому накопипастил в интернете следующее решение, но оно оказалось неработоспособным.

а) Удалить из interface все, что касается wlan1
б) Внести в interface следующие строки:
auto br0
iface br0 inet static
       address 192.168.10.1
       netmask 255.255.255.0
       bridge_ports wlan1 eth1
bridge_fd 0
bridge_hello 2
bridge_maxage 12
bridge_stp off
bridge_maxwait 20
г) В dnsmasq.conf изменить интерфейс с wlan1 на br0.
« Последнее редактирование: 16 Ноября 2011, 17:31:00 от sexy cowboy »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #1 : 16 Ноября 2011, 17:51:36 »
Интерфейсы wlan0 и eth1 должны быть прописаны в interfaces. Без адресации, но понять их надо.

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #2 : 16 Ноября 2011, 17:53:52 »
Т.е. просто вписать
auto wlan1 eth1 ?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #3 : 16 Ноября 2011, 17:57:38 »
Угу.Но могу ошибаться.

Пользователь решил продолжить мысль 16 Ноября 2011, 17:59:11:
Кстати, здесь были?
« Последнее редактирование: 16 Ноября 2011, 17:59:11 от fisher74 »

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #4 : 16 Ноября 2011, 18:17:44 »
К сожалению, ваш совет не помог.
По ссылке, конечно, был.
Но, как я уже писал, в сетях я не разбираюсь, а потому не знаю как эту информацию адаптировать под себя.
В частности, не могу адаптировать раздел, относящийся к wi-fi.
(В данном мануале, что-то напутано. сначала человек, как я понял, с помощью команды iw поднимает точку доступа, а потом делает это же hostapd)
В любом случае, если я изменю свой interfaces на следующий:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto 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 192.168.1.1

auto wlan1 eth1

iface wlan1 inet static
    address 192.168.10.1
    netmask 255.255.255.0
    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off

iface br0 inet static
    address 192.168.10.1
    network 192.168.10.0
    netmask 255.255.255.0
    broadcast 192.168.10.255
    bridge_ports eth1 wlan1

То, ничегошеньки не получается - wifi отваливается через несколько секунд.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #5 : 16 Ноября 2011, 18:24:18 »
Зачёркнутое однозначно удалять
Цитировать
iface wlan1 inet static
    address 192.168.10.1
    netmask 255.255.255.0

    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off

Пользователь решил продолжить мысль 16 Ноября 2011, 18:27:40:
Цитировать
iface wlan1 inet manual
pre-up iw dev wlan1 del
pre-up iw phy phy1 interface add wlan1 type __ap
вот так должно выглядеть описание wlan1
« Последнее редактирование: 16 Ноября 2011, 18:30:04 от fisher74 »

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #6 : 16 Ноября 2011, 19:38:54 »
достаточно просто создать мост на eth1 , а в конфиге hostapd есть опция bridge, и сам hostapd будет засовывать wlan в мост после того как поднимется...
« Последнее редактирование: 16 Ноября 2011, 19:41:30 от xeon_greg »

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #7 : 16 Ноября 2011, 20:00:00 »
pre-up iw phy phy1 interface add wlan1 type __ap
если снова рестарт опять phy2
надо посмотреть rfkill list all
Wars ~.o

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #8 : 16 Ноября 2011, 20:49:04 »
Спасибо за ответы.
Хочу уточнить несколько моментов.
1) Меня сильно смущают вот эти
face wlan1 inet manual
pre-up iw dev wlan1 del
pre-up iw phy phy1 interface add wlan1 type __ap
Мне кажется, что они не нужны в случае, если точка доступа поднимается hostapd.

если удалить/закоментировать строки   
address 192.168.10.1
netmask 255.255.255.0

и привести весь конфиг к следующему виду
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto 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 192.168.1.1

auto wlan1 eth1

iface wlan1 inet static
    #address 192.168.10.1
    #netmask 255.255.255.0
    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off

iface br0 inet static
    address 192.168.10.1
    network 192.168.10.0
    netmask 255.255.255.0
    broadcast 192.168.10.255
    bridge_ports eth1 wlan1

, то к wi-fi вообще не подключиться.
достаточно просто создать мост на eth1 , а в конфиге hostapd есть опция bridge, и сам hostapd будет засовывать wlan в мост после того как поднимется...
Я не рассматривал такой вариант. А если бы у меня не было hostapd?
« Последнее редактирование: 16 Ноября 2011, 21:15:52 от sexy cowboy »

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #9 : 16 Ноября 2011, 20:54:08 »
Цитировать
Я не рассматривал такой вариант. А если бы у меня не было hostapd?
объединить в мост проводной и беспроводной интерфейсы возможно только, когда последний работает в режиме 'мастер', режим мастер - режим точки доступа, получить можно 2я способами: на уровне драйвера и карты, если дрова и карта поддерживают этот режим, что случается крайне редко, либо - программный режим - hostapd. надеюсь внятно объяснил. иначе мост между ними не создать.

Оффлайн McDanger

  • Любитель
  • *
  • Сообщений: 84
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #10 : 16 Ноября 2011, 21:30:09 »
Если не хочешь сильно парится с iptables, настрой через UFW. например так http://dudnikgg.blogspot.com/2011/03/apple.html как говорится и дешево и сердито.

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #11 : 16 Ноября 2011, 21:33:46 »
Решил не умничать, и скопировал interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto 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 192.168.1.1

#работающий hostapd
#iface wlan1 inet static
#    address 192.168.10.1
#    netmask 255.255.255.0
#    up ip link set $IFACE promisc on
#    down ip link set $IFACE promisc off

### взято из https://help.ubuntu.ru/wiki/wifi_ap

auto wlan1 br0

# Беспроводной интерфейс
iface wlan1 inet manual
pre-up iw dev wlan1 del
pre-up iw phy phy0 interface add wlan1 type __ap

# Мост.
iface br0 inet static
address 192.168.10.1
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
bridge_ports eth1 wlan1


в hostapd.conf раскоментировал
bridge=br0

после перезагрузки


sudo ifconfig
br0       Link encap:Ethernet  HWaddr 00:22:5f:5a:24:b5 
          inet addr:192.168.10.1  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::222:5fff:fe5a:24b5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2327 errors:0 dropped:0 overruns:0 frame:0
          TX packets:94 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:192570 (192.5 KB)  TX bytes:14661 (14.6 KB)

eth0      Link encap:Ethernet  HWaddr 00:27:0e:04:c9:ec 
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::227:eff:fe04:c9ec/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:509 errors:0 dropped:0 overruns:0 frame:0
          TX packets:389 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:47772 (47.7 KB)  TX bytes:32899 (32.8 KB)
          Interrupt:44 Base address:0x2000

eth1      Link encap:Ethernet  HWaddr 4c:00:10:53:9a:ef 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:21 Base address:0x1000

lo        Link encap:Локальная петля (Loopback) 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:86 errors:0 dropped:0 overruns:0 frame:0
          TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8064 (8.0 KB)  TX bytes:8064 (8.0 KB)

mon.wlan1 Link encap:UNSPEC  HWaddr 00-22-5F-5A-24-B5-00-00-00-00-00-00-00-00-00-00 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1320 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:182034 (182.0 KB)  TX bytes:0 (0.0 B)

wlan1     Link encap:Ethernet  HWaddr 00:22:5f:5a:24:b5 
          inet6 addr: fe80::222:5fff:fe5a:24b5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2328 errors:0 dropped:0 overruns:0 frame:0
          TX packets:375 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:225268 (225.2 KB)  TX bytes:89295 (89.2 KB)

кажется, все работает... завтра проверю eth1.

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #12 : 17 Ноября 2011, 00:53:28 »
Цитировать
auto wlan1 br0

# Беспроводной интерфейс
iface wlan1 inet manual
pre-up iw dev wlan1 del
pre-up iw phy phy0 interface add wlan1 type __ap

# Мост.
iface br0 inet static
address 192.168.10.1
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
bridge_ports eth1 wlan1
в принципе достаточно уже такого варианта, поскольку хостапд сам переводит интерфейс в мастер и добавляет в мост
« Последнее редактирование: 17 Ноября 2011, 11:18:37 от xeon_greg »

Оффлайн sexy cowboy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #13 : 17 Ноября 2011, 09:39:12 »
к сожалению, конфиг, предложенный xeon_greg не сработал.
интерфейсы br0 и eth1 не поднялись.

Пользователь решил продолжить мысль 17 Ноября 2011, 10:05:47:
фактически, единственный рабочий конфиг - это пока тот, что выложен на https://help.ubuntu.ru/wiki/wifi_ap

но, есть один симптом, говорящий о том, что что-то идет не так.
после перезагрузки клиент подключается к сети, а потом, через несколько секунд "отваливается" и подключается вновь.
после чего, кажется (все пока в тестовом режиме проходит) переподключений не происходит.

мне кажется, что проблема в неком конфликте между
строками
pre-up iw dev wlan1 del
pre-up iw phy phy0 interface add wlan1 type __ap
и hostapd.
« Последнее редактирование: 17 Ноября 2011, 10:05:47 от sexy cowboy »

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
Re: Помогите объединить интерфейсы.
« Ответ #14 : 17 Ноября 2011, 11:09:29 »
Цитировать
pre-up iw dev wlan1 del
pre-up iw phy phy0 interface add wlan1 type __ap
если есть хостапд то это не нужно

Пользователь решил продолжить мысль 17 Ноября 2011, 11:18:01:
auto wlan1 br0

# Беспроводной интерфейс
iface wlan1 inet manual

# Мост.
iface br0 inet static
address 192.168.10.1
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
bridge_ports eth1
вот как должна выглядеть часть interfaces касающаяся моста и wlan
« Последнее редактирование: 17 Ноября 2011, 11:18:01 от xeon_greg »

 

Страница сгенерирована за 0.07 секунд. Запросов: 26.