LINUX.ORG.RU

Несколько вопросов по организации домашней сети


0

2

Здравствуйте. У меня компьютер и нетбук с Gentoo. На компьютере правда несколько дистрибутивов, но пусть будет Gentoo. И я раздавал на нетбук Интернет по Wi-Fi с помощью скрипта:

wlanconfig ath0 destroy
wlanconfig ath0 create wlandev wifi0 wlanmode apath0
iwconfig ath0 essid ATHLON64-INET
iwconfig ath0 key 1230-2120-00
iwconfig ath0 channel 13
ifconfig ath0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255 up
/etc/init.d/dhcp3-server restart
sysctl -p
iptables -F
iptables -t nat -F
iptables -A FORWARD -i ath0 -s 192.168.2.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Скрипт написан не знаю кем (дневник удалён) и я его себе сделал ещё в 2007-м. Насколько он грамотен я не знаю, но он работал. Хотел на форуме спрашивать как вместо WEP сделать WPA2. Недавно я потерял антенну Wi-Fi и ничего естественно не раздаётся. Тогда я вытащил Wi-Fi и вставил вторую сетевую плату. Нужно раздавать Интернет на нетбук.

А теперь конфигурация. Gentoo, компьютеры соединены кабелем напрямую. Раньше был роутер, но сгорел. Никакого NetworkManager нет (но если надо, могу запустить), всё примитивно. ADSL-интернет на компьютере запускается командой pppoe-start. Модем - глючный Интеркросс, который типа DHCP, но DHCP не работает ни в одной системе. Поэтому либо режим роутера и шаманство с файлами конфигурации, либо режим bridge и pppoe-start. Вот /etc/conf.d/net первого случая:

modules="ifconfig"
routes_eth0=( "default via 192.168.1.1" )
config_eth0=( "192.168.1.2/24" )
auto_eth0="true"
dns_servers_eth0="8.8.8.8"
enable_ipv6_eth0="false"

Во втором всё настраивается автоматически, спросят только сетевую карту и имя с паролем. Кстати, в первом случае (с этим файлом net) не работает kppp для соединения с мобильным интернетом, только скрипты chat отсюда.

Если соединить два компьютера проводом напрямую, сети нет. После

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up

На первом компьютере и

ifconfig eth0 192.168.1.3 netmask 255.255.255.0 up

на другом, сеть появляется. Самбу настраивал уже через KDE Center (не умею я передавать файлы по NFS) и запускаю по /etc/init.d/samba start _после_ команды выше (иначе не видит компов). Модифицировал ли я /etc/hosts не помню. Раньше был роутер с DHCP и работало сразу и само, только он сгорел.

То же самое относится к модему. Зайти в админку 192.168.1.1 без ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up не получается, даже если Интернет по bridge есть.

Вот такая дикость. Теперь надо с одного компьютера на другой раздать Интернет. Также интересует его разделение, кому сколько Интернета давать, какие есть варианты. Также интересует SSH, я только что с перегруженной мощным CUDA-расчётом запстил OpenGL-игру. Иксы встали колом. Убил процесс из консоли, а при попытке вернуться в иксы там всё зависло, мышка движется а на клавиатуру нет реакции. При этом активно раздаются торренты и вообще комп работает, не завис. Вот мне надо чтобы не только Интернет раздавался, но ещё и можно было зайти по SSH в подобном случае и убить иксы с соседнего компа. SSH не стоит ни там, ни здесь, следовательно нет и конфигов.

Кроме того, хочется пробросить иксы по SSH. Я читал как люди играют с ноутбуком в ресурсоёмкие игры по SSH, соединившись по сетевому кабелю с компьютером. То же самое: конфигов нет, что делать не знаю.

И ещё, так как я перебираю свой забытый пароль и XMMS, Amarok и VLC не знаю чем, но затормаживают это (FireFox почему-то нет), ищу проигрывалку Интернет-радио из консоли. Подойдёт ли ffmpeg -i http://listen.42fm.ru:8000/stealkill-5.0.ogg /dev/dsp ?

