Форум портала г. Королёва :: Просмотр темы - peering rules generator
 ФотоальбомФотоальбом FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация   Доска объявленийДоска объявлений    ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
peering rules generator
Начать новую тему   Ответить на тему    Список форумов Форум портала г. Королёва -> Для тех, кто уже подключился
Предыдущая тема :: Следующая тема  
Автор Сообщение
solar



Зарегистрирован: 21.10.2003
Сообщения: 144
Откуда: solar at solar dot net dot ru

СообщениеДобавлено: 12 Июн 2009, 00:15    Заголовок сообщения: peering rules generator Ответить с цитатой

curl -s http://web-korolev.ru/network/peeringnet|\
grep -e '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\} [0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'|\
awk '{ORS=""}{print "add "$1; system("whatmask " "\""$2"\"|grep CIDR|cut -f 4 -d \" \""); \
print "#via 1.1.1.1 dev eth0 src 2.2.2.2\n"; print "-A POSTROUTING -s 172.16.16.0/24 -d " $1"/"$2 " -o eth0 -j SNAT --to-source 2.2.2.2\n" \
>> "peering.iptables"}'|sed -e :a -e '$!N;s/\n#/ /;ta' -e 'P;D' >> peering.ipv4route


[solar@anger ~]$ head -1 peering.{ipv4route,iptables}
==> peering.ipv4route <==
add 10.0.0.0/8 via 1.1.1.1 dev eth0 src 2.2.2.2

==> peering.iptables <==
-A POSTROUTING -s 172.16.16.0/24 -d 10.0.0.0/255.0.0.0 -o eth0 -j SNAT --to-source 2.2.2.2


Вопрос знатокам awk`a -- можно ли по-изящнее сделать склеивание строк, обойтись без седа?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум портала г. Королёва -> Для тех, кто уже подключился Часовой пояс: GMT + 4
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах