Архив метки: Работа

Установка Skystar 2 Express HD в Debian 6.0.6


sudo apt-get install build-essential mercurial subversion libncurses5-dev libpng12-dev libproc-processtable-perl
# Качаем дрова из нового репозитория Липлянина
hg clone http://pikacode.com/liplianin/s2-liplianin-v35-716x/
cd s2-liplianin-v35-716x
sudo make menuconfig
# зайти в меню multimedia support ->
# support for saa716x family from nxp/phillips ->
# убрать отметку []saa7160/1/2 based full fledged pcie cards
# и при выходе сохранить настройки
make
sudo make install
sudo reboot

Источник

На самом деле нужно еще отключить модуль Siliconfile SR030PC30 camera driver и Siliconfile NOON010PC30 camera driver

Реаддресация netflow

Оказывается, чтобы переадресовать уже запущенный на хост netflow-поток, в конфигурации «/sbin/iptables -t nat -A PREROUTING -p udp -d X.X.X.X —dport 9996 -j DNAT —to-destination Y.Y.Y.Y:9996», нужно очищать таблицу соединений NAT, т.е. выполнить команду conntrack -F

Сброс стекового юнита DGS-3100

I have DGS-3100-24TG switch whitch has been a stacking member with manually configured stack ID. Now i want to use it as standalone switch, but it boots without chance to configure it. Only debug mode commands is available but none of them helps.

DGS-3100 series manual doesn’t help as there was written: «To reset the stacking members to the factory defaults, press the Reset button for at least 5 seconds» and: «During the boot process, after the first part of the POST is completed press Ctrl+shift+ (-) within 2 seconds after the following message is displayed: Autoboot in 2 seconds –press RETURN or Esc. to abort and enter prom.#», but there isn’t reset button on switch; message «Autoboot in 2 seconds…blah blah» isn’t displayed and key combination won’t help in any boot stage.

Sorry, but trying hard [ctrl]+[shift]+[-] key combination finally help me!

FreeBSD IPFW NAT /24 -> /32

Коллективным разумом на nag.ru пришли к такому скрипту:

#Some variables
IP123="XXX.YYY.ZZZ"             < - 3 первых байта внешних адресов (99.124.65)
GRAYIP="XXX.YYY"                <- 2 первых байта серой подсети (172.16)
OUT_VLAN="vlanX"                <- Выходной интерфейс (vlan99)
NATIPFW_RULE=30000              <- Номер правила в ipfw
TABLE_NAT_IN=100                <- Номер таблицы серых подсетей
TABLE_NAT_OUT=101               <- Номер таблицы реальников
 
#Null0 routed NAT network
/sbin/route add -net $IP123.0/24 -blackhole
 
#Ipfw::NAT config with table
/sbin/ipfw table $TABLE_NAT_IN flush
/sbin/ipfw table $TABLE_NAT_OUT flush
IP4=1
SEGIP3=0
NATBASE=1000
while [ $IP4 -le 254 ]
do
	NATNUM=`expr $NATBASE + $IP4`
	/sbin/ipfw nat $NATNUM config ip $IP123.$IP4 reset unreg_only same_ports deny_in
	/sbin/ipfw table $TABLE_NAT_OUT add $IP123.$IP4 $NATNUM
	/sbin/ipfw table $TABLE_NAT_IN add $GRAYIP.$SEGIP3.0/24 $NATNUM
	IP4=`expr $IP4 + 1`
	SEGIP3=`expr $SEGIP3 + 1`
done
/sbin/ipfw add $NATIPFW_RULE nat tablearg ip from "table($TABLE_NAT_IN)" to any out via $OUT_VLAN
/sbin/ipfw add $NATIPFW_RULE nat tablearg ip from any to "table($TABLE_NAT_OUT)" in via $OUT_VLAN

Не переход на зимнее время

—————FREEBSD—————
date
date -v +768H
fetch http://vurd.name/flagmangroup/files/europe
mkdir timezone
zic -d /tmp/timezone/ europe
И копируем куда надо.
—————LINUX—————
date
date —date=’768hours’
wget http://vurd.name/flagmangroup/files/europe
mkdir timezone
zic -d /tmp/timezone/ europe
И копируем куда надо.
—————MYSQL—————
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -p -u root mysql

Полисинг по времени на маршрутизаторе cisco

«Time based policy maps and rate-limit» — по такому запросу в гугле я хотел бы получать нужную инфу.

Задача:
С 10 утра до 2 часов по рабочим дням ограничить ограничить скорость до 5 mbit/s, в остальное время ограничить до 512 kbit/s.

Решение:
Задаем временной промежуток с 10 до 14 по рабочим дням.

!
time-range work.hours
 periodic weekdays 10:00 to 13:59
!

Задаем префиксы интересующих нас сетей. В случае с саб-интерфейсом (rate-limit можно указывать для логических интрефейсов, в отличие от шейпинга) можно указать «any to any»

!
ip access-list extended any2any.work.hours
 permit ip any any time-range work.hours
!

Указываем классификатор, в нашем случае сверяем по акцес-листу.

!
class-map match-all any2any.work.hours
 match access-group name any2any.work.hours
!

Указываем политику QoS. Если трафик попадает под класс, действующий по времени, то работает первое ограничение, в остальных случаях — второе.

