čtvrtek 10. října 2013

Bad Blocks, jak na ně

Dneska jsem při postupné aktualizaci routerů v síti zjistil, že na jeden kousek nemohu aktualizaci nahrát, protože není dost místa na disku.
Začal jsem pátrat protože mi to přišlo divné a objevil jsem, že mám 34% spatnych sektorů.

Řekl jsem si, že to je vlastně zajímavá informace a bylo by dobré o ní vědět.
Tak tady sdílím script který se dá dát do sheduleru na kontrolu:

:local BadStatus [/system resource get bad-blocks];

:local Identify [/system identity get name];

:if ($BadStatus>200) do={
 :log info "vice nez $BadStatus BB - provozovna $Identify";
 :tool e-mail send to="it@it.cz" subject="BB_$Identify" body=("vice nez $BadStatus BB - provozovna $Identify");
}

U bad blocků získáváme mnořství bez desetiné čárky.


čtvrtek 19. září 2013

VPN a DNS

Dnes po ránu mi udělal MikroTik radost. Občasně se dívám jestli nevyšla nová verze a co je v ní nového.
Vyšla verze RouterOS 6.4.
A v přehledu novinek jsem oběvil, že přidali možnost zadávat adresu VPN serveru ve formě DNS jména.
Což mne velice nadchlo. S tímto jsem se totiž potýkal, když se u nás ve firmě rozhodlo, že budeme měnit providera u linky na které běží jeden z hlavních routerů a připojuje se na něj stovky klientských.

Nezbývalo než si udělat takovýto skript který se bude spouštět na všech routerech, kdyby došlo k nějaké další změně:

{
:if (!([interface ovpn-client get VPN value-name=running])) do {
/ip dns cache flush;
:global ovpnipold [interface ovpn-client get VPN value-name=connect-to];
:global ovpnipnew [resolve domain-name=aaa.bbb.cz];
:if (!($ovpnipnew = $ovpnipold)) do {
/interface ovpn-client set VPN connect-to=$ovpnipnew
}
delay delay-time=5s;
:if (!([interface ovpn-client get VPN value-name=running])) do {
/ip dns cache flush;
:global ovpnipnew [resolve domain-name=aaa.bbb.cz]
:if (!($ovpnipnew = $ovpnipold)) do {
/interface ovpn-client set VPN connect-to=$ovpnipnew
}
}
}


Od verze 6.4. je možno u následujících VPNek zadávat adresu serveru jako DNS jméno: pptp, l2tp, sstp, ovpn.




pondělí 17. června 2013

MikroTik a partitions

V dnešním článku se budu věnovat další novince od chlapců z MikroTiku. Jsou to partitions na RB.
Podle mne docela neobvyklá věc, ale hned jsem pro ní našel využití.
Jistě si pamatujete, jak jsem hořekoval nad tím, že vzdálený upgrade je trochu nešťastný, a že se občas stane, že router po upgradu nenaběhne. Tento problém může řešit druhá partition na RB.

Co je k tomu potřeba:
Verze RouterOS 6rc5 a vyšší
RB s architekturou Mibsbe a PowerPC, CloudCore
Poslední verzi bootloaderu
Alespoň 32 MB na RB archtektury Mibspe a nebo 40 MB na PowerPC a 48 na CC

Pozor po přechodu na více partitions nelze přejít na verzi 5, v takovém případě se musí přeformátovat NAND.

Maximální počet partitions je 8, ale nevidím praktický důvod, proč jich mít tolik.

Jak na to:
V levém menu se objevila nová položka Partition
Položka Repartition
Pak zadat počet oddílů, kolik chceme vytvožit.
Vyžaduje Restart.

Rozkliknutím jednotlivých oddílů můžeme nastavit, který nabootuje při pádu jako následující.
Popřípadě můžeme vybrat, který z oddílů bude nyní jako aktivní.

Tlačítko Copy To slouží pro překopírování jednoho oddílu na druhý. Save Config To slouží k uložení aktuální konfigurace na vybraný oddíl.

Restore Config From slouží naopak k načtení konfigurace z oddílu.

Příklad naplánované úlohy pro kopírování konfigurace.

/system scheduler
add interval=1d name=CopyConfig on-event="/partitions save-config-to part1" \
    policy=\
    ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
    start-date=jun/17/2013 start-time=07:38:10


čtvrtek 17. ledna 2013

Netwatch

Vychytávka zvaná netwatch je síťařům dobře známá, ale tento blog je hlavně pro začínající, tak se o tom zmíním.
Tools -> Netwatch

Nástroj je dobrý pro kontrolu životnosti hosta
Jeho velká síla však není v tom, že ukazuje jestli host žije nebo ne, ale že s tím dokáže i naložit jak mu řekneme v záložce Up / Down.
Na příklad já tuto funkci používám k "nasojkování" nového routeru v síti. Zkrátka vytvořím konfiguraci tu dám technikovi a jakmile ji on nahraje a připojí router do sítě, Netwatch se mi nahlásí do emailu.


:local herna [/system identity get value-name=name];
:if (![interface pppoe-client get WAN value-name=running]) do={ 
:tool e-mail send to="it@xyz.xx" subject="MKBonzDHCP_1617" body=("$herna - Herna byla spustena");
 :log info "spusteno";}



Tento skript říká, že když není aktivní PPPoE klient, pošli email na definovanou adresu s tím že byl připojen router přes DHCP na té a té lokalitě.

Druhá možnost jak tuto funkci použít je když potřebuji něco vykonat pakliže je host dole.
Například restartovat spoj:
/interface ovpn-client disable spoj 
/interface ovpn-client enable spoj

Použití je samozřejmě velmi široké, do Up/Down se dá v podstatě implementovat co mne napadá a RouterOS dovoluje.


čtvrtek 3. ledna 2013

Vychytávka co stojí za zmínku

MikroTik již nějakou dobu připravuje verzi 6 (v současné době v6.0rc6). Verze 6 by měla obsahovat plnou podporu IPv6. MikroTik slibuje vydání cca do 2 měsíců.
Od verze 6.0 rc4 však již obsahuje vychytávku, která mě osobně přijde hodně slušná a to sice test UTP kabelu.

Tato funkce funguje na RB711G, RB2011, RB750 a ostatní zařízení na stejném chipsetu a samozřejmě i na corových prvcích.
RouterOS dokáže detekovat následující problémy:

  • Který pár kabelu je poškozen
  • Na jaké vzdálenosti je poškozen
  • Jakým způsobem je poškozen (zkratován, mechanicky poškozen)

Příklad:
[admin@CCR] > interface ethernet monitor ether5
       status: no-link
       auto-negotiation: done
       cable-pairs: open:4,open:4,open:4,open:4