Ответ на: комментарий от xtraeft

Зачем? Есть вторая сетевая карта, есть локальная сеть по ней. Хочется 1). Раздать Интернет 2). Чтобы одновременно с интернетом работала локальная сеть 3). Настроить SSH 4). Играть по SSH в игры.

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

на твою простыню текста возникает почти только 1 ответ - что мешает почитать документацию?

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

Давай. И ещё то что нужно запустить на нетбуке (на втором компьютере). DHCP там нет, есть только net.eth0. Локальная сеть появляется после команды выше.

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

Ставим iptables, dnsmasq, hostapd

emerge -nq iptables dnsmasq hostapd

Правим /etc/conf.d/net:

#WAN configuration

#Сюда забиваем конфу для подключения интернет

#LAN configuration
config_eth1="null" #интерфейс eth1 - внутренний
config_wlan0="null"
bridge_br0="eth1"
config_br0="192.168.1.1 netmask 255.255.255.0 brd 192.168.1.255"

Правим /etc/dnsmasq.conf

domain-needed
bogus-priv
interface=br0
dhcp-range=192.168.1.2,192.168.1.50,255.255.255.0,8h
read-ethers
dhcp-option=19,0
dhcp-option=44,0.0.0.0
dhcp-option=45,0.0.0.0
dhcp-option=46,8

Правим /etc/conf.d/hostapd

INTERFACES="br0"
CONFIGS="/etc/hostapd/hostapd.conf"

Правим /etc/hostapd/hostapd.conf

interface=wlan0
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=BotNet #Сюда желаемый SSID
country_code=RU
hw_mode=g
channel=7
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=1
accept_mac_file=/etc/hostapd/hostapd.accept
deny_mac_file=/etc/hostapd/hostapd.deny
auth_algs=1
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
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
wpa=1
wpa_passphrase=password #Сюда желаемый пароль
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

Далее пишешь правила для iptables в скрипт (название сам придумаешь)

#!/bin/bash

#Переменные
LAN=br0
WAN1= #интерфейс, через который получаешь Интернет
#WAN2=eth0 #нужно, если провайдер предоставляет локальные ресурсы, доступные без подключения к Интернет, тогда раскомментируешь эту переменную и правило ниже с ней.

#Сброс правил
iptables -F
iptables -t nat -F

#Политики цепочек
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Разрешаем эхо-запросы
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT

#Разрешаем INPUT для локальных сервисов
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

#DHCP (67/udp in; 68/udp out)
iptables -I INPUT -i ${LAN} -p udp --dport 67 -j ACCEPT

#DNS (53/both)
iptables -I INPUT -i ${LAN} -p tcp --dport 53 -j ACCEPT
iptables -I INPUT -i ${LAN} -p udp --dport 53 -j ACCEPT

#SMB (137:139,445)
iptables -A INPUT -i ${LAN} -p tcp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -i ${LAN} -p udp -m multiport --dport 137:139,445 -j ACCEPT

#Разрешаем вход для ssh
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#Разрешаем RSYNC
iptables -I INPUT -i ${LAN} -p tcp --dport 873 -j ACCEPT

#NAT
#Входящие пакеты только по установленным соединениям
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
#Исходящие только из локальной сети
iptables -A FORWARD -m conntrack --ctstate NEW -i ${LAN} -s 192.168.1.0/24 -j ACCEPT
#Пробрасываем внешние интерфейсы
iptables -t nat -A POSTROUTING -o ${WAN1} -j MASQUERADE
#iptables -t nat -A POSTROUTING -o ${WAN2} -j MASQUERADE

#Проброс портов
#Пример
#LOCAL_IP=
#EXT_PORT=
#INT_PORT=

#iptables -t nat -A PREROUTING -p tcp -i $WAN1 --dport $EXT_PORT -j DNAT --to-destination $LOCAL_IP:$INT_PORT
#iptables -A FORWARD -o $LAN -d $LOCAL_IP -p tcp --dport $INT_PORT -j ACCEPT

#Сохранение параметров
/etc/init.d/iptables save

Делаешь симлинк /etc/init.d/net.br0. Перезапускаешь сетевые интерфейсы, запускаешь dnsmasq, hostapd и iptables и выполняешь скрипт.

По идее, если я ничего не забыл, после этого у тебя будет полнофункциональный рутер, раздающий интернет в домашнюю сеть по кабелю и по воздуху (с WPA2), а также сам раздающий адреса (на нетбуке можешь удалить /etc/conf.d/net, ибо по умолчанию dhcp используется.

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

Такс, глянул в /var/lib/portage/world, еще у меня установлены bridge-utils и wireless-tools. Первое вроде нужно для нормальной работы, второе не знаю, может просто так поставил.

Еще рекомендую поставить ifplugd. Отличный пакет, который определяет наличие сетевого кабеля в разъеме и автоматом поднимает соответствующий интерфейс.

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

Спасибо, именно этого ответа я и ждал! Пробовать буду ночью, а пока поставлю статус «решено».

По-умолчанию dhcp был, да. Но если кабель не был вставлен, это приводило к 30-секундному ожиданию сигнала в кабеле при загрузке. И я удалил net.eth0 . Потом вернул (я так понял это была символьная ссылка на net.lo) и с удивлением обнаружил, что 30-секундного ожидания больше нет. Надеюсь это не помешает получать IP по DHCP.

А пока что я его задаю вручную ifconfig eth0 192.168.1.3 netmask 255.255.255.0 up и только после этого запускаю Samba.

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

>это приводило к 30-секундному ожиданию

Ставь ifplugd. Работает отлично, к тому же умеет перезапускать соединение, если кабель вытащить и воткнуть обратно через время. Иначе приходится вручную перезапускать соединение.

И да, все файлы net.* в /etc/init.d/ являются симлинками на net.lo

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

Как скорректировать твоё руководство на то, что у меня больше нет платы Wi-Fi, а есть только eth0 и eth1, по eth1 сеть, по eth0 - интернет? Я просто не могу разобораться, hostapd он что, весь занят только Wi-Fi? Или для проводного соединения он нужен тоже?

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

Ну то есть первый конфиг я понял что надо eth1 на eth0 заменить, а нужен ли hostatd - не понял.

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

Я не понял, что у тебя теперь только проводное соединение. Тогда нафиг пакеты hostapd, bridge-utils и wireless-tools.

В conf.d/net в секции LAN конфигурации выкидываешь все кроме сonfig_br0, а br0 меняешь на интерфейс твоей внутренней сети. В dnsmasq аналогично - где есть br0, меняешь на внутреннюю сеть. В скрипте iptables проще - там все переменные в начале.

Надо отметить, что если планируешь когда-то добавить Wi-fi обратно, то лучше оставить конфу как есть (с br0), но просто не включать hostapd.

Если я все таки что-то забываю, то вот инструкция, но там некоторые вещи лишние - http://www.gentoo.org/doc/en/home-router-howto.xml

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

Когда пробовал сделать SSH всё перестало работать после перезагрузки. Такой уж я чайник. Итак, что я имею. Компьютеры соединены кабелем, удачно получают IP, первый 192.168.1.2, второй 192.168.1.3. Пингуются, самба работает. Пробую раздать Интернет:

pppoe-start

Стартует ADSL на eth0 первого компьютера, появляется ppp0. При этом затираются все правила iptables новыми. Затем:

iptables -F
iptables -t nat -F
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -I INPUT -i eth1 -p udp --dport 67 -j ACCEPT
iptables -I INPUT -i eth1 -p tcp --dport 53 -j ACCEPT
iptables -I INPUT -i eth1 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth1 -p tcp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -i eth1 -p udp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -i eth1 -p tcp --dport 873 -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i eth1 -s 192.168.1.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

На втором компьютере Интернета нет. Как выяснилось, и на первом тоже. ppp0 ещё есть, но не работает. Тогда я снова делаю pppoe-stop и pppoe-start и пробую только последнюю строчку iptables, две последних тоже. Не работает. Прошу помощи.

ZenitharChampion ★★★★★ ()

Так. Отключил bridge на модеме и сделал его как роутер. Всё равно этого уменьшения пинга в сетевых играх не было, но было несколько споров с папой (он приходя домой не мог с ноутбука выйти в сеть). Сделал и не смог выйти в сеть: оказывается ни сейчас, ни раньше, я НЕ ДЕЛАЛ симлинки на eth0 и eth1. Сделал, Интернет через роутер появился

/etc/conf.d/net:

modules="ifconfig"
nis_domain_lo="mshome"
dns_servers=( "8.8.8.8" "8.8.4.4" )
routes_eth0=( "default via 192.168.1.1" )
config_eth0=( "192.168.1.2/24" )
auto_eth0="true"
dns_servers_eth0="8.8.8.8"
enable_ipv6_eth0="false"
config_eth1=( "192.168.1.4 netmask 255.255.255.0 brd 192.168.1.255" )
athlon64x2 zenitur # ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:19:66:a7:94:85
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::219:66ff:fea7:9485/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:496 errors:0 dropped:0 overruns:0 frame:0
          TX packets:616 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:166570 (162.6 KiB)  TX bytes:142099 (138.7 KiB)
          Interrupt:42 Base address:0x8000

eth1      Link encap:Ethernet  HWaddr 00:e0:52:ae:a4:00
          inet addr:192.168.1.4  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:52ff:feae:a400/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:6533 (6.3 KiB)
          Interrupt:21 Base address:0x4c00

lo        Link encap:Local 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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

athlon64x2 zenitur # iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Затем:

iptables -F
iptables -t nat -F
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -I INPUT -i eth1 -p udp --dport 67 -j ACCEPT
iptables -I INPUT -i eth1 -p tcp --dport 53 -j ACCEPT
iptables -I INPUT -i eth1 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth1 -p tcp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -i eth1 -p udp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -i eth1 -p tcp --dport 873 -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i eth1 -s 192.168.1.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Не работает. Приду вечером, посмотрю есть ли ответы и буду пробовать дальше.

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

Хм, pppoe-start вроде как устаревший метод. В принципе у меня сервер как раз через ADSL, так что дам всю, конфу, включая подключение к нету. ADSL модем в режиме моста.

Делаем пошагово:

1) Конфиг ядра должен соответствовать указанному тут. То есть нем должна быть поддержка ppp, netfilter и опций рутера. Но вроде они у тебя включены.

2) Делай симлинки net.eth1 и net.ppp0 (бридж пока делать не будем). Симлинк для eth0, который на модем смотрит, не нужен.

3) Нужны пакеты net-dialup/ppp, net-dns/dnsmasq, net-firewall/iptables.

4) Редактируешь conf.d/net

#WAN configuration

config_ppp0="ppp"
link_ppp0="eth0"
plugins_ppp0="pppoe"
username_ppp0='логин'
password_ppp0='пароль'
pppd_ppp0="
  defaultroute
"
dns_servers_ppp0="DNS сервера"

#LAN configuration
config_eth1="192.168.1.1 netmask 255.255.255.0 brd 192.168.1.255"

5) Запускаем сеть, проверяем инет, проверяем пинги из внутренней сети

/etc/init.d/net.ppp0 start
/etc/init.d/net.eth1 start

6) Запускаем dnsmasq (конфа из моих предыдущих постов годится, только br0 на eth1 замени), проверяем выдачу адресов

7) Редактируем /etc/sysctl.conf

net.ipv4.ip_forward = 1
net.ipv4.ip_dynaddr = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1

8) Скрипт iptables. Приведу его полностью повторно, ибо он немного изменен.

#!/bin/bash

#Переменные
LAN=eth1
WAN=ppp0

#Сброс правил
iptables -F
iptables -t nat -F

#Политики цепочек
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#Разрешаем эхо-запросы
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT

#Разрешаем INPUT для локальных сервисов
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

#DHCP (67/udp in; 68/udp out)
iptables -I INPUT -i ${LAN} -p udp --dport 67 -j ACCEPT

