Friday, September 10, 2010

имена, продолжение

http://www.monstropedia.org - гораздо лучше.

имена

следующий сервер-компьютер назову jinni.
А вообще имён много вот тут, например: http://jrrtlib.narod.ru/articles/sapk2.html
Нашлось по запросу "мусульманская демонология"

Monday, September 6, 2010

cisco vpn и пляски с бубном вокруг него.

История следующая: сначала были 2 цыски. 871-к9. Они соединялись ipsec-vpn между собой и, кроме того, каждая позволяла подключаться к себе родным или не очень родным cisco vpn клиентом.
Потом одна из них каза болду, приняла ислам. Вместо неё по нищебродски поставлен роутер на OWL.
vpnc для него - тема отдельных плясок, но, когда-нибудь мы сделаем свой репозиторий пакетов для owl, и просто выложим его туда на радость всему немногочисленному комьюнити. Если не забудем. А сейчас обнаружилась следующая особенность cisco vpn, довольно неприятная. Так как по смерти одной из цысок решено было отказаться от статического ipsec, да и провайдеры зачастую не балуют реальными адресами - на owl-овом роутере работал vpnc клиент. А особенность, о которой я пытаюсь рассказать, следующая: через какое-то время клиент отваливается. Примерно раз в час. Соответственно - вопли, сопли и жалобы начальству, что, дескать, не работает ничего.

Для решения этой проблемы было вкурено немало всякой нужной и не очень информации, и вот он, заветный костыль: скрипт, который проверяет наличие соответствующего интерфейса и перезапускает vpn. Учитывается также такая гадская особенность, при которой туннельный интерфейс присутствует, а пакеты между сетями не ходят.

8<--------------------------------------------------------------------------------------------

#! /bin/bash
IP=192.168.0.2 # some IP inside VPN
count=5 # number of ping

while [ 1 ]
do
IFC=`ifconfig | grep tun`
STTS=${IFC:0:3}
if [ "$STTS" = "tun" ]; then
echo "tun interface present" # > /dev/null

# можно воспользоваться одним из двух способов пропинговать сеть внутри cisco, оба работают,
# первый способ закомментирован
# # Begin ping testing v.0.1
# result=$(ping -c ${count} ${IP} | tail -2 | head -1 | awk '{print $4}')
# echo $result "of" $count
# if [ $result -eq 0 ]; then
# echo "Fuck, ping is not working"
# vpnc-disconnect
# vpnc
# else
# echo "Good, ping working"
# fi
# # End ping testing v.0.1

## Begin ping testing v.0.2
if ping -c $IP $count &> /dev/null ; then
echo "ping test successful"
else
vpnc
sh -c "echo tun interface not found. Reconnecting... `date +'%Y.%m.%d %H:%M:%S'`"
fi
sleep 10
done
exit 0

8<--------------------------------------------------------------------------------------------

Рассмотрим проблему с другой стороны. Регулярность отваливания vpn наводит на определённые мысли, так? Что происходит со стороны cisco накопал товарисчъ Pietro.

http://www.cisco.com/en/US/docs/ios/12_2t/12_2t15/feature/guide/ftsaidle.html
http://www.dslreports.com/forum/remark,9127567

Это не бага, это как раз фича. Через определённое время cisco перегенерирует ключи IpSec. "Changes global lifetime values used when negotiating IPsec SAs." Или через какой-то объём трафика, прокачанный через vpn.
коротко: наличие строки
8<--------------------------------------------------------------------------------------------
crypto ipsec security-association lifetime seconds 86400
8<--------------------------------------------------------------------------------------------
в конфигурационном файле cisco регламентирует частоту, с которой это происходит. В данном примере - раз в сутки.

или можно так:
8<--------------------------------------------------------------------------------------------
crypto ipsec security-association lifetime kilobytes <2560-536870912>
8<--------------------------------------------------------------------------------------------

как-то так.

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