Приведу краткий пример команд для коммутаторов D-link, в частности для DES-3200 и некоторых DGS коммутаторов:
Подключаемся к коммутатору по telnet на порт 23 либо через консольный кабель.
VT100, ANSI, стандартный IP коммутаторов: 10.90.90.90 255.255.255.0
Также в режиме консоли при включении свича: Shift+6 восстановление, Shift+3 режим прошивки.
Команду «show» можно использовать в сокращенном виде как «sh», также можно сокращенно вводить другие команды, ну об этом позже.
show switch show address_binding ip_mac all show address_binding blocked all show session enable web 80 enable telnet 23 show ipif show fdb (отображает таблицу MACов) config arp_aging time (in minutes) config ipif System ipaddress 10.15.1.92/8 vlan имявлан state enable hostname switch237 show terminal_line config terminal_line 30 enable clipaging cable_diag ports all show arpentry clear arptable
*JUMBO FRAME
(это сверхдлинные Ethernet-кадры, которые используются в высокопроизводительных сетях для увеличения производительности на длинных расстояниях, а также уменьшения нагрузки на центральный процессор. Jumbo-кадры имеют размер, превышающий стандартный размер MTU: от 1518 до 16000 [1] байт. Удобно при: сервер — свич — сервер, но не клиентские порты).
show jumbo_frame disable jumbo_frame
АККАУНТЫ
show account create account admin/user имя config account имя enable password encryption
*BPDU ATTACK PROTECTION
show bpdu_protection show bpdu_protection ports enable bpdu_protection config bpdu_protection ports 1 state enable mode drop/block/shutdown config bpdu_protection recovery_timer 120 (sec) config bpdu_protection trap both config bpdu_protection log both
*SAFEGUARD ENGINE
(При превышении загрузкой CPU верхнего предела, коммутатор отбрасывает все ARP пакеты. При значении загрузки между двумя пределами, коммутатор обрабатывает только ARP пакеты, предназначенные ему. При снижении загрузки ниже нижнего предела коммутатор обрабатывает все ARP пакеты.)
show safeguard_engine config safeguard_engine state enable utilization rising 70 falling 30 trap_log enable mode strict/fuzzy
*TRAFFIC SEGMENTATION
show traffic_segmentation
Допустим имеем на комутаторе входящий порт 9 и хотим ограничить порты друг от друга.
config traffic_segmentation 1-8,10-24 forward_list 9 config traffic_segmentation 9 forward_list 1-8,10-24
*TRAFFIC CONTROL
show packet ports 1-28 config traffic control 1-24,26-28 broadcast enable multicast enable unicast disable action drop threshold 64 countdown 5 time_interval 5
*SNTP
show sntp enable sntp config time_zone operator + hour 2 min 0 config sntp primary 91.203.15.142 secondary 0.0.0.0 poll-interval 5000 show time config time 1jun2012 12:00:00
*DHCP RELAY
enable dhcp_relay config dhcp_relay add ipif 192.168.1.1
НАСТРОЙКА ПОРТОВ
show ports show ports description config ports 25-28 speed 1000_full state enable learning enable
*SNMP
show snmp enable snmp show snmp community delete snmp community private delete snmp community public delete snmp user initial delete snmp group initial create snmp community имя view CommunityView read_only/read_write[code] <strong>*TRUSTED HOST</strong> [code]show trusted_host create trusted_host network айпи/16
*SMTP
show smtp enable smtp config smtp server айпи server_port 25 add mail_receiver admin@domain.com smtp send_testmsg
*PORT SECURITY
Функция коммутатора, позволяющая указать MAC-адреса хостов, которым разрешено передавать данные через порт. После этого порт не передает пакеты, если MAC-адрес отправителя не указан как разрешенный. Кроме того, можно указывать не конкретные MAC-адреса, разрешенные на порту коммутатора, а ограничить количество MAC-адресов, которым разрешено передавать трафик через порт.
config port_security ports 1-24 admin_state enable max_learning_addr 1 lock_address_mode DeleteOnReset
*VLAN
show vlan create vlan имя tag айди config vlan имя add/delete tagged/untagged/forbidden 1-24 advertisement enable/disable config vlan default delete 1-24 config gvrp 1-28 state disable ingress_checking enable acceptable_frame admit_all pvid вланайди disable gvrp show port_vlan config port_vlan 1:9 gvrp_state disable ingress_checking enable acceptable_frame tagged_only/admit_all pvid 1
Для правильной установки сначала необходимо создать отдельный управляемый Vlan, в котором должны находится только управляемое оборудование и в config ipif прописан этот Vlan. На входящий порт на всех Vlan ставится tag, на порты на которых висит управляемое оборудование в необходимом Vlan ставится tag, на неуправляемое untag, если порт не находится в данном Vlan — not memeber. В PVID на магистральных тагированых портах я ставлю VID управляемого влана, если же порт untagged в каком-то влане, то необходимо ставить vid этого влана.
Edgress(разрешенный) — определяет что порт является статическим членом VLAN.
Forbidden(запрещенный) — определяет что порт не является членом VLAN и динамически не может никак к нему подключиться.
non-member — определяет что порт не является членом VLAN, но порт может динамически к нему подключиться.
*DHCP SERVER SCREENING
show filter dhcp_server config filter dhcp_server add permit server_ip { client_mac } ports [ | all ] |delete permit server_ip { client_mac } ports [ | all ] | ports /all state enable/disable config filter dhcp_server ports 1-24 state enable config filter dhcp_server trap_log enable config filter dhcp_server illegal_server_log_suppress_duration 1min/5min/30min
*IGMP SNOOPING
(процесс отслеживания сетевого трафика IGMP, который позволяет сетевым устройствам канального уровня (свитчам) отслеживать IGMP-обмен между потребителями и поставщиками (маршрутизаторами) многоадресного (multicast) IP-трафика. Функция IGMP Snooping применяется в сетях групповой рассылки для того, чтобы рабочие станции, не запросившие
групповой трафик, не получали его.)
enable igmp_snooping create igmp_snooping multicast_vlan имявлан айдивлан config igmp_snooping multicast_vlan имявлан add member_port 1,5 state enable config igmp_snooping multicast_vlan_group имявлан add 225.1.1.1 show igmp_snooping multicast_vlan_group имявлан enable igmp_snooping multicast_vlan show igmp_snooping multicast_vlan
DGS-3612G for IPTV:
enable igmp_snooping config igmp_snooping vlan multicast report_suppression disable config igmp_snooping vlan multicast state enable fast_leave enable config igmp_snooping querier vlan multicast query_interval 125 max_response_time 10 robustness_variable 2 last_member_query_interval 1 state disable version 3 config limited_multicast_addr ports 1-12 state disable
3828:
config igmp_snooping querier multicast query_interval 125 max_response_time 10 robustness_variable 2 last_member_query_interval 1 state enable
[| all] {query_interval | max_response_time | robustness_variable | last_member_query_interval | state [enable | disable]
*DOS PREVENTION
show dos_prevention config dos_prevention dos_type land_attack blat_attack state enable action drop enable dos_prevention trap_log show dos_prevention land_attack show dos_prevention blat_attack clear dos_prevention counters
*LOOPBACK DETECTION (Включается на клиентских портах и неуправляемых магистралях. На магистралях между управляемым оборудованием вместо LBD необходимо включать STP)
show loopdetect show loopdetect ports 1-24 enable loopdetect config loopdetect trap both config loopdetect ports 1-24 state enabled config loopdetect recover_timer 0 interval 20 mode vlan-based config loopdetect recover_timer 60 interval 10 mode port-based
(recover_timer – время, в течение которого порты будут отключены. Interval – интервалы между отправкой пакетов обнаружения петли.)
*SPANNING TREE PROTOCOL (STP) (протокол остовного дерева)
Основной задачей STP является устранение петель в топологии произвольной сети Ethernet, в которой есть один или более сетевых мостов, связанных избыточными соединениями. STP решает эту задачу, автоматически блокируя соединения, которые в данный момент для полной связности коммутаторов являются избыточными.
config stp ports 1-24 edge true fbpdu disable restricted_role true restricted_tcn true state enable config stp ports 25-26 restricted_tcn true restricted_role false fbpdu disable state enable enable stp
*ACCESS CONTROL LIST (ACL)
show access_profile
Запрет на подмену DHCP:
create access_profile ip udp src_port_mask 0xFFFF profile_id 5 profile_name 67dhcp config access_profile profile_id 5 add access_id 1 ip udp src_port 67 port 25 permit config access_profile profile_id 5 add access_id 2 ip udp src_port 67 port 1-24,26-28 deny
На DGS-3120-24 например уже немного по другому:
create access_profile profile_id 5 profile_name 67dhcp ip udp src_port_mask 0xffff config access_profile profile_id 5 add access_id 1 ip udp src_port 67 port 1:9 permit config access_profile profile_id 5 add access_id 2 ip udp src_port 67 port 1:1-1:8, 1:10-1:24 deny
Запрет Netbios и Windows sharing (для udp также):
create access_profile ip tcp dst_port_mask 0xFFFF profile_id 15 config access_profile profile_id 15 add access_id 15 ip tcp dst_port 135 port 1-24 deny config access_profile profile_id 15 add access_id 16 ip tcp dst_port 139 port 1-24 deny config access_profile profile_id 15 add access_id 17 ip tcp dst_port 445 port 1-24 deny
Разрешение только одного айпи на порт:
create access_profile ip source_ip_mask 255.255.255.255 profile_id 10 config access_profile profile_id 10 add access_id 1 ip source_ip 192.168.1.1 port 5 permit create access_profile ip source_ip_mask 0.0.0.0 profile_id 20 config access_profile profile_id 20 add access_id 2 ip source_ip 0.0.0.0 port 5 deny
Запрещаем broadcast трафик:
create access_profile ethernet destination_mac ff-ff-ff-ff-ff-ff profile_id 7 config access_profile profile_id 7 add access_id auto_assign ethernet destination_mac ff-ff-ff-ff-ff-ff port 1-24 deny
Запрещаем все чужие VPN:
create access_profile ip destination_ip_mask 0.0.0.0 tcp dst_port_mask 0xFFFF profile_id 11 config access_profile profile_id 11 add access_id 11 ip destination_ip 0.0.0.0 tcp dst_port 1723 port 1-24 deny
Разрешаем прохождения трафика через коммутатор только для одного IP и блокируем для всех остальных:
create access_profile ip source_ip_mask 255.255.255.255 profile_id 10 config access_profile profile_id 10 add access_id 1 ip source_ip 192.168.1.1 port 5 permit create access_profile ip source_ip_mask 0.0.0.0 profile_id 20 config access_profile profile_id 20 add access_id 2 ip source_ip 0.0.0.0 port 5 deny
*CPU Interface Filtering
Некоторые пакеты, полученные коммутатором, должны быть направлены на обработку в CPU и эти пакеты не могут быть отфильтрованы аппаратными ACL. Например, пакет, в котором MAC-адрес назначения — это MAC-адрес коммутатора. (ping на IP-адрес коммутатора). Решение: CPU Interface Filtering. (Software ACL)
Блокируем доступ к коммутатору с определенного IP:
enable cpu_interface_filtering create cpu access_profile ip source_ip_mask 255.255.255.128 icmp profile_id 1 config cpu access_profile profile_id 1 add access_id 1 ip source_ip 10.31.3.2 icmp deny
*ARP SPOOFING PREVENTION
show arp_spoofing_prevention config arp_spoofing_prevention add gateway_ip 10.254.254.251 gateway_mac 00-00-00-11-11-11 ports 1-2
*TECHNICAL SUPPORT
show tech_support upload tech_support_toTFTP айпи tech_support_20120101.txt
Обновление прошивки:
download firmware_fromTFTP 192.168.0.1 src_file DES3200R_4.36.B008.had dest_file DES3200R_4.36.B008.had
или
download firmware_fromTFTP 192.168.0.1 DES-3200R_1.81.B003.had image_id 2 config firmware image_id 1/2 boot_up/delete show firm info show sta
Отправка и закачка конфига:
upload cfg_toTFTP/log_toTFTP айпи путь_имяфайла download cfg_fromTFTP айпи путь_имяфайла upload cfg_toTFTP 192.168.0.1 dest_file back.cfg * upload cfg_toTFTP 192.168.0.1 config_id 1 back.cfg
3200 C1
download firmware_fromTFTP 192.168.0.1 src_file DES3200R_4.34.B009.had download cfg_fromTFTP 192.168.0.1 src_file 3200-26-c1.cfg
МАРШРУТЫ
show iproute show iproute static delete iproute 0.0.0.0/0 192.168.0.1 create iproute 0.0.0.0/0 192.168.0.1 create iproute default 192.168.1.1 1 ping 192.168.12.12 times 4
*SYSLOG
show syslog enable syslog create syslog host 1 ipaddress 10.68.88.1 severity informational/warning/all facility local0/local1/local2/local3/local4/local5/local6/local7 udp_port 514 state enable delete syslog host 1 show log_save_timing config log_save_timing time_interval 30 (в минутах) /on demand (когда сохранит пользователь)
QOS
QoS ACL для Multicast видео-потока:
create access_profile ip destination_ip_mask 224.0.0.0 profile_id 10 config access_profile profile_id 10 add access_id auto_assign 1 ip destination_ip 224.0.0.0 port 1-26 permit priority 5 replace_dscp_with 48
Сохранение/перезагрузка/выход:
save config/log/all reboot logout
Те filter dhcp server без включенной DHCP Server Screening бесполезна?
В обеих вариантах DHCP блокируются. Через DHCP Server Screening удобнее фильтровать так как события записываются в логи, а сколько через ACL отброшено пакетов не пишется.
Простая и довольно полезная информация.
Пару моментов честно скажу позаимствовал :)
Спасибо автору.
А был ли смысл фильтровать dhcp помимо функционала filter dhcp еще и acl’ами?
Если коммутатором поддерживается функция DHCP Server Screening, то через ACL фильтровать DHCP не нужно.