Большой Воронежский Форум
» UNIX и дериваты>как проще и правильнее объединить несколько интерфейсов?
dm.tsvetkov 07:43 16.11.2011
есть вот что:media@media-server:~$ 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)
Код:
media@media-server:~$ 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
media@media-server:~$ 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
на данный момент,eth0 получает "готовый" интернет от роутера.
wlan1 - тестовая hostapd сетка. интернета в ней нет.

eth1 - вообще бездельничает.

хочу сделать следующее:
1) в eth0 воткнуть кабель от провайдера и поднять l2tp
2) в eth1 воткнуть клиента.
3) сделать так, что бы wlan1 и eth1 поднимали сеть 192.168.10.1
4) чтобы wlan1 и eth1 раздавали интернет.
dm.tsvetkov 07:43 16.11.2011
шаги предполагаю следующие:
1)wlan1 и eth1 объединить в мост.
как я предполагаю, так:
а) удалить из 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.

получу новую сеть, создаваемую роутером, на wlan1 и eth1, без доступа в интернет, правильно?
Hip-Hop 13:04 16.11.2011

Сообщение от dm.tsvetkov:
) в eth0 воткнуть кабель от провайдера и поднять l2tp
2) в eth1 воткнуть клиента.
3) сделать так, что бы wlan1 и eth1 поднимали сеть 192.168.10.1
4) чтобы wlan1 и eth1 раздавали интернет.

Лучше разбить на сети. Wifi - в одну сеть. Eth - в другую сеть.

Для этого нужно включить forwarding в sysctl.conf. Настроить nat и dnsmasq на две сети. Дальше по вкусу - iptables.

dnsmasq это кеширующий dns - можно использовать эту возможность. dnsmasq умеет читать файлы /etc/hosts и /var/lib/dhcp/dhcpd.leases. Если ты перечислишь все хосты своей home net в /etc/hosts на медиасервер, то всё будут 'знать' их по именам, а не по ip. Соотв, адрес media-servere должен быть передан как dns для хостов по dhcp, а сам он должен быть настроек как кеширующий от dns'ов isp.
dm.tsvetkov 15:09 16.11.2011
Hip-Hop, я в сетях совершенно ничего не понимаю.

соответственно, есть ряд вопросов:
1) какие практические преимущества даст разделение сетей на две? особенно, если учесть, что по кабелю у меня будет только один клиент.
2) не возникнет ли у меня потом лишних проблем с доступностью устройств, находящихся в разных ветках?
3) мой способ рабочий? чем он плох?
dm.tsvetkov 15:52 17.11.2011
так. с этим разобрался.

cat /etc/network/interfaces
Код:
auto lo
iface lo inet loopback
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 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
cat /etc/hostapd/hostapd.conf | egrep -v '^$|^#'
Код:
interface=wlan1
bridge=br0
driver=nl80211
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=td_wifi_home_n
country_code=US
hw_mode=g
channel=6
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=3
ignore_broadcast_ssid=0
wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0
ieee80211n=1
ht_capab=[HT40-][HT40+][SHORT-GI-40][TX-STBC][RX-STBC1][DSSS_CCK-40]
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
wpa=2
wpa_passphrase=295658wifi
wpa_pairwise=CCMP
cat /etc/dnsmasq.conf | egrep -v '^$|^#'
Код:
interface=br0
domain=media-server.lan
dhcp-range=192.168.10.20,192.168.10.50,255.255.255.0,24h
dhcp-option=3,192.168.10.1
Вверх