pppoe

Настройка pppoe соединеня на компьютере (byfly)

Настройки приведены для дистрибутва ALT Linux server-light

aDSL модем настраиваем бриджем, т.к. в режиме роутера он весьма тормозит при многочисленных сессиях.

В данном случае модем включен в eth1, а eth0 - это локалка.

/etc/net/iface/ppp1/options

ONBOOT=yes
PPPTYPE=pppoe
HOST=eth1
PPPOE_EXTRA_OPTIONS="-T 80"

/etc/net/iface/ppp1/pppoptions

noipdefault
noauth
default-asyncmap
hide-password
mtu 1492
mru 1492
noaccomp
noccp
nobsdcomp
nodeflate
nopcomp
novj
novjccomp
user 2140-1111111-11@beltel.by
password you-password
lcp-echo-interval 20
lcp-echo-failure 3
nomppe
maxfail 3
persist

Что-бы интерфейс автоматически поднимался можно выставить maxfail 0, но в этом случае при загрузке системы, можно поймать ситуацию, когда интерфейс не поднимается и система дальше на загружается. Поэтому maxfail мы ставим 3, а в случае падения интерфейса в /etc/crontab добавляем строку:

* * * * * root [ -s /var/run/ppp1.pid ] || /sbin/ifup ppp1

Если требуется что бы компьютер раздавал интернет другим пользователям, то включаем форвардинг, для этого правим файл /etc/net/sysctl.conf

ставим net.ipv4.ip_forward = 1

Собственно настройки iptables, что бы пропустить пользователей через NAT

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp1 -j MASQUERADE

А так же немного прикроемся

iptables -A INPUT -i ppp1 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable

И обязательно правим MTU

iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

сохраняем это все дело командой iptables-save > /etc/sysconfig/iptables

В директорию /etc/ppp/ip-up.d добавляем скрипт для перезапуска правил iptables, он будет запускаться, когда будет установлено pppoe соединение.

#!/bin/sh
/sbin/service iptables start

Перезапустим интерфейсы: service network restart

Проверяем.

Все, теперь можно указывать наш сервер как default gateway у клиентов и радоваться.