1

Есть три интерфейса: eth0, eth1, wlan0
eth0 - internet(ethernet)
eth1 - ethernet к другому компьютеру.
wlan0 - wifi card(pci)
Цель: сделать роутер на компьютере.
Простеший кеширующий DNS сервер на основе BIND-9.3 поднят.
Теперь, я так понимаю, необходимо сконфигурировать dhcp сервер таким образом, чтобы он брал ип адрес с eth0(внешнего исчточника)? каким-то образом делал 192.168.*.* и раздавал на интерфейсы eth1 и wlan0.
Далее при помощи hostapd надо как-то сконфигурировать wi-fi карточку, как точку доступа, т.е. она должна быть в режиме Master.
Также интересует такой момент, на сервере будет поднята Samba, 1c server и еще куча всего, надо бы им свои айпишники выдать или же лучше не надо и обращаться по одному? например 192.168.0.1?

2

hostpad + bridge + dhcp + nat

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

3

1 .Интерфейсы eth1 и wlan0 неплохо бы объединить в мост, если вы хотите, чтобы адреса и там и там были из одного диапазона.
2. dhcprelay утилита, которая может редиректить dhcp запросы. Но возможно будет лучше добавить в мост и eth1 и тогда не придется извращаться.
3. Сервисы можно на одном ip оставлять. Нет разницы по какому адресу к ним будет доступ. Это вопрос личных предпочтений.

Возможно удобнее будет сделать эту точку доступа роутером... тогда исключаем пункт 2 и выделяем ей отдельный диапазон адресов, которые она будет раздавать.

4

А более развернутый ответ можно? А то чего не понятно что за bridge и nat, да и как правильно сконфигурировать dhcp сервер тоже не понятно.

5

n2b, если вы все 3 интерфейса вашей точки доступа объедините в мост (bridge), то за dhcp вам волноваться не придется, т.к. будет работать тот, который уже у вас настроен.

Kettler, не уверен что человеку нужен NAT.

6

Так конечно выделить диапазончик и усе.
Так что, объединять в мост все три(3in1) или только два? Как сделать этот мост? ab
dhcprelay нужен или нет? Я так понял, если мост 3in1, то он не нужен?
Тогда получается что dhcp сервер надо будет конфигурировать для моста? Как это делается?

7

dhcp у меня еще не настроен, ругается на то что диапазон адресов я задаю 192..., а мой адрес 77.232... говорит что так нельзя.

8 (25.03.2011 10:11:19 отредактировано Kettler)

Я покажу конфиги ибо не знаю что у вас за дистр.
Необходимые пакеты wireless-tools bridge-utils hostapd

/etc/network/interfaces

auto wlan0
iface wlan0 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

#Bridge interface
auto br0
iface br0 inet static
address 172.16.0.1
netmask 255.255.255.0
bridge_ports wlan0 eth1 #какие сетевые входят в мост

Wi-Fi hostpad
/etc/hostapd/hostapd.conf

interface=wlan0
bridge=br0
driver=nl80211
ssid=home #ваш ssid
country_code=RU
hw_mode=g
channel=7
macaddr_acl=0
wpa=3
wpa_passphrase=password #ваш пароль
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
dump_file=/tmp/hostapd.dump

/etc/default/hostapd

RUN_DAEMON="yes"
DAEMON_CONF="/etc/hostapd/hostapd.conf"
#DAEMON_OPTS="-dd"

Ну и самой собой dhcp-server интерфейс указываем br0

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

9

n2b, назначьте одному из интерфейсов адрес из диапазона, который будет на dhcp. И уточните задачу =). Именно что вы хотите, а уж потом мы вам скажем что получится, а что нет и как это лучше сделать (а то вас похоже сбивает с толку что можно по разному настроить) =).

Было бы удобно, если бы вы представили все визуально, например картинкой =).

10

Мне нужна точка доступа.
Проводная и вайфай. То есть, фактически роутер.
Мой дистрибутив OpenSUSE 11.4

11

eth1 - internet.
eth0 - для соединения с другим компьютером.
wlan0 - раздает вайфай.
то есть мой dhcp сервер должен раздавать адреса на eth0 и wlan0.

Вот что нужно.

12

Ставим пакет bridge-utils
Делаем bridge br0

auto wlan0
iface wlan0 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down

#Bridge interface
auto br0
iface br0 inet static
address 172.16.0.1
netmask 255.255.255.0
bridge_ports wlan0 eth1 #какие сетевые входят в мост

Не что сложного
Ставим wireless-tools hostapd
Защищаем вафлю

interface=wlan0
bridge=br0
driver=nl80211
ssid=home #ваш ssid
country_code=RU
hw_mode=g
channel=7
macaddr_acl=0
wpa=3
wpa_passphrase=password #ваш пароль
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
dump_file=/tmp/hostapd.dump

