Показаны сообщения с ярлыком network. Показать все сообщения
Показаны сообщения с ярлыком network. Показать все сообщения

понедельник, 19 ноября 2018 г.

Использование SystemTap для расшифровки локального HTTPS-трафика

В состав выпуска системы динамической трассировки SystemTap 3.3 добавлен
скрипт capture_ssl_master_secrets.stp с  примером захвата сессионных ключей
SSL/TLS  от приложений, использующих gnutls (libgnutls.so) или openssl
(libssl.so), которые могут использоваться для организации расшифровки
перехваченного трафика.

Пример использования в Debian 9:

Включаем SystemTap:

   sudo stap-prep

Устанавливаем отладочные версии библиотек:

   sudo apt-get install libgnutls30-dbgsym libssl1.0.2-dbgsym libssl1.1-dbgsym libssl-dev

Запускаем перехват ключей, генерируемых при вызове обработчиков
tls1_generate_master_secret и generate_normal_master в libssl.so и libgnutls.so:

   ./capture_ssl_master_secrets.stp | tee keylog.txt &

Включаем запись дампа трафика в формате pcap:

   sudo tcpdump -s0 -w traffic.pcap -U port 443 &

Формируем тестовые запросы к защищённым сайтам:

   curl https://www.ssllabs.com/curl_secret
   wget https://www.ssllabs.com/wget_secret
   echo "GET /sclient_secret HTTP/1.1\nHost: www.ssllabs.com\n\n" | openssl s_client -connect www.ssllabs.com:443 -servername www.ssllabs.com

Смотрим, какие ключи удалось захватить:
   cat keylog.txt

   # 1509378583063892 process("/usr/lib/x86_64-linux-gnu/libssl.so.1.0.2").function("tls1_generate_master_secret@./ssl/t1_enc.c:1134").return curl (24745)
   CLIENT_RANDOM 92...69000
   # 1509378587558501 process("/usr/lib/x86_64-linux-gnu/libgnutls.so.30.13.1").function("generate_normal_master@./lib/kx.c:131").return wget (24755)
   CLIENT_RANDOM 59f...28a 560...67c8
   # 1509378592611222 process("/usr/lib/x86_64-linux-gnu/libssl.so.1.1").function("tls1_generate_master_secret@../ssl/t1_enc.c:463").return openssl (24757)
   CLIENT_RANDOM aa2...fc93 741...127a

Расшифровываем дамп трафика, используя захваченные ключи:

   $ tshark -o ssl.keylog_file:keylog.txt -d tcp.port==443,ssl -x -r traffic.pcap -V | grep -A1 'Decrypted SSL data' |grep "GET "

   0000  47 45 54 20 2f 63 75 72 6c 5f 73 65 63 72 65 74   GET /curl_secret
   0000  47 45 54 20 2f 77 67 65 74 5f 73 65 63 72 65 74   GET /wget_secret
   0000  47 45 54 20 2f 73 63 6c 69 65 6e 74 5f 73 65 63   GET /sclient_sec



оригинал

четверг, 5 октября 2017 г.

Скрипт для забора конфигураций с Huawei

#!/bin/sh

#Start script w/o errors output:
#bash script.sh 2>/dev/null

# CFG_FILE format (remove '#' at used line):

##Comment line
##Hostname Host_Address Login Password SRC_file
# host1-ex-net 10.1.1.1 login1 passwd1 vrpcfg.zip
# host1-ex-net 10.2.2.2 login2 passwd2 vrpcfg.cfg


# Define Variables
#HOME='/home/rmavrichev/Desktop/TEST-FTP'
HOME=`pwd`
DATE=`date +%Y'-'%m'-'%d`
TIME=`date +%H'-'%M'-'%S`
CFG_FILE=`printf $HOME/host_list.txt`
LOG_FILE=`printf $HOME/script_log.log`

# Make directory of current date, make that directory local
mkdir $HOME/$DATE
cd $HOME/$DATE

#Define loop, get current host address

for HOST in `cat $CFG_FILE | grep -v '#' | awk -F" " '{print $2}'`
do

# get current variables: Hostname/login/passw/src_file