#DNS (53/both)
iptables -I INPUT -i ${LAN} -p tcp --dport 53 -j ACCEPT
iptables -I INPUT -i ${LAN} -p udp --dport 53 -j ACCEPT

#SMB (137:139,445)
iptables -A INPUT -i ${LAN} -p tcp -m multiport --dport 137:139,445 -j ACCEPT
iptables -A INPUT -i ${LAN} -p udp -m multiport --dport 137:139,445 -j ACCEPT

#Разрешаем вход для ssh
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#Разрешаем RSYNC
iptables -I INPUT -i ${LAN} -p tcp --dport 873 -j ACCEPT

#Опции для ADSL
iptables -I FORWARD 1 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

#NAT
#Входящие пакеты только по установленным соединениям
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
#Исходящие только из локальной сети
iptables -A FORWARD -m conntrack --ctstate NEW -i ${LAN} -s 192.168.1.0/24 -j ACCEPT
#Пробрасываем внешние интерфейсы
iptables -t nat -A POSTROUTING -o ${WAN} -j MASQUERADE

#Проброс портов
#Пример
#LOCAL_IP=
#EXT_PORT=
#INT_PORT=

#iptables -t nat -A PREROUTING -p tcp -i $WAN --dport $EXT_PORT -j DNAT --to-destination $LOCAL_IP:$INT_PORT
#iptables -A FORWARD -o $LAN -d $LOCAL_IP -p tcp --dport $INT_PORT -j ACCEPT

#Сохранение параметров
/etc/init.d/iptables save

9) Запускаешь скрипт, запускаешь iptables

/etc/init.d/iptables start
После этого на домашних компах должен появиться инет.

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

Я всё сломал, всё не пингуется. Первый компьютер делает так:

athlon64x2 m0mchil-poclbm-06cf386 # ping 192.168.1.3
PING 192.168.1.3 (192.168.1.3) 56(84) bytes of data.
From 192.168.1.2 icmp_seq=2 Destination Host Unreachable
From 192.168.1.2 icmp_seq=3 Destination Host Unreachable
From 192.168.1.2 icmp_seq=4 Destination Host Unreachable
From 192.168.1.2 icmp_seq=5 Destination Host Unreachable
From 192.168.1.2 icmp_seq=6 Destination Host Unreachable
From 192.168.1.2 icmp_seq=7 Destination Host Unreachable
^C
--- 192.168.1.3 ping statistics ---
9 packets transmitted, 0 received, +6 errors, 100% packet loss, time 8009ms
pipe 4

Второй почти так же, но вместо 192.168.1.3 я пингую 192.168.1.4, и в ошибке фигурирует не 192.168.1.2 а 192.168.1.3. После чего началось не знаю.

Раньше работало всё без правки /etc/conf.d/net, и без создания симлинка net.eth1. Я вручную командовал «ifconfig eth1 192.168.1.4 netmask 255.255.255.0 up» для того чтобы поднять сеть и всё начинало пинговаться. После редактирования и создания перестало. Удалил симлинк, стёр изменения в конфиге - всё равно не работает. Делал iptables -F - не работает. Я подозреваю что дело в том что я сменил pppoe-start на модем в режиме роутера и статический IP. Хотя это вообще не должно влиять. Был конфиг такой:

modules="ifconfig"
nis_domain_lo="mshome"
dns_servers=( "8.8.8.8" "8.8.4.4" )
# config_eth0=( "192.168.1.2 netmask 255.255.255.0 brd 192.168.1.255" )
# routes_eth0=( "default gw 192.168.1.1" )

А стал такой:

modules="ifconfig"
nis_domain_lo="mshome"
dns_servers=( "8.8.8.8" "8.8.4.4" )
routes_eth0=( "default via 192.168.1.1" )
config_eth0=( "192.168.1.2/24" )
auto_eth0="true"
dns_servers_eth0="8.8.8.8"
enable_ipv6_eth0="false"
# config_eth0=( "192.168.1.2 netmask 255.255.255.0 brd 192.168.1.255" )
# routes_eth0=( "default gw 192.168.1.1" )
ZenitharChampion ★★★★★ ()
Ответ на: комментарий от ZenitharChampion