dhcp server травим на br0

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

13

ага, а у br0 какой ип будет? Все тот же внешний? Я не понимаю как сделать чтобы было 192.168 и диапазон такой был для моста(интерфейса), у меня же ип внешний 77.232 и т.д.

Так третий интефейс отправлять в мост? eth0(inet), eth1, wlan0.

14 (25.03.2011 10:49:04 отредактировано Kettler)

bridge_ports wlan0 eth1 #какие сетевые входят в мост

#Bridge interface
auto br0
iface br0 inet static
address 192.168.0.1
netmask 255.255.255.0

3 не надо он в инет смотрит

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

15

уфф, примерно все понял. по настройке вайфай карточки на раздачу хостапда хватит?
Вечером буду все это пробовать.
А в каком конф файле делать мост и его опции(включа ип адрес)?
Спасибо за быстрые ответы, я похода на этом форуме надолго ab

16 (25.03.2011 11:07:43 отредактировано Kettler)

debian или ubuntu
http://linuxforum.ru/viewtopic.php?pid=160337#p160337
/etc/network/interfaces

hostapd хватит у самого раньше такая схема стояла.
Кстати что за карта wi-fi ?

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

17

ой, щас не вспомню, ASUS какая-то за 700 рублей.

18

/etc/network/interfaces - нет такой папки даже
но есть /etc/sysconfig/network - но там нет файла interfaces
Что сделать? Создать папку в /etc/ или создать файл в /etc/sysconfig/network?
Папки hostapd нет в /etc/, но там есть файл hostapd.conf.
А в папке default нет файла hostapd.
Что делать?
Вот это меня всегда не нравилось, что везде все по разному, структура папок.

19

На счёт Suse не ко мне) Если бы дистр на основе Debian я бы подсказал

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

20

Жаль, а  я вот взялся уже за Суську, так как клиенты на ней сидят(точней во всех компаниях серваки на ней подняты) поэтому обратной дороги уже нет.

21

А можешь еще дхцп конфиг файл выложить, натравленный на br0 при условии что в этом мосте wlan0 и eth1, а интернет поступпает с eth0(с внешний ип адресом), а у моста ип адрес 192.168.0.1: /etc/dhcpd.conf
Буду очень благодарен.

22

Теперь такой вопрос, все про конфиг dhcpd:
Мост в моей системе не хочет создаваться, не знаю почему... Создаю, все ок, нажимаю ок - сохранение параметров, перезапуск служб, захожу в настройки сети - нет моста... Поэтому решил сконфигурировать дхцп на два интерфейса сразу, так вот вопрос - как указать, что дхцп сервер работал на два интерфейса сразу?

Далее вопрос, вот допустим дхцп работает и что теперь-то? ab Допустим с вай фаем подождать, если я воткну по проводу другой комп ему выдадут интернет?!

23

n2b пишет:

Допустим с вай фаем подождать, если я воткну по проводу другой комп ему выдадут интернет?!

Вашим компьютерам будут выдаваться адреса из выбранного диапазона =).

Чтобы они могли выйти в интернет, нужно будет включить форвардинг как минимум. Делается это вот так:

 Консоль:
sysctl -w  net.ipv4.conf.default.forwarding=1

И далее либо настроить соединение с вашим шлюзом в интернет, либо настроить NAT, если точка доступа как раз и является этим шлюзом.

NAT - Network Address Translation. Требуется для того, чтобы ваши компьютеры с адресом из диапазона локалки, могли обращаться к ресурсам интернета. При этом со стороны интернета вся сеть будет известна под именем ее шлюза в интернет =).
Настраивается все это дело посредством файрвола. В нашем случае это будет iptables. В принципе в Yast есть возможность настраивать его в графическом режиме.

24

кстати, а где мне прописать для авто-запуска днс сервера, дхцп сервера и т.д.?

Эту команду что ты мне дал тоже в автозапуск прописать и дальше настраивать iptables?
Где в ясте iptables? Есть опция фаерволл, а iptables нет.

25

И сюда же, чтобы мой компьютер был шлюзом в интернет надо что-нибудь кроме форвардинга и настройки иптаблес? Т.е. с вай фаем понятно, hostapd и iptables и все как-бы работает, мой компьютер становится точкой доступа и раздает интернет по воздуху(что я кстати, еще даже и понятия не имею как сделать, хостапд вроде настроил, конфиг прописал, но вайфая как я не видел так и не вижу,хотя бы даже названия точки доступа в посике), а с проводным соединением? То что ты написал, этого будет достаточно для раздачи инета и мой компьютер уже можно будет назвать роутером?
И ты не ответил на вопрос: как в дхцп конфиге прописать, чтобы дхцп сервер работал на несколько интерфейсов? interface eth1; - это на один, а на несколько как? у меня есть версия, но хочется услышать другую версию ab

