LINUX.ORG.RU
ФорумAdmin

Debian в качестве роутера

 , , ,


0

1

Всем доброго времени суток. Нужно заставить машину с Debian'ом на борту работать в качестве роутера. Имеются в корпусе mini-ITX (в дальнейшем планируется настроить как домашний сервер):

eth0 - смотрит в интернет (и интернет есть) eth1 - смотрит в локальную сеть wlan0 - Wi-Fi

Цель: доступ в интеренет через eth1 и wlan0, а также объединить эти интерфейсы в одну локальную сеть. при подключение через eth1 пинг идет, через wi-fi тоже, но интерфейсы друг друга не видят, соответственно инет только на серверной машине, и через eth1 нет доступа к wlan0. В iptables я полный 0.

включал Nat через arno-iptables-firewall, также результат нулевой.

# cat /etc/sysctl.conf

net.ipv4.ip_forward=1

# ifconfig

http://2paste.in/6scc

# iptables-save

http://2paste.in/nsuv

# iptables -t nat -L -n

http://2paste.in/bv3i

★★★

Последнее исправление: Ignatov (всего исправлений: 7)

В ветке Админ поищи, там куча таких вопросов.

kelt
()

arno-iptables-firewall

Это что еще за поделие?

Тебе нужно две строчки напечатать всего.

Нужен SNAT/MASQUERADE

iptables -t nat -A POSTROUTING -s local_subnet/mask -j MASQUERADE
, и включить ipv4_forward
echo 1 > /proc/sys/net/ipv4/ip_forward && echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
Для wi-fi есть hostapd, в котором настраивается вся мулька на уровне wireless.

а также объединить эти интерфейсы в одну локальную сеть

Это бриджинг, я бы лучше разбил на две подсети - одну на вафлю, вторую на провод.

PS: и до этого снести все правила, загруженные поделием.

invokercd ★★★★
()
Последнее исправление: invokercd (всего исправлений: 1)
Ответ на: комментарий от invokercd

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

имеется

hostpad

стоит. коннектится.

бриджинг

сначит нужен... для начала значит просто доступ в интернет бы поднять...

Ignatov ★★★
() автор топика
Ответ на: комментарий от invokercd

уже ребутнулся;-) как понимаю обнуляются;-)

Ignatov ★★★
() автор топика
Ответ на: комментарий от invokercd

iptables -t nat -A POSTROUTING -s local_subnet/mask -j MASQUERADE

на local_subnet/mask ругается а на iptables-restore вообще застопорил. по contrоl+c только отключился. инета не было. хреново времени на изучение iptables нет

Ignatov ★★★
() автор топика
Последнее исправление: Ignatov (всего исправлений: 1)

Вот мой скрипт поднятия шлюза. /usr/local/bin/lan-gate указан в /etc/rc.local

# !/bin/sh

#поднятие соединения
pon kmv-telecom


#шлюз
echo 1 > /proc/sys/net/ipv4/ip_forward 
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -P FORWARD ACCEPT
iptables -A POSTROUTING -t nat -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
echo lan-gate rules accepted

#UPnP
#iptables -N UPNP
#iptables -N UPNP iptables -A FORWARD -j UPNP

Если что непонятно, задавай вопросы.

rezedent12 ☆☆☆
()
Последнее исправление: rezedent12 (всего исправлений: 1)
Ответ на: комментарий от Ignatov

local_subnet/mask

Тут же нужно локальную сеть и маску вписать было.

iptables -F;iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.128.0.0/25 -m comment --comment "nat for local network" -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.128.0.128/25 -m comment --comment "nat for wireless network" -j MASQUERADE
iptables-save > /root/iptables.save
echo "post-up < /root/iptables-save" >> /etc/network/interfaces
Конфиг для двух сетей по 127 хостов (для провода и вафли), можно и бридж, это дело вкуса. В конце сохранение и чтение конфига после поднятия сетевых карточек.

Замечательный гайд, можно перевести гуглом если не понятно.

invokercd ★★★★
()
Последнее исправление: invokercd (всего исправлений: 1)
Ответ на: комментарий от joy4eg

Пусть ковыряется. Писюк с Debian то у него уже есть, почему бы не сделать его роутером?

Да и знания лишними не бывают! И денег сэкономит.

black_13
()
Ответ на: комментарий от joy4eg

проще, но вопрос финансов + тачку нагрузить надо (ну и свои настройки после их создания можно доработать в отличие от дешевого роутера)

Ignatov ★★★
() автор топика

Проделывал такое пару лет назад. Ковырял-ковырял iptables, даже здесь тред постил - ничего толком не работало. В итоге поднял через NetworkManager двумя кликами мышью.

ArtKun ★★★★★
()
Ответ на: комментарий от ArtKun

через network-manager иксы же запускать придется. а если из консоли, то там черт ногу сломает

Ignatov ★★★
() автор топика
Ответ на: комментарий от invokercd

интерефейс ppp0 (dsl), айпи провайдера статика.

гугл в быстро выдается, лор норм работел! не из кэша ли тянет? на wi-fi не работает совсем. может еще и с dhcp проблемы?

Ignatov ★★★
() автор топика
Последнее исправление: Ignatov (всего исправлений: 4)

из /etc/dhcp/dhcpd.conf

subnet 192.168.1.0 netmask 255.255.255.0
{
range 192.168.1.1 192.168.1.127;
option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
}

subnet 192.168.1.0 netmask 255.255.255.0
{
range 192.168.1.128 192.168.1.255;
option routers 192.168.1.128;
option broadcast-address 192.168.1.255;
}
так?

из /etc/network/interfaces

iface eth1 inet static
 address 192.168.1.1
 netmask 255.255.255.0
 gateway 192.168.1.0

iface wlan0 inet static
 address 192.168.1.128
 netmask 255.255.255.0
 gateway 192.168.1.0

Ignatov ★★★
() автор топика
Ответ на: комментарий от Ignatov

и почему

iptables -F;iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -m comment --comment "nat for local network" -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.128/24 -m comment --comment "nat for wireless network" -j MASQUERADE
выдает:
*nat
:PREROUTING ACCEPT [212:13980]
:INPUT ACCEPT [165:10826]
:OUTPUT ACCEPT [29:1783]
:POSTROUTING ACCEPT [28:1735]
-A POSTROUTING -s 192.168.1.0/24 -m comment --comment "nat for local network" -j MASQUERADE
-A POSTROUTING -s 192.168.1.0/24 -m comment --comment "nat for wireless network" -j MASQUERADE
COMMIT

Ignatov ★★★
() автор топика
Ответ на: комментарий от invokercd

gateway 192.168.1.0 убрал. уже совсем не понимаю что куда и зачем вписывать. разбираться нет ни инета ни времени (монитор чужой подключаю для настройки, но он обычно занят)

Ignatov ★★★
() автор топика
Ответ на: комментарий от Ignatov

переустановил, накатил dnsmasq и разрулил eth1 с помощью все того же arno-iptables-firewall. остался wlan0...

Ignatov ★★★
() автор топика
Ответ на: комментарий от Ignatov

Не знаю в чем был баг, но с dnsmasq все работает и ip раздается на обе подсети и инет есть на обоих подсетях.

Ignatov ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.