BASH Programming - Введение

       

Пример скрипта /etc/ppp/ip-up


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

______________________________________________________________________ #!/bin/bash # # Скрипт, выполняющий при необходимости задачи маршрутизации для pppd # Только связь с Newman требует такой обработки. # # Когда ppp связь установлена, этот скрипт вызывается со следующими # параметрами # $1 имя интерфейса, используемое pppd (напр. ppp3) # $2 имя устройства tty # $3 скорость устройства tty # $4 локальный IP адрес для интерфейса # $5 удаленный IP адрес # $6 параметр, указанный опцией 'ipparam' в pppd # case "$5" in # Обработка маршрутизации для сервера Newman Campus 202.12.126.1) /sbin/route add -net 202.12.126.0 gw 202.12.126.1 # and flush the mail queue to get their email there asap! /usr/sbin/sendmail -q & ;; 139.130.177.2) # Наше Internet соединение # когда вязь будет установлена, запустить сервер времни и синхронизировать с # миром. Предполагается, что он еще не запущен if [ ! -f /var/lock/subsys/xntpd ]; then /etc/rc.d/init.d/xntpd.init start & fi # Запуск сервера новостей (если еще не запущен) if [ ! -f /var/lock/subsys/news ]; then /etc/rc.d/init.d/news start & fi ;; 203.18.8.104) # Скачать почту на мою домашнюю машину при установлении связи # Маршрутизция не требуется, так как мой домашний Ethernet обрабатывается IP # masquerade и proxyarp маршрутизацией. /usr/sbin/sendmail -q & ;; *) esac exit 0 ______________________________________________________________________

В результате поднятия ppp линка с нашим университетским городком Newman и выполнения этого сценария, мы получаем таблицы маршрутизации со следующими записями (эта машина явялется также нашим общим PPP сервером, и обрабатывает нашу связь с Интернет). Я разнообразил комментарии в выводе, чтобы помочь объяснить, чем является каждая запись):

______________________________________________________________________ [root@kepler /root]# route -n Kernel routing table Destination Gateway Genmask Flags MSS Window Use Iface # HOST маршрут на наш удаленный шлюз в Интернет 139.130.177.2 * 255.255.255.255 UH 1500 0 134 ppp4 # HOST маршрут на наш Newman сервер студенческого городка 202.12.126.1 * 255.255.255.255 UH 1500 0 82 ppp5 # HOST маршрут на мой домашний ethernet 203.18.8.104 * 255.255.255.255 UH 1500 0 74 ppp3 # две наши основные коммутируемые PPP линии 203.18.8.64 * 255.255.255.255 UH 552 0 0 ppp2 203.18.8.62 * 255.255.255.255 UH 552 0 1 ppp1 # специальный сетевой маршрут в Newman LAN студенческого городка 202.12.126.0 202.12.126.1 255.255.255.0 UG 1500 0 0 ppp5 # маршрут в наш локальный Ethernet (суперсеть из двух сетей класса C) 203.18.8.0 * 255.255.254.0 U 1500 0 1683 eth0 # маршрут в устройство loop back 127.0.0.0 * 255.0.0.0 U 3584 0 483 lo # маршрут по умолчанию в Internet default 139.130.177.2 * UG 1500 0 3633 ppp4 ______________________________________________________________________



Содержание раздела