суббота, 8 октября 2011 г.

SUP720-3BXL TCAM и VRF

Так сложилось что наш каталист выполняет функции и граничника и ядра локальной сети. Эти функции были разнесены в разные vrf. В глобал не было ничего.

Какое-то время все нормально работало, но настала необходимость принять full-view от аплинка и вылезли очень интересные грабли - коммутатор начинал дропать трафик, отваливалось управление, в консоли все жестко тупило.

Wardenclyffe#sh mls cef maximum-routes
FIB TCAM maximum routes :
=======================
Current :-
-------
IPv4 + MPLS - 512k (default)
IPv6 + IP Multicast - 256k (default)

как бы все нормально - ~350k full-view и до 20k остальных маршрутов - все должно влезать.

Но, как оказалось маршруты в vrf занимают сразу несколько ячеек ткам:

Wardenclyffe#show platform hardware capacity | begin L3 Forwarding Resources
L3 Forwarding Resources
FIB TCAM usage: Total Used %Used
72 bits (IPv4, MPLS, EoM) 524288 14547 3%
144 bits (IP mcast, IPv6) 262144 8 1%

detail: Protocol Used %Used
IPv4 9275 2%
MPLS 5271 1%
EoM 1 1%

т.е. при приеме фулл-вью получаем переполнение ткам.

Решается просто - вынес из vrf в глобал все что относится к граничнику и проблема ушла.

воскресенье, 10 апреля 2011 г.

D-Link DGS-3610-26G Dhcp relay

Для поднятия релея нужно в глобал-кнфиге указать адрес сервера DHCP командой:
ip helper-address 172.17.192.254

где 172.17.192.254 - адрес сервера

Однако этого мало, необходимо включить саму службу DHCP:
service dhcp

среда, 23 февраля 2011 г.

ESXi изменение размера блока

При установке ESXi и создании хранилища по умолчанию устанавливается размер блока равный 1М, что не позволяет создавать диски более 256 Гигабайт.

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

1. Cтавим ESXi
2. Перегружаемся
3. В консоли через fdisk удаляем нужный раздел с файловой системой VMFS, не забываем записать изменения на диск (w)
4. Перегружаемся
5. Подключаемся через vSphere и создаем новый датастор с нужными параметрами.

суббота, 12 февраля 2011 г.

Установка ESXi на сервере Intel Xeon

Вчера начал ставить VMWare ESXi на новом сервере - упорно зависало на этапе Initializing scheduler... Перерыл весь БИОС, ничего не помогло. Нашел в гугле трик - если используется USB мышь или клавиатура, то на время загрузки их нужно отключить, а по окончанию подключить назад. Как ни странно помогло. Мда...

пятница, 4 февраля 2011 г.

Cisco Per IP policer

Дано:

В пределах одного VLAN имеем несколько BGP сессий к провайдеру. Нужно ограничить грубо говоря входящую скорость каждой сессии.

железо: Catalyst 6509 Sup720-BXL
Софт:
Cisco IOS Software, s72033_rp Software (s72033_rp-ADVIPSERVICESK9_WAN-M), Version 12.2(33)SXI4a, RELEASE SOFTWARE (fc2)


Создаем access-list'ы и class-map'ы на сети клиентов, по которым будем идентифицировать трафик:
access-list 105 permit ip any 91.224.xx.0 0.0.0.255
access-list 106 permit ip any 193.58.yy.0 0.0.0.255

class-map match-all UAIX_Client1
match access-group 106
class-map match-all UAIX_Client2
match access-group 105

Теперь собственно сам полисер:

policy-map UAIX_OUT
class UAIX_Client1
police 100000000 3125000 conform-action transmit exceed-action drop
class UAIX_Client2
police 80000000 2500000 conform-action transmit exceed-action drop

Одному клиенту нарезаем 100М, второму 80М.

И последнее, вешаем эту полиси на нужный vlan:

interface Vlan221
service-policy output UAIX_OUT

четверг, 22 июля 2010 г.

LACP D-Link + Linux Bonding

Следующая задача состояла в том чтобы увеличить пропускную способность между роутером на Linux и свичом который на котором собраны разные 1Г транспорты.

Свич мы на строили по примеру из предыдущего поста, настала очередь роутера.

1. Пересобираем ядро с поддержкой bonding, и обязательно в виде модуля, т.к. только в этом случае мы можем задавать ему разные опции.
2. Настраиваем модуль:

/etc/modprobe.d/bond.conf

alias bond0 bonding
alias bond1 bonding

options bonding mode=4 max_bonds=2 xmit_hash_policy=1


Тут поподробнее bond0 - первый интерфейс, bond1 - второй
bonding mode=4 - режи работы бондинга совместимый с 802.1ad который включен у нас на свиче.
max_bonds=2 Количество бонд-интерфейсов, без него сможем создать только 1 интерфейс.
xmit_hash_policy=1 - самое интересное, аналог config link_aggregation algorithm both_ip_mac_source_dest в свиче D-Link, без него те же траблы. Кому интересно очень подробное описание находится в файле /usr/src/linux/Documentation/networking/bonding.txt

Теперь настраиваем собственно интерфейсы:

/etc/conf.d/net

modules=( "iproute2" )

config_eth0=(<->"192.168.100.1/32"<---->)
config_eth1=(<->"192.168.100.2/32"<---->)
config_eth2=(<->"192.168.100.3/32"<---->)
config_eth3=(<->"192.168.100.4/32"<---->)


slaves_bond0="eth0 eth1"
slaves_bond1="eth2 eth3"

config_bond0=(<>"192.168.100.5/32"<---->)
config_bond1=(<>"192.168.100.6/32"<---->)

vconfig_bond0=( "set_name_type VLAN_PLUS_VID" )
vconfig_bond1=( "set_name_type VLAN_PLUS_VID" )


vlans_bond0="220"
vlans_bond1="226 227 496 526 527 606 497 604 504 550 551 332 498 506 525 602 603 605"

config_vlan0220=(<----->"1хх.1хх.1хх.2хх/30"<-->)


.... и дальше собственно настройки vlan-интерфейсов


Почему-то с конструкцией "NULL" в виде адреса интерфейса не создавались вланы, поэтому прописал фейковые адреса.

Теперь добавляем симлинки:

ln -s /etc/init.d/net.lo /etc/init.d/net.bond0
ln -s /etc/init.d/net.lo /etc/init.d/net.bond1


И добавляем автозагрузку:
rc-update add net.bond0 default
rc-update add net.bond1 default


Все работает, как и надо
Система Gentoo Linux, свич D-Link DGS-3100