adsl club

Справочник

Форум

Программы

Фильмы

Ресурсы

Файлообмен

Хостинг

Ростелеком
 
Настройка ADSL-роутера под Linux

Основы настройки ADSL под Linux

 Disclaimer
Вся информация предоставляется AS IS в надежде, что она кому-то будет полезной, однако автор не несет никакой ответственности ни за что :).
1. Выбор модема
Итак, в первую очередь следует обратить внимание на выбор ADSL-модема. В случае использования Linux имеет смысл купить Ethernet-модем . Это вовсе не означает, что невозможно заставить USB-модем работать, но для этого потребуются дополнительные усилия (известно, что модемы на чипах Connexant AccessRunner и Alcatel Speedtouch работают, если извлечь из соответствующего виндового драйвера firmware). С Ethernet-модемами никаких дополнительных проблем возникнуть не должно (сам автор использует D-link 500T и вполне доволен)
2. Настройка модема и сетевого интерфейса (режим роутера)
На данном этапе считается, что сетевая карта, к которой подключен модем, была успешно обнаружена ядром и работает. Здесь и далее будем обозначать ее как eth0, хотя возможны и другие варианты, если эта карта не является единственной или ее имя меняется к помощью udev или ifrename. Далее возможны 2 варианта развития событий
  1. eth0 отконфигурирован для использования DHCP и получил адрес от модема. В этом случае вывод ifconfig eth0 должен выглядеть примерно так:
    $ /sbin/ifconfig eth0
    eth0 Link encap:Ethernet HWaddr 00:11:22:33:44:55
    inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    Обратите внимание на слово UP, которое указывает на то, что интерфейс находится в рабочем состоянии. Адрес (192.168.1.2) может быть иным, в зависимости от конфигурации модема, чаще всего это адрес из подсети 192.168.1/24. Также имеет смысл убедиться в том, что модем является гейтом по умолчанию:
    $ netstat -rn
    Kernel IP routing table
    Destination Gateway Genmask Flags MSS Window irtt Iface
    192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
    127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
    0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
    и в resolv.conf написаны правильные адреса DNS:
    $ cat /etc/resolv.conf
    nameserver 217.70.120.18
    nameserver 217.70.96.34
  2. eth0 использует статический IP-адрес. В этом случае модем не выдает маршруты и адрес, все это необходимо настроить вручную:
    # ifconfig eth0 inet 192.168.1.2 netmask 255.255.255.0
    # route add default gw 192.168.1.1
    # cat > /etc/resolv.conf << EOF
    > nameserver 217.70.120.18
    > nameserver 217.70.96.34
    > EOF
    #
    Внимание: данная конфигурация сохранится до перезагрузки. Чтобы настройки оставались после перезагрузки, необходимо изменить определенные файлы в /etc. В различных дистрибутивах настройки хранятся в разных местах (Debian: /etc/network/interfaces, man interfaces; Slackware: /etc/rc.d/rc.inet1.conf; пользователи FC, SUSE и Mandriva могут воспользоваться GUI конфигураторами, входящими в состав дистрибутивов или посмотреть содержимое /etc/network). Следует обратить внимание на адрес гейта по умолчанию, который является адресом модема: различные модемы могут иметь различные предустановленные адреса, о чем можно узнать из руководства. Для D-Link 500T предустановлен адрес 192.168.1.1
На этом этапе модем должен быть доступен. Основные шаги по настройке модема описаны здесь
3. Настройка Firewall-а
К сожалению, iptables, который используется в современных ядрах для настройки firewall-a, неподготовленного пользователя может повергнуть в ужас своим чудесным консольным интерфейсом. Дабы не слишком шокировать новичков, было написано множество фронтэндов, как консольных (filehol, shorewall), которые упрощают синтаксис iptables, так и GUI (kmyfirewall et al), упрощающих весь процесс конфигурации. FC, Mandriva и SUSE содержат необходимые утилиты в своих GUI-конфигураторах. На мой взгляд, для обычного домашнего использования вполне достаточно следующих правил:
# iptables -F
# iptables -P INPUT DROP
# iptables -P FORWARD DROP
# iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -i lo -j ACCEPT
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
которые разрешают все исходящие соединения и запрещают все входящие кроме уже установленных. Конечно, любителям P2P и удаленного доступа придется добавить еще несколько правил. При отсутствии явных противопоказаний, стоит воспользоваться firewall-ом, встроенным в модем.


(c) BlackMamba