LINE=`cat $CFG_FILE | grep $HOST`
HOSTNAME=`echo $LINE | awk -F" " '{print $1}'`
USER=`echo $LINE | awk -F" " '{print $3}'`
PASSWD=`echo $LINE | awk -F" " '{print $4}'`
SRC_FILE=`echo $LINE | awk -F" " '{print $5}'`
DST_FILE=`printf $SRC_FILE`

#TEST Variables
#echo 
#echo $LINE
#echo $HOSTNAME
#echo $HOST
#echo $USER
#echo $PASSWD
#echo $SRC_FILE

# Connect to FTP HOST and get File
/usr/bin/ftp -ivn $HOST <>$LOG_FILE 2>&1
quote USER $USER
quote PASS $PASSWD
bin
get $SRC_FILE $TIME-$HOSTNAME-$DST_FILE
quit
END_SCRIPT

done
exit 0



взято отсюда

четверг, 12 января 2017 г.

Как администратору AS1 убрать нежелательный трафик, который приходит напрямую от AS3?


среда, 3 февраля 2016 г.

Instructions on how to monitor onions w/ Nagios

Requirements

Working Nagios setup and the following packages.
  • tor / torsocks
    • For Debian, follow Tor Project Debian Instructions summarized here:
      • echo deb http://deb.torproject.org/torproject.org jessie main > /etc/apt/sources.list.d/tor.list
      • echo deb-src http://deb.torproject.org/torproject.org jessie main >> /etc/apt/sources.list.d/tor.list
      • gpg --keyserver keys.gnupg.net --recv 886DDD89
      • gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -
      • apt-get update
      • apt-get install tor torsocks deb.torproject.org-keyring

Nagios setup

  • Add the following new command to your Nagios configuration to monitor various types of onions:
define command {
    command_name        check_http_tor
    command_line        /usr/bin/torsocks /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' -I  '$HOSTADDRESS$' '$ARG1$'
    }
define command {
    command_name        check_ssh_tor
    command_line        /usr/bin/torsocks /usr/lib/nagios/plugins/check_ssh -H '$HOSTADDRESS$' '$ARG1$'
    }

define command {
    command_name        check_tcp_tor
    command_line        /usr/bin/torsocks /usr/lib/nagios/plugins/check_tcp -H '$HOSTADDRESS$' '$ARG1$'
    }
  • Apply the service check to a host:
define host {
    use                 generic-host            ; Name of host template to use
    host_name           samplea8s7df23jh7.onion
    alias               Sample Fake Onion
    address             samplea8s7df23jh7.onion
    check_command       check_http_tor!-p 8080
}


define service {
    use                 generic-service     ; name of template to use
    host_name           samplea8s7df23jh7.onion
    service_description SSH
    check_command       check_ssh_tor!-p 8492
}

define service {
    use                 generic-service     ; name of template to use
    host_name           samplea8s7df23jh7.onion
    service_description XMPP
    check_command       check_tcp_tor!-p 5222
}

Источник https://github.com/coldhakca/monion

вторник, 12 января 2016 г.

проверка и автоматическая установка туннеля VPNC

root@RPi2-mobile:~# crontab -l
# Edit this file to introduce tasks to be run by cron.
* * * * *  /usr/local/sbin/vpnc-keepalive 10.X.X.1 10.Y.Y.1 &

root@RPi2-mobile:~# cat /usr/local/sbin/vpnc-keepalive
#!/bin/sh
#
# Restart VPNC if both of the specified hosts on the command line are unavailable

if ! [ $(ping -q -c 1 ${1} 2>&1 | grep "1 packets received" | sed "s/.*\(1\) packets received.*/\1/") ] ||
   ! [ $(ping -q -c 1 ${2} 2>&1 | grep "1 packets received" | sed "s/.*\(1\) packets received.*/\1/") ]; then
    echo Not alive $1 or $2, restarting VPNC
    /etc/init.d/vpnc restart
else
echo Alive $1 or $2
fi

вторник, 18 июня 2013 г.

Inter-AS Option C

 

Inter-AS Option C

Схема на которой мы рассмотрим технологию взаимодействия различных AS между собой.

Необходимо, чтобы была связность между VPN A из AS 100 и VPN A из AS 200.
Между  CE-1 и PE-1 устанавливаем eBGP сессию с передачей MPLS метки. Данная сессия называется IPv4+Labeled unicast сессией.
В этой сессии мы будем передавать только лупбеки необходимых нам коробок это 10.5.0.2, 10.5.0.1, 10.10.250.250, 10.11.250.250, а принимать будем 10.1.1.1, 10.1.1.2.
После установки labeled сессии с CE-1 и принятия необходимых лупов, PE-1 передает эти  лупбеки по аналогичной сессии RR. 
Если все проходит правильно, то от RR должен проходить пинг до CE-2 с указанием адреса source,  в данном случае это 10.10.250.250 или 10.11.250.250.
Теперь необходимо установить VPNv4 сессию между CE-1 и обеими RR. 
Учтите, что на RR надо установить опция multihop, которая позволит установить сессию с CE-1 через n-ое количество хопов, чаще всего ставят 255.
В VPNv4 сессии будет передаваться маршрутная информация VPN A т.е. после установки VPNv4 сессии с CE-1 RR в AS 100 раздаст полученную информацию своим PE, в данном случае PE-2 где терминируется VPN A.
Теперь можно будет проверить связность между 172.16.0.0./24 и 192.168.0.0/24.

На интерфейсах со стороны CE-1 и со стороны PE-1 надо обязательно выполнить команду mpls bgp forwarding создающая своего рода BGP туннель.

Пример конфигурации PE-1:

interface GigabitEthernet0/1
 description CE-1<->PE-1 Option C
 mtu 1532
 ip address 1.1.1.1 255.255.255.252
 mpls bgp forwarding

router bgp 100
 bgp router-id 10.5.0.1
 bgp log-neighbor-changes
 neighbor RR-VPNv4 peer-group
 neighbor RR-VPNv4 remote-as 100
 neighbor RR-VPNv4 update-source Loopback0
 neighbor 1.1.1.2 remote-as 200
 neighbor 1.1.1.2 description CE-1<->PE-1
 neighbor 1.1.1.2 timers 60 180
 neighbor 10.10.250.250 peer-group RR-VPNv4
 neighbor 10.11.250.250 peer-group RR-VPNv4

 address-family ipv4
  no synchronization
  redistribute isis IGP level-2 route-map ISIS-to-BGP
  neighbor RR-VPNv4 send-community both
  neighbor RR-VPNv4 next-hop-self
  neighbor RR-VPNv4 route-map TO-RR-LABELED-IPv4 out
  neighbor RR-VPNv4 send-label
  neighbor 1.1.1.2 activate
  neighbor 1.1.1.2 route-map FROM-CE-ASBR in
  neighbor 1.1.1.2 route-map TO-CE-ASBR out
  neighbor 1.1.1.2 send-label
  neighbor 10.10.250.250 activate
  neighbor 10.11.250.250 activate
  no auto-summary
 exit-address-family

 address-family vpnv4
  neighbor RR-VPNv4 send-community both
  neighbor 10.10.250.250 activate
  neighbor 10.11.250.250 activate
 exit-address-family


route-map TO-RR-LABELED-IPv4 permit 10
 match ip address prefix-list CE-VPNv4-LOOPBACKS
 set mpls-label

route-map FROM-CE-ASBR permit 10
 match ip address prefix-list CE-VPNv4-LOOPBACKS
 set community <ASN>:<Number>

route-map TO-CE-ASBR permit 10
 match ip address prefix-list LOOPBACKS
 set mpls-label

route-map ISIS-to-BGP permit 10
 match ip address prefix-list LOOPBACKS

ip prefix-list CE-VPNv4-LOOPBACKS seq 10 permit 10.1.1.1/32
ip prefix-list CE-VPNv4-LOOPBACKS seq 15 permit 10.1.1.2/32
ip prefix-list CE-VPNv4-LOOPBACKS seq 999 deny 0.0.0.0/0

ip prefix-list LOOPBACKS seq 10 permit 10.5.0.1/32
ip prefix-list LOOPBACKS seq 15 permit 10.5.0.2/32
ip prefix-list LOOPBACKS seq 20 permit 10.10.250.250/32
ip prefix-list LOOPBACKS seq 25 permit 10.11.250.250/32
ip prefix-list LOOPBACKS seq 999 deny 0.0.0.0/0



оригинал:http://alexvancasper.livejournal.com/2377.html

понедельник, 17 июня 2013 г.

МТС Huawei E392 LTE

