На главную...

Опыт подключения интернета (Коламбия Волгоград) к CentOS 5.X.

Для нормального функционирования интернета, необходим пакет xl2tpd. rpm пакет для CentOS я не нашел, а посему пришлось компилировать из исходников. Сначала нужно установить пакет libpcap-devel

yum install libpcap-devel
или любым другим способом (rpm -i libpcap-devel-0.9.4-15.el5.i386.rpm)

Скачанный свежий пакет с сайта www.xelerance.com/services/software/xl2tpd/, распаковываем в удобное место
tar -xvzf xl2tpd-1.3.0.tar.gz
cd ./xl2tpd-1.3.0
make
make install
Создаем скрипт запуска xl2tpd:
#!/bin/sh
#
# xl2tpd        This shell script takes care of starting and stopping l2tpd.
#
# chkconfig: - 80 30
# description:  Layer 2 Tunnelling Protocol Daemon (RFC 2661)
#
# processname:  /usr/sbin/xl2tpd
# config:       /etc/xl2tpd/xl2tpd.conf
# pidfile:      /var/run/xl2tpd.pid

### BEGIN INIT INFO
# Provides: xl2tpd
# Required-Start: $local_fs $network $syslog
# Required-Stop: $local_fs $network $syslog
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: start|stop|status|restart|try-restart|reload|force-reload xl2tpd server
# Description: control xl2tpd server
### END INIT INFO

#Servicename
SERVICE=xl2tpd

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

if [ ${NETWORKING} = "no" ]
then
        exit 0
fi

[ -x /usr/local/sbin/$SERVICE ] || exit 0

RETVAL=0

start() {
        echo -n "Starting $SERVICE: "
        if [ ! -d /var/run/xl2tpd ]
        then
                mkdir /var/run/xl2tpd
        fi
        daemon /usr/local/sbin/$SERVICE
        RETVAL=$?
        echo 
        if [ $RETVAL -eq 0 ];then
           touch /var/lock/subsys/$SERVICE
        else
           exit 7;
        fi
  return 0;
}

stop() {
        echo -n "Stopping $SERVICE: "
        killproc $SERVICE
        RETVAL=$?
        if [ $RETVAL -eq 0 ]; then
           rm -f /var/run/xl2tpd/$SERVICE
           rm -f /var/lock/subsys/$SERVICE
        fi
        echo
        return $RETVAL
}

restart() {
        stop
        start
}

# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        status $SERVICE
        RETVAL=$?
        ;;
  restart|reload)
        restart
        ;;
  condrestart)
        [ -f /var/lock/subsys/$SERVICE ] && restart || :
        ;;
  *)
        echo "Usage: $SERVICE {start|stop|status|restart|reload|condrestart}"
        exit 1
esac
Копируем его в /etc/rc.d/init.d
Включаем автозагрузку
chkconfig xl2tpd on
Добавляем в /etc/rc.d/rc.local маршруты:
route del -host 83.167.66.16
route add -host 83.167.66.16 gw ВАШ_ШЛЮЗ
route del default
route add default dev ppp0 
Создаем каталог /etc/xl2tpd
В нем создаем файл xl2tpd.conf:
[lac nextone]
tx bps = 100000000
lns = l2tp.coltel.ru
redial = yes
redial timeout = 30
require chap = yes
require authentication = no
name = ВАШ_ЛОГИН
ppp debug = yes
pppoptfile = /etc/ppp/options.l2tp
require pap = no
autodial = yes
В /etc/ppp создаем файл options.l2tpd:
lock
noauth
nobsdcomp
nodeflate
nopcomp
noaccomp
nomppe
refuse-eap
refuse-pap
mru 1500
mtu 1500
name ВАШ_ЛОГИН
remotename nextone
ipparam nextone
connect /bin/true
nopersist
maxfail 999
defaultroute
unit 0
В файл /etc/ppp/chap-secrets добавляем строку
ВАШ_ЛОГИН nextone ВАШ_ПАРОЛЬ *
Создаем каталог /var/run/xl2tpd и даем разрешение в него писать.
Можно использовать.
Раздать интернет с помощью NAT:
### открыть в NAT
/sbin/iptables -A FORWARD -d 192.168.0.0/24 -i ppp+ -j ACCEPT
/sbin/iptables -t mangle -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
/sbin/iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE
/sbin/iptables -A FORWARD -s 192.168.0.198 -o ppp+ -j ACCEPT	# Клиент
/sbin/iptables -A FORWARD -s 192.168.0.200 -o ppp+ -j ACCEPT	# Клиент

На главную...