!
policy-map 5Mb-work-512Kb-nonwork
 class any2any.work.hours
    police 5242500 983040 1966080 conform-action transmit  exceed-action drop  violate-action drop
 class class-default
    police 512000 96000 192000 conform-action transmit  exceed-action drop  violate-action drop
!

Применяем политику к выбранному логическому интерфейсу.

!
interface GigabitEthernet0/1.1234
 service-policy input 5Mb-work-512Kb-nonwork
 service-policy output 5Mb-work-512Kb-nonwork
!

Блокировка uTP на FreeBSD через ng_bpf

tcpdump -ni em0 «vlan and ip[40:4]=0x7FFFFFFF»

#!/bin/sh
 
kldload ng_bpf
kldload ng_tag
kldload ng_ipfw
 
/usr/sbin/ngctl -f- < <-SEQ
        mkpeer ipfw: bpf 61 ipfw_hook61
        name ipfw:61 bpf_utp_filter
        mkpeer bpf_utp_filter: tag matched tag_utp
        name bpf_utp_filter:matched tag_utp_tagger
SEQ
 
ngctl msg bpf_utp_filter: setprogram { thisHook=\"ipfw_hook61\" ifNotMatch=\"ipfw_hook61\" ifMatch=\"matched\" bpf_prog_len=12 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=8 k=64 } { code=48 jt=0 jf=0 k=9 } { code=21 jt=0 jf=6 k=17 } { code=40 jt=0 jf=0 k=6 } { code=69 jt=4 jf=0 k=8191 } { code=177 jt=0 jf=0 k=0 } { code=64 jt=0 jf=0 k=20 } { code=21 jt=0 jf=1 k=2147483647 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }
ngctl msg bpf_utp_filter: setprogram { thisHook=\"matched\" ifMatch=\"ipfw_hook61\" bpf_prog_len=1 bpf_prog=[ { code=6 jt=0 jf=0 k=96 } ] }
ngctl msg tag_utp_tagger: sethookin { thisHook=\"tag_utp\" ifNotMatch=\"tag_utp\" }
ngctl msg tag_utp_tagger: sethookout { thisHook=\"tag_utp\" tag_cookie=1148380143 tag_id=61 }
 
ipfw add netgraph 61 udp from any to any iplen 0-61
ipfw add deny udp from any to any tagged 0-61
 
# to test outgoing - tcpdump -pni Out_Interface "ip[40:4]=0x7FFFFFFF" and "ip[44:1]=0xab" and ether src Ext_If_Mac

С новыми сигнатурами 2.01

#!/bin/sh
 
kldload ng_bpf
kldload ng_tag
kldload ng_ipfw
 
/usr/sbin/ngctl -f- < <-SEQ
    mkpeer ipfw: bpf 61 ipfw_hook61
    name ipfw:61 bpf_utp_filter
    mkpeer bpf_utp_filter: tag matched tag_utp
    name bpf_utp_filter:matched tag_utp_tagger
SEQ
 
ngctl msg bpf_utp_filter: setprogram { thisHook=\"ipfw_hook61\" ifNotMatch=\"ipfw_hook61\" ifMatch=\"matched\" bpf_prog_len=13 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=9 k=64 } { code=32 jt=0 jf=0 k=36 } { code=21 jt=0 jf=2 k=2147483647 } { code=40 jt=0 jf=0 k=40 } { code=21 jt=4 jf=0 k=3 } { code=32 jt=0 jf=0 k=40 } { code=21 jt=0 jf=3 k=2147483647 } { code=48 jt=0 jf=0 k=44 } { code=21 jt=0 jf=1 k=171 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }
 
ngctl msg bpf_utp_filter: setprogram { thisHook=\"matched\" ifMatch=\"ipfw_hook61\" bpf_prog_len=1 bpf_prog=[ { code=6 jt=0 jf=0 k=96 } ] }
ngctl msg tag_utp_tagger: sethookin { thisHook=\"tag_utp\" ifNotMatch=\"tag_utp\" }
ngctl msg tag_utp_tagger: sethookout { thisHook=\"tag_utp\" tag_cookie=1148380143 tag_id=61 }
 
ipfw add netgraph 61 udp from any to any iplen 48-61
ipfw add deny udp from any to any tagged 61
 
# to test outgoing - tcpdump -pni ext0 '(ip[36:4]=0x7FFFFFFF and ip[40:2]=0x0003) or (ip[40:4]=0x7FFFFFFF and ip[44:1]=0xab)' and ether src Ext_If_Mac

P.S. А вот так это делается в linux-е.

/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|0000000000380000|" --algo bm --from 36 --to 45 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|7F FF FF FF AB|" --algo bm --from 40 --to 44 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|7F FF FF FF 00 03 20 00|" --algo bm --from 36 --to 43 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|00 38 00 00 00 01 00 00|" --algo bm --from 40 --to 47 -j DROP

Если вы думаете что у вас херовая работа…

… то предлагается посмотреть как проходит Sysadmin’s Day на моей пахоте.

Ничего не предвещало

Что значит кончились свитчи?

Придется строить на длинках

Где-то тут были…

Так, 3100 нашелся

Во, еще один