Для ввода команд необходимо подключиться к
модему через Гиперерминал: На XP C:\Program Files\Windows NT\Hyperterminal (Модем должен быть отключён от интернета) Для Vista и Windows7 ее придется скачать
1. Запускаем терминал
2. Появляется окно "Описание подключения".В поле "Название" пишем что-нибудь в качестве названия соединения и нажимаем ОК.Если окошко не появилось автоматически, выбираем из меню Файл - Новое подключение.
3. В окне "Подключение" выбираем Подключаться через: Huawei .... и жмем ОК
4. В следующем окне "Подключение" нажимаем кнопку Изменить... и попадаем в окно "Свойства ваше_название_подключения"
5. На вкладке "Параметры" нажимаем Параметры ASCII -> Отображать введенные символы на экране, жмем ОК два раза.
6.Жмем Отмена
7.Вводим команду AT и нажать ENTER, от модема должно прийти в ответ "ОК"
8.Вводим команду какую нужно и опять жмём ENTER должно прийти "ОК". Всё.

AT^U2DIAG=0 (девайс в режиме только модем)
AT^U2DIAG=1 (девайс в режиме модем + CD-ROM)
AT^U2DIAG=255 (девайс в режиме модем + CD-ROM + Card Reader) - не поддерживается Huawei E1750
AT^U2DIAG=256 (девайс в режиме модем + Card Reader, можно использывать
как обычную флешку, отказавшись от установки драйверов модема)

Помогает при исчерпанных попытках ввода NCK кода
с клавиатуры компьютера.
AT^CARDLOCK=""

AT^SYSCFG=2,2,3fffffff,0,2 (включение 2G,3G)

Как активировать голос:
AT^CVOICE=? оно покажет состояние голоса
Затем вводим одну из команд
AT^CVOICE=0 включено
AT^U2DIAG=5 включено
AT^U2DIAG=276 включено
Одна из них должна подойти

6. Нажимаете ENTER
7. Затем нажимаете Disconnect и передергиваете модем. Можно вводить команды ещё так: В свойствах модема: Пуск-Панель управления-Телефон и модем-Модемы-Выбираете Ваш модем-Свойства-Доп. параметры связи-Доп. команды инициализации и прописываете нужную команду.

Так же команды можно вводить с помощью программы DC-Unlocker. Просто наберите АТ команду в окне лога и нажмите ENTER. Стоит отметить что модем после введения команды AT^U2DIAG=0 (девайс в режиме только модем) работает стабильнее и быстрее. Вот ещё одна хорошая программа от Александр С. Шокин My Huawei Terminal. Программа терминала для прямой работы с беспроводными модемами Huawei, а также (ограниченно) с любыми другими модемами. Как вводить этими программами смотрим здесь.

Если модем не принимает команду: AT^U2DIAG=255 (девайс в режиме модем + CD-ROM + Card Reader) что бывает очень часто, пробуем вводить: AT^U2DIAG=1 (девайс в режиме модем + CD-ROM) помогает

Еще полезная команда: AT+CFUN=1 перезагрузит модем с последующей перерегистрацией в сети оператора без передёргивания модема. Осторожней с командами AT^U2DIAG=4, AT^U2DIAG=5, AT^U2DIAG=6 они могут перевести ваш модем в режим "только сетевая карта". Если всё же модем переключился в режим сетевой карты и обратно не хочет, смотрим здесь.


Ещё AT команды для ввода кода

AT^CARDUNLOCK="nck md5 hash"  Сброс попыток к 10

AT^CARDLOCK="nck code"  Снятие блокировки

AT^CARDLOCK?  Проверить блокировку и количество попыток
в ответ модем выдаст
CARDLOCK: A,B,0
A ->  2- означает, что симлока нет, 1-если модем залочен
B ->  количество оставшихся попыток разблокировки. У нового модема = 10

Программа Huawei Calculator, которая по IMEI вычисляет
NCK и Flash коды (nck md5 hash), а так же NCK и Flash
коды в формате MD5


AT команды для преключения режимов в модемах с LTE, E392

Если для USB-модема вы хотите включить режим LTE Only (только LTE), отключив все остальные, необходимо через любую терминальную программу ввести следующую AT-команду:

AT^SYSCFGEX="00",3fffffff,2,4,7fffffffffffffff,,

В конце команды две запятые обязательны!

В указанной команде первое значение расшифровывается так:

00 - Автоматический режим, установлен по умолчанию (приоритеты в порядке очереди: 4G > 3G > 2G)
01 - GSM GPRS(2G)
02 - WCDMA(3G)
03 - LTE(4G)
99 - Оставить текущие настройки без изменений? AT команды для модемов Huawei E367, E352, E392, E353 и E171 с firmware 21.156.00.00.143

AT^SETPORT?
- Отображение текущей конфигурации

AT^GETPORTMODE
- Отображение в настоящее время активный режим

AT^SETPORT="A1,A2;1,2,3,7,A1,A2"
- Установить конфигурацию по умолчанию

AT^SETPORT="A1,A2;1,2,3,7"
- Отключить CD + SD

AT^SETPORT="A1,A2;1,2,3,A2"
- Отключает NDIS и CDROM - остаётся только модем и флешка

AT^SETPORT="A1,A2;1,2,3"
Только модем

AT^SETPORT="A1;1,2"
- Отключает вообще всё кроме модема и служебного интерфейса

AT^SETPORT="A1,A2;2,7"
- Отключить CD + SD + модем  установить в Win7
только NDIS режим

AT^SETPORT="A1;2,7"
- Компакт-диск + NDIS

AT^SETPORT="A1,A2;1,2,3,7,A1,A2,4,5,6,A,B,D,E"
То же сброс по умолчанию.

AT команды для Huawei E3276

AT^SETPORT="A1;10,12,13,14,16,A1,A2"
Включает все COM порты.

Установка по умолчанию
AT^SETPORT="A1,A2;12,16,A1,A2"


Источник: http://trustoff.ru/kak-vvesti-at-komandy-v-modem-cherez-hyperterminal#ixzz2W22T89Qq

понедельник, 3 июня 2013 г.

MPLS Traffic Engineering Automatic Bandwidth Adjustment for TE Tunnels

 Вкратце, это балансировка нагрузки по MPLS TE Tunnels.

Примерно так:
mpls traffic-eng tunnels
mpls traffic-eng auto-bw timers frequency 60 ! как часто собирать счетчики с interface Tunnel
!

interface Tunnel2
 description "LSP 1 CR1 to CR2"
 ip unnumbered Loopback0
 load-interval 30! желательно иметь для более точных данных
 tunnel destination 1.1.1.1
 tunnel mode mpls traffic-eng
 tunnel mpls traffic-eng autoroute announce
 tunnel mpls traffic-eng path-option 100 dynamic
 tunnel mpls traffic-eng record-route
 tunnel mpls traffic-eng fast-reroute node-protect
 tunnel mpls traffic-eng auto-bw frequency 600! Как часто проводить реоптимизацию
 tunnel mpls traffic-eng load-share 1! множитель для трафика, те если поставить 2 то сюда будет              !сыпаться в 2 раза больше трафика чем в 10002
!

interface Tunnel10002
 description "LSP 2 CR1 to CR2"
 ip unnumbered Loopback0
 load-interval 30
 tunnel destination 1.1.1.2
 tunnel mode mpls traffic-eng
 tunnel mpls traffic-eng autoroute announce
 tunnel mpls traffic-eng path-option 100 dynamic
 tunnel mpls traffic-eng record-route
 tunnel mpls traffic-eng fast-reroute node-protect
 tunnel mpls traffic-eng auto-bw frequency 600
 tunnel mpls traffic-eng load-share 1


и примерно через 10 минут, трафик ровно размажется по 2ум путям.

Ссылка на первоисточник

ps не забываем на интерфейсе(физическом) что-то типа этого:
ip rsvp bandwidth 1000000

пятница, 24 мая 2013 г.

RT Constrained Route Distribution


Данная фича называется RT Constrained Route Distribution. Она была представлена в 15.1(1)S.

Идея совершенно проста. По умолчанию RR отправит на PE все VPNv4 маршруты, т.е. даже маршруты тех VPN, которые не настроены на этой PE. PE получает их и далее выбирает только те, которые нужны. На это тратятся ресурсы. Если используется функционал RT CRD, то RR перед отправкой маршрутной информации на PE согласует список route-target, которые нужны на этой PE.

Настраивает очень просто. В BGP добавляется новая address-family rtfilter unicast (указанные нейборы в идеале должны повторять настройки address-family vpnv4 unicast):

