Пожалуйста срочно, горю!!!!!!!!!!!!!!!
Вопрос в следующем. Имеется две сети 192.168.1.0 и 192.168.2.0 и два канала интернет, на машине с Linux RH Enterprise 3 установлены две сетевые карты с IP и шлюзами обоих сетей, также установлен SQUID. Нужно настроить Squid для работы с двумя каналами тоесть каждая из сетей работает со своим каналом. Есть идея запустить Squid с двумя процессами тоесть для конфигурационных файлов /etc/squid/squid1.conf /etc/squid/squid2.conf для процессов /var/run/squid1.pid /var/runsquid2.pid для логов /var/log/squid1 /var/log/squid2 и для кеша /var/spool/squid1 /var/spool/squid2. Конфигурационные файлы настраиваю каждый на свою сеть соответственно тоесть пишу ACL и в tcp_outgoing_address конфигурационных файлов прописываю IP соответствующих интерфейсов. По моему это должно работать если правильно написать или переписать скрипт в /etc/rc.d/init.d/squid но как это сделать не селён. Если кто знает подскажите как или исправте мой родной скрипт /etc/rc.d/init.d/squid. Заранее благодарен. Ниже привожу родной скрипт
___________________________________________________________________________________________
#!/bin/bash
# squid This shell script takes care of starting and stopping
# Squid Internet Object Cache
#
# chkconfig: — 90 25
# description: Squid — Internet Object Cache. Internet object caching is \
# a way to store requested Internet objects (i.e., data available \
# via the HTTP, FTP, and gopher protocols) on a system closer to the \
# requesting site than to the source. Web browsers can then use the \
# local Squid cache as a proxy HTTP server, reducing access time as \
# well as bandwidth consumption.
# pidfile: /var/run/squid.pid
# config: /etc/squid/squid.conf
PATH=/usr/bin:/sbin:/bin:/usr/sbin
export PATH
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# check if the squid conf file is present
[ -f /etc/squid/squid.conf ] || exit 0
if [ -f /etc/sysconfig/squid ]; then
. /etc/sysconfig/squid
fi
# don’t raise an error if the config file is incomplete
# set defaults instead:
SQUID_OPTS=${SQUID_OPTS:-«-D»}
SQUID_PIDFILE_TIMEOUT=${SQUID_PIDFILE_TIMEOUT:-20}
SQUID_SHUTDOWN_TIMEOUT=${SQUID_SHUTDOWN_TIMEOUT:-100}
# determine the name of the squid binary
[ -f /usr/sbin/squid ] && SQUID=squid
[ -z "$SQUID" ] && exit 0
prog=«$SQUID»
# determine which one is the cache_swap directory
CACHE_SWAP=`sed -e ’s/#.*//g' /etc/squid/squid.conf | \
grep cache_dir | awk '{ print $3 }’`
[ -z "$CACHE_SWAP" ] && CACHE_SWAP=/var/spool/squid
RETVAL=0
start() {
for adir in $CACHE_SWAP; do
if [ ! -d $adir/00 ]; then
echo -n «init_cache_dir $adir… »
$SQUID -z -F -D 2>/dev/null
fi
done
echo -n $"Starting $prog: »
$SQUID $SQUID_OPTS 2> /dev/null
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
timeout=0;
while : ; do
[ ! -f /var/run/squid.pid ] || break
if [ $timeout -ge $SQUID_PIDFILE_TIMEOUT ]; then
RETVAL=1
break
fi
sleep 1 && echo -n «.»
timeout=$((timeout+1))
done
fi
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$SQUID
[ $RETVAL -eq 0 ] && echo_success
[ $RETVAL -ne 0 ] && echo_failure
echo
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: »
$SQUID -k check >/dev/null 2>&1
RETVAL=$?
if [ $RETVAL -eq 0 ] ; then
$SQUID -k shutdown &
rm -f /var/lock/subsys/$SQUID
timeout=0
while : ; do
[ -f /var/run/squid.pid ] || break
if [ $timeout -ge $SQUID_SHUTDOWN_TIMEOUT ]; then
echo
return 1
fi
sleep 2 && echo -n «.»
timeout=$((timeout+2))
done
echo_success
echo
else
echo_failure
echo
fi
return $RETVAL
}
reload() {
$SQUID $SQUID_OPTS -k reconfigure
}
restart() {
stop
start
}
condrestart() {
[ -e /var/lock/subsys/squid ] && restart || :
}
rhstatus() {
status $SQUID
$SQUID -k check
}
probe() {
return 0
}
case «$1» in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
condrestart)
condrestart
;;
status)
rhstatus
;;
probe)
exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|reload|restart|condrestart}»
exit 1
esac
exit $?
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Во ты заморочился !!!
А что acl не помогает???
Я имею в виду написать 2 aclя в одном ip одной сети указать в другом другой… и нахрен тут не нужны два конфига