26

Уважаемый ТС, будьте добры прочитать хэндбук к вашей системе, или хотя бы небольшой мануал по ясту, куча вопросов отпадет сразу, и вы сами сможете в дальнейшем лучше разбираться в такого рода деталях ab

27

Это надо вписать в специальном конфигурационном файле. Я знаю где он у меня находится, но к сожалению, не могу ничего сказать о suse. Если порт вообще никакой не указывать, то dhcpd будет работать на все интерфейсы.

Раздел "файрвол" в ясте это и есть то что нужно.

Форвардинга включеного и NAT будет достаточно, чтобы интернет раздавать =).

Итак. Давайте прорезюмируем задачи, которые вам нужно реализовать:
1. Как создать мост средствами дистрибутива?
2. Как включить форвардинг средствами дистрибутива?
3. Как настроить hostapd?
4. Как настроить dhcpd?
5. Как настроить NAT?

Теперь есть смысл заняться последовательно каждым из этих вопросов. Возможно создать новую отдельную тему в разделе, где обсуждают проблемы именно вашего дистрибутива. Просто мы с Kettler пользуемся другими дистрибутивами и у нас другие инструменты для конфигурации и немного отличающееся расположение конфигурационных файлов.

+ n2b

28

1. Как создать мост средствами дистрибутива?
Это я знаю. Создает он в настройках сети, да только отваливается сразу после применения настроек(перезапуска сервисов и т.д.). Решил обойтись без него, настройкой dhcpd на два интерфейса.
2. Как включить форвардинг средствами дистрибутива?
Вы мне написали команду в консоле, мне кажется этого достаточно, нет?
3. Как настроить hostapd?
Я вписал в конф ваши настройки, этого не достаточно?
4. Как настроить dhcpd?
Настроил я его ab Остался только 1 вопрос: КАК(!) заставить его раздавать на ДВА интерфейса, не где, а именно как, что прописать в dhcpd.conf?
5. Как настроить NAT?
Да, этот вопрос остался не ясен, точнее я понял, что надо настраивать iptables - таким образом я настрою NAT. Я прав?

Я бы сюда еще вопрос вписал.

6. Что надо еще для поднятия точки доступа? После того как я сделаю все выше-указанные пункты, моя машина станет роутером? Естественно что мне придется ее допиливать и допиливать, но по сути вайфай я буду иметь и по проводу интернет будет поступать?


andaks, спасибо за совет, прочитаю как будет время. ab

29 (26.03.2011 20:48:52 отредактировано n2b)

Вписал два интерфейса, но даже и не вписывая их по проводу не раздает ип адрес... Я даже и не знаю где проблема, в найтройках сети мой проводной интерфейс настроен и я ему ручками прописал ип 192.168.1.1
конфиг dhcpd вот:

#include "/etc/rndc.key";

#ddns-update-style interim;
#not authoritative;
#option netbios-scope "";
#zone saikov.ru. {
#    primary 192.168.1.150;
#    key "rndckey";
#}

#zone 168.192.in-addr.arpa. {
#    primary 192.168.1.150;
#    key "rndckey";
#}

subnet 192.168.1.0 netmask 255.255.255.0 {


        range 192.168.1.10 192.168.1.30;

#        ddns-updates on;
#        ddns-domainname "saikov.ru";
#        ddns-rev-domainname "in-addr.arpa";


        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        192.168.1.255;
        option domain-name              "privet.ru";
        option domain-name-servers      192.168.1.1;
#        option netbios-name-servers     192.168.1.1;
#        option netbios-node-type 8;

#        option ip-forwarding on;

#        default-lease-time 86400;
#        max-lease-time 86400;
#        use-host-decl-names true;
}
#include "/etc/rndc.key";

кстати, если раскоментить эту строку, он мне пишет что такого файла нет, хотя на самом деле он есть - я проверял ab

30

DHCP работает.
По крайней мере IP выдает по проводу. Вот рабочий конфиг, если кому надо:

subnet 192.168.1.0 netmask 255.255.255.0 {
    interfaces="wlan0, eth1";
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.1.255;
    # маршрутизатор по умолчанию
    option routers 192.168.1.1;
    # маска подсети 255.255.255.0
    option subnet-mask 255.255.255.0;
    # задание широковещательного адреса
    option broadcast-address 192.168.1.255;
    # включение IP-Forwarding
    #option ip-forwarding on;
    # адрес DNS сервера, который будут использовать клиенты
    # приоритет в порядке убывания
    option domain-name-servers 192.168.1.1;
    # диапазон адресов для клиентов
    range 192.168.1.2 192.168.1.254;
}