Для PE:

ip vrf BLUE
 rd 3:3
 route-target export 1:100
 route-target import 1:100
!
router bgp 65000
 bgp log-neighbor-changes
 neighbor 192.168.2.2 remote-as 65000
 neighbor 192.168.2.2 update-source Loopback0
 no auto-summary
 !
 address-family vpnv4
  neighbor 192.168.2.2 activate
  neighbor 192.168.2.2 send-community extended
 exit-address-family
 !
 address-family rtfilter unicast
  neighbor 192.168.2.2 activate
  neighbor 192.168.2.2 send-community extended
 exit-address-family


Для RR:

router bgp 65000
 bgp log-neighbor-changes
 neighbor 192.168.6.6 remote-as 65000
 neighbor 192.168.6.6 update-source Loopback0
 !
 address-family vpnv4
  neighbor 192.168.6.6 activate
  neighbor 192.168.6.6 send-community extended
  neighbor 192.168.6.6 route-reflector-client
 exit-address-family
 !
 address-family rtfilter unicast
  neighbor 192.168.6.6 activate
  neighbor 192.168.6.6 send-community extended
  neighbor 192.168.6.6 route-reflector-client
  neighbor 192.168.6.6 default-originate
 exit-address-family


Команда default-originate добавляется в настройки RR автоматически и означает, что RR запрашивает у PE все ее RT. Также эту команду можно применить и на PE, если по каким-то причинам необходимо принять все RT.

Подробно тут: http://www.cisco.com/en/US/docs/ios-xml/ios/iproute_bgp/configuration/xe-3s/irg-rt-filter.html
или правильнее тут: http://tools.ietf.org/html/rfc4684

BGP Selective Route Download


BGP Selective Route Download — еще один функционал, крайне полезный при внедрении out of forwarding path route-reflector.
Важно, что этот функционал может быть использован только в случае, если RR не форвардит трафик.

Смысл такой: маршрутизатору, выполняющему роль RR и не стоящему на forwarding path, в RIB/FIB не нужны внешние по отношению к AS маршруты.
Для определения, какие маршруты инсталлируются в RIB/FIB, а какие нет, необходимо создать критерий выборки. Проще всего метить все локальные маршруты каким-нибудь community например при редистрибьюции connected и static.

Настройки ASBR (установка community):

router bgp 65510
 address-family ipv4 unicast
 redistribute connected route-map CONNECTED-TO-BGP
  redistribute static route-map STATIC-TO-BGP
!
route-map CONNECTED-TO-BGP permit 10
 set community 65510:1000
route-map STATIC-TO-BGP permit 10
 set community 65510:1000
!
Настройки RR:

ip community-list 100 permit 65510:1000
!
route-map BGP-TO-RIB permit 10
 match community 100
!
router bgp 65510
 address-family ipv4 unicast
 table-map BGP-TO-RIB filter

Выборочная инсталляция маршрутов в RIB/FIB на RR позволяет существенно сократить время сходимости BGP! Удивишься, но BGP будет сходиться несколько секунд.

понедельник, 20 мая 2013 г.

802.1Q


IEEE 802.1Q — открытый стандарт, который описывает процедуру тегирования трафика для передачи информации о принадлежности к VLAN. Так как 802.1Q не изменяет заголовки кадра (фрейма), то сетевые устройства, которые не поддерживают этот стандарт, могут передавать трафик без учёта его принадлежности к VLAN. 802.1Q помещает внутрь фрейма тег, который передает информацию о принадлежности трафика к VLAN. Размер тега — 4 байта. Он состоит из таких полей:
Tag Protocol Identifier (TPID, идентификатор протокола тегирования). Размер поля — 16 бит. Указывает какой протокол используется для тегирования. Для 802.1Q используется значение 0x8100.
Priority (приоритет). Размер поля — 3 бита. Используется стандартом IEEE 802.1p для задания приоритета передаваемого трафика.
Canonical Format Indicator (CFI, индикатор канонического формата). Размер поля — 1 бит. Указывает на формат MAC-адреса. 0 — канонический, 1 — не канонический. CFI используется для совместимости между сетями Ethernet и Token Ring.
VLAN Identifier (VID, идентификатор VLAN). Размер поля — 12 бит. Указывает какому VLAN принадлежит фрейм. Диапазон возможных значений от 0 до 4095.
При использовании стандарта Ethernet II, 802.1Q вставляет тег перед полем «Тип протокола». Так 
как фрейм изменился, пересчитывается контрольная сумма. В стандарте 802.1Q существует понятие 
Native VLAN. По умолчанию это VLAN 1. Трафик, передающийся в этом VLAN, не тегируется. Существует аналогичный 
802.1Q проприетарный протокол, разработанный компанией Cisco Systems — ISL.