Закомментировал вообще все строчки в /etc/conf.d/net на обоих компах. Перезагрузил их. дал IP с помощью той команды вручную. Всё равно не пингуется. Раньше только так и делал и всё работало.

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

Вещества... Как ты умудрился сделать, что пингуя .1.3, пакеты посылаются на .1.2?

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

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

Я не могу освоить генту! А я что-то понял.

eth0      Link encap:Ethernet  HWaddr 00:19:66:a7:94:85
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::219:66ff:fea7:9485/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8043 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8052 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6073666 (5.7 MiB)  TX bytes:1446951 (1.3 MiB)
          Interrupt:42 Base address:0x8000

eth1      Link encap:Ethernet  HWaddr 00:e0:52:ae:a4:00
          inet addr:192.168.1.4  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:52ff:feae:a400/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:88 errors:0 dropped:0 overruns:0 frame:0
          TX packets:145 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16806 (16.4 KiB)  TX bytes:38103 (37.2 KiB)
          Interrupt:21 Base address:0x2c00

lo        Link encap:Local 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:108 errors:0 dropped:0 overruns:0 frame:0
          TX packets:108 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:5041 (4.9 KiB)  TX bytes:5041 (4.9 KiB)

Я задаю статические IP. Стоило ли мне на eth0 давать 192.168.1.2, а на eth1 192.168.1.4? На нетбуке 192.168.1.3

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

Есть прогресс. Выключил компьютер и достал сетевую плату. Соединил eth0 компьютера с eth0 ноутбука. Включил, с чистым /etc/conf.d/net на обоих компах и без net.eth0. Запустил на компьютере

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up

Пока не пингуется:

athlon64x2 zenitur # ping 192.168.1.3
PING 192.168.1.3 (192.168.1.3) 56(84) bytes of data.
From 192.168.1.2 icmp_seq=1 Destination Host Unreachable
From 192.168.1.2 icmp_seq=2 Destination Host Unreachable
From 192.168.1.2 icmp_seq=3 Destination Host Unreachable
From 192.168.1.2 icmp_seq=5 Destination Host Unreachable
From 192.168.1.2 icmp_seq=6 Destination Host Unreachable
From 192.168.1.2 icmp_seq=7 Destination Host Unreachable
^C
--- 192.168.1.3 ping statistics ---
8 packets transmitted, 0 received, +6 errors, 100% packet loss, time 7003ms
pipe 3
athlon64x2 zenitur #

Ах да, я же не перезагружал ноутбук. Сделал там:

ifconfig eth0 192.168.1.3 netmask 255.255.255.0 down
ifconfig eth0 192.168.1.3 netmask 255.255.255.0 up

И всё запинговалось.

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

Вроде документация понятная. Ты мешаешь разные методы управления. Через ifconfig ты вручную конфигурируешь интерфейс, но как раз для этого и есть conf.d/net. Если конкретно, то эта строка

config_eth1="192.168.1.1 netmask 255.255.255.0 brd 192.168.1.255"

говорит, что при запуске симлинка net.eth1 будет поднят интерфейс eth1 с IP-адресом 192.168.1.1, маской подсети 255.255.255.0, при этом интерфейс будет широковещательным (сам толком не знаю, что це есть, но это для нормальной работы серва нужно)

На других компах можно до настройки dnsmasq настройку интерфейса лучше делать такую (IP у каждого свой, естественно):

config_eth0="192.168.1.2 netmask 255.255.255.0"
или
config_eth0="192.168.1.2/24"
А после настройки dnsmasq на сервере:
config_eth0="dhcp"
Либо можно conf.d/net оставить пустым. По умолчанию будет так же использован dhcp.

Так что для начала попробуй просто нормально настроить локальную сеть и раздать адреса машинам, чтобы они друг-друга видели и пинги ходили.

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