Первоисточник:

четверг, 2 мая 2013 г.

Облачные Технологии в сетевых делах

Довелось мне как то помогать одному клиенту заниматься сексом с его собственной сетью:) По другому не могу это назвать. Условия:
1. ВСЯ СЕТЬ КЛИЕНТА БЕЗ ТВОЕГО УПРАВЛЕНИЯ!!!!!!!
2. Клиент хочет цепляться с тобой исключительно по iBGP, где его маршрутизатор(Mikrotik) выступает в качестве RR, но с реальной автономкой и своим блоком адресов. Для Стыка он выделяет свой адрес с маской 255.255.252.0.

Задача:
1. Запустить эту порнографию
2. Сделать это все еще и управляемым, те с нормальным автоматическим переключением маршрутов основной-резервный. Да еще и управлять этим самому по желанию.

Это примерная схема, где AS100 - автономка клиента, AS1 - ISP1, AS2 - ISP2.
Схема изобретена примерна такая(показано со стороны ISP1):
AS1 - MPLS сеть, AS1-1 и AS1-2 - Cisco 7606S c RSP720-3CXL.

vrf definition INET:AS100
 rd 1:1
 !
 address-family ipv4
 route-target export 1:1
 route-target import 1:1
 exit-address-family
!
!
interface Vlan 100
 description "AS100 LAN"
 vrf forwarding INET:AS100
 mtu 1600
 ip address 1.0.0.1 255.255.252.0
!
router bgp 1
 !
 address-family ipv4 vrf INET:AS100
  no synchronization
  no redestibute connected - основное условие для работы всей схемы.
  neighbor 1.0.0.254 remote-as 100
  neighbor 1.0.0.254 update-source Vlan100
  neighbor 1.0.0.254 activate
  neighbor 1.0.0.254 default-originate
  neighbor 1.0.0.254 soft-reconfiguration inbound
  neighbor 1.0.0.254 prefix-list AS100_IN in
 exit-address-family
!
ip prefix-list AS100_IN seq 10 permit 1.0.0.0/22 le 24
!
end


Router AS1-2 смотрит в сторону Public Internet, предположим AS65535


vrf definition INET:AS100
 rd 1:1
 !
 address-family ipv4
 route-target export 1:1
 route-target import 1:1
 exit-address-family
!
!
interface Vlan101
 description AS100-World
 vrf forwarding INET:AS100
 mtu 1600
 ip address 10.0.0.1 255.255.255.254
!
router bgp 1
 !
 address-family ipv4 vrf INET:AS100
  no synchronization
  network 1.0.0.0 mask 255.255.252.0
  neighbor 10.0.0.0 remote-as 65535
  neighbor 10.0.0.0 local-as 100 no-prepend replace-as - Это тоже фишка с заменой номера AS
  neighbor 10.0.0.0 transport path-mtu-discovery disable
  neighbor 10.0.0.0 update-source Vlan101
  neighbor 10.0.0.0 activate
 exit-address-family


После такого, если оператор AS2 сможет все реализовать и не будет редестрибютеть connected сеть в таблицу маршрутизации, то все может срастить банальными препендами.

Inter-AS route-target filter

IOS:
router bgp 65535
 address-family vpnv4
  neighbor 10.0.0.2 activate
  neighbor 10.0.0.2 send-community extended
  neighbor 10.0.0.2 route-map community-ingress in
  neighbor 10.0.0.2 route-map community-egress out
 exit-address-family
!
ip extcommunity-list 10 permit rt 65535:1
ip extcommunity-list 10 permit rt 65535:2
ip extcommunity-list 10 permit rt 65535:3
ip extcommunity-list 10 permit rt 65534:1
!
route-map community-egress permit 10
 match extcommunity 10
 set metric +50
!
route-map community-ingress permit 10
 match extcommunity 10
 set metric +50

IOS-XR: