Tuesday, November 17, 2009

Chevrolet Silverado Ss For Sale In Calgary

More about JUNOScripts

JONOScripts (among others) make it possible to automatically respond to random events. For example, when detecting a 2% loss on the link to increase ospf metric. Mechanism powerful and flexible.

In our case, it took two applications:
1. Need to reserve L2-transport. And one of the ways BPDU does not pass, so that any options STP does not fit (bpdu tunneling does not work either).
2. Traffic to the client is distributed on two link as multipath bgp, the client should limit the bandwidth of the sum of these two paths. Since speed limit of the MX is placed on each ICHIP independently and sabinterfeysy client we belonged to different physical 10GE-interfaces, bandwidth limitation The brute force is not obtained.

Both problems are successfully resolved through the event scripts.
In the first case - the reaction of either OSPF, or the ping tests. If you fall main link specified list Wilanow from this trunk is removed, and in the trunk to the backup link is added. When lifting the basic link configuration is reset. Script
second - a reaction to the change of state BGP with the client. If both sessions are alive, each sabinterfeysov prescribed limit in half of the put client bandwidth. If one of the BGP fell - on the remaining poliser increases up to a full band. script

In the configuration of event policy no tricks there, so do not quote, and just lazy. If anyone interested - show, moreover, that the scripts without a description, and not oriented in slax, to understand how and with what parameters to run them, problematic, sorry.

In general, everything works. However, there are nuances.

It would seem that the fall ospf or physical interface to say in one place "shutdown" (well, or "Set disable"), in the other - "no shutdown" (ie "clear disable") can be directly, the response time of such a mechanism can be much better than the rapid-stp. Indeed - the interface went to Downe, immediately dropped OSPF, immediately went to an event, run the script, changed the config - all about all the tens of milliseconds (well, maybe a hundred). But then about a minute done commit. :-( It's not like Cisco, where the shutdown and no shutdown are processed immediately.

second nuance - how to be a lock change config? What if someone is currently editing the configuration? If you just open the configuration file, make changes and commit the, we risk to use someone's not ready to change. If we make exclusive - we simply will not be allowed to change the configuration, do not switch to a backup channel for the fall primary. If private - run the risk of unnoticed undo somebody else's changes (human or a script), made during Our commit. Nevertheless, the changes from the script private - the most viable option for manual changes - the usual edit (without options). So the risk is obtained minimal (though nonzero).

Maybe implement a lock with the expectation of their own, inside the script? For example, put a file on a semaphore while editing configuration. Alas, the idea failed: when attempting to execute any command "file ..." from a script error: "Operation allowed only from CLI". Do not put out a functional language contact to external resources. : (Something got to do what protection through jcs: dampen (), which stores data in a file system, but would not say that this defense is a beautiful and reliable.

Well, among other things, it turned out that the scripting support in general is still quite crude and buggy. For example, in 9.5R1 to the parameters of the script appended to the end gaps. 9.5R2 on why something does not work, editing by private, add in the config comment (junos: comment) - either private, or comment, but not both. If you try to run the event script does not from the root, get the error:

 Oct 1931 16:31:32 eventd [932]: UI_DBASE_OPEN_FAILED: Database open failed for file '/ var / run / db / schema.db': Permission denied Oct 31 16:31:32 eventd [932]: UI_CONFIGURATION_ERROR: Process: eventd, path: \u0026lt;none>, statement: \u0026lt;none>, Opening configuration database: Could not open database schema 

Sometimes, if you want to gently close the session (not just dropnut connection, and said request-end-session), we obtain the following:

Oct 1929 11:28:37 rpc name: request-end-session
Oct 1929 11:28:37 buffer trace: normal: 0x80e8000 (364/0x16c)
Oct 1929 11:28:37 buffer: {{{\u0026lt;? xml version = "1.0" encoding = "us-ascii "?>}}}
Oct 1929 11:28:37 buffer : {{{\u0026lt;junoscript xmlns = " http://xml.juniper.net/xnm/1.1/xnm " xmlns:junos=" http://xml.juniper.net/junos/9.5R2/junos " schemaLocation=" http://xml.juniper.net/junos/9.5R2/junos junos/9.5R2/junos.xsd" os="JUNOS" release="9.5R2.7" hostname="" version="1.0">}}}
Oct 29 11:28:37 buffer: {{{<rpc-reply xmlns:junos=" http://xml.juniper.net/junos/9.5R2/junos " xmlns="">}}}
Oct 29 11:28:37 buffer trace: normal: 0x80eb02d (15/0xf)
Oct 29 11:28:37 buffer: {{{<end-session/>}}}
Oct 29 11:28:37 buffer trace: normal: 0x80ed154 (13/0xd)
Oct 29 11:28:37 buffer: {{{</rpc-reply>}}}
Oct 29 11:28:37 buffer trace: normal: 0x80eb161 (69/0x45)
Oct 29 11:28:37 buffer: {{{]]>]]>}}}
Oct 29 11:28:37 buffer: {{{<!-- session end at 2009-10-29 11:28:37 EET -->}}}
Oct 29 11:28:37 buffer: {{{</junoscript>}}}
Oct 29 11:28:37 buffer trace: read fails: 0x80ef1a6 (0/0x0)
Oct 29 11:28:37 error: [filename: xmn:rpc results] [line: 6] Sequence ']]>' not allowed in content
Oct 29 11:28:37 error: [filename: xmn:rpc results] [line: 6] [input: detected an error in element content] internal error
Oct 29 11:28:37 error: [filename: xmn:rpc results] [line: 6] Extra content at the end of the document
Oct 29 11:28:37 commit script: xml-mode: could not read content
Oct 29 11:28:37 invalid reply to rpc
Oct 29 11:28:37 could not get reply
Oct 29 11:28:37 xmlXPathCompiledEval: evaluation failed
Oct 29 11:28:37 runtime error: file /var/db/scripts/op/move-vlans.slax element value-of
Oct 29 11:28:37 XPath evaluation returned no result.

В общем, скрипты - это хорошо, но, I hope future versions will be even better. :)

Sunday, November 15, 2009

Born Blonde Toner Instructions

DoS & DDoS

all accustomed to the fact that from time to time there are DoS and DDoS-attack. What to do with them?
Resource owners and admins Corporate networks are trying to protect themselves. Any IDS, IPS, PIX, ASA, Netscreen, and many other buzzwords. This approach is logical, but has the obvious drawback: if the attack had put border router, or scored a channel to the ISP, located inside the means of detecting and preventing attacks are useless, you need to assist ISP.
What do ISP, how to protect customers? After all, his task - to transmit IP-traffic to the maximum quality (reliable, fast and lossless), filtration of its functions is not included. On traffic volumes ISP filtering (IPS) will cost unreasonable, customers simply do not need such a service for the money. Yes, and setting filters - the process is time consuming and individual, every client has their own needs and idiosyncrasies.
reaction ISP need only if the attack had put a channel, or border router client. Otherwise, the client has the opportunity filter itself, and to shift this function to the ISP makes no sense. Automatic filtering on the ISP side can be harmful. For example, the traffic is quite legitimate video can be mistakenly regarded as a DoS (big stream of UDP) and filtered, which obviously will not thank the customer.

One of reasonable and common solutions - BGP blackhole (rfc3882). It allows the customer to independently filter the traffic to the attacked IP from upstream, as it proannonsirovav / 32 with a pre-specified community. Even if the client from the attack fell router, BGP-Announcing the target network stops, no traffic, BGP can rise again, but with a blackhole-announcement attacked host. If a customer had to determine which host is being attacked. The downside is that it is a rough filtering, blocked all traffic on the specified IP-address, regardless of source, protocol, etc. Attacked host is sacrificed in order to not suffer more. Dignity - something that does not need assistance from personnel upstream.

The result is that the ISP should not automatically filter DoS-attacks on clients, but must have information about the attacks on both his clients and from them (Botnet) in order to be able, if necessary (if the attack is completely packed the client or the client's request) to quickly filter out the attack, even if the client does not know where from and where it goes. Since the attack often leads to an interruption of service (actually, this is its purpose), it is desirable to have information quickly and most detailed (some kind of attack, the intensity of that in the client, as they feel its routers, etc.) in order to make the decision (to filter and inform the client, not to filter out and tell your customer, ignore). In this case, the ISP has value only rude attack (pps, cps), and content analysis (viruses, hacking activity, even syn flood) - this is something with which a client can fight alone. Under this scheme, we are working on more than one year, we like customers, like, too. :-)

More details about implementation.
on external links removed sampled netflow. As practice shows, rate 8192 is sufficient to detect attacks. This flow remains at some time (a couple of hours, not more) through the flow-tools, in addition, goes to the processing of special daemon dds (samopisnomu), which deals with the detection of attacks. In case of abnormal activity (eg, from host xxxx on the client host yyyy udp stream detected with 40 Kpps) runs a script that includes alarm on monitorilke for a duty shift, and also wrote a letter in which:
- information about the attacked host (which AS and which client it belongs);
- as currently seems to mtr this host (as far as live routers along the way and he attacked host);
- listing related to this anomaly and traffic in the last 5 minutes of the saved in flow-tools. This
enough information for a person to be able, without undue delay and research to decide what to do. Flow can be seen from the listing, with which and to which ports the traffic comes as he looks like a legitimate. From mtr - how the client is suffering from this attack. Technically, one could, under certain conditions and automatically filter the attack, but I personally scary automate these actions, moreover, on the side of ISP.
Demon dds can get a team " cvs-d: pserver: cvs@happy.kiev.ua: / cvs co dds ". When processing ~ 20G traffic sampled rate 8192 he otzhiraet ~ 30M of memory and ~ 0.2% cpu load.

Btw, I have long wondered how people are struggling with the DoS-attacks without dds? If there is an attack, a router poplohelo - as it turns out, which host is attacked, and from what source? Are there any similar utilities?

Saturday, November 14, 2009

Who Is The Cartoon Old Lady

rating providers

not long ago wrote about the rating.
did to him in sisadminski: given the tools Self-view it, including graphics, and postings scored. And in actual fact, read reviews of many interesting and somewhere to go and ask for rating - No. :)
regular posts will not, but something, after all, publish.

specify at once - I was based solely on the BGP-tables. These findings may not correspond to financial relationships, and may even be at all the consequences of some Rout-faces.

Since October Rostelecom has ceased to announce its network through ReTN and was first place in the rankings. In November Synterra become a client Retn, which greatly improved his position, but in the first place did not lead.

in the Ukrainian segment at all remarkably stable, except for the fact that DataGroup walked in the ranking of Ukrtelecom.

table rankings for October (averaged) compared with ratings for September:










































 Rank   Diff   AS number   AS name   Country   /24   Pfxs   ASes   Degree/Upstreams/Peering   Updates/Withdr/WithdrRate 
 98 
    +1▲    
 12389   Rostelecom   RU    40 556     5444    1118   430/ 6 /16   1 897 473/159 702/3.938 
 109 
    -1▼    
 9002   ReTN   RU    33 428     3164    1021   858/ 3 /714   322 444/11 350/0.340 
 111 
     0◀    
 3216   Golden Telecom   RU    31 934     3640    1001   405/ 4 /110   1 068 485/76 117/2.384 
 117 
    0◀     
 20485   TransTelecom   RU    28 404     4804    995   392/ 3 /10   632 653/57 229/2.015 
 121 
    0◀    
 8342  RTComm RU 26,993 3126 854 103 / 4 / 18 614 558/75 049/2.780
130
  0 ◀  
8359 MTU Intell  RU    22 695     2590    880   97/ 3 /21   241 559/16 116/0.710 
 172 
    0◀    
 6854   Synterra   RU    14 368     1787    443   166/ 6 /6   432 764/20 365/1.417 
 254 
    0◀    
 3267   RUNNet   RU    8422     870    260   423/ 6 /317   220 411/18 516/2.199 
 299 
    0◀    
 8744   StartTelecom   RU    6669     649    172   100/ 1 /6   200 037/15 479/2.321 
 384 
    0◀    
 12695   DiNet   RU    4571     402    99   67/ 4 /4   145 752/10 045/2.198 
 413 
    0◀    
 29648   ComLine   RU    4197     368    74   31/ 2 /0   191 676/6009/1.432 
 416 
    0◀    
 8402   Corbina   RU    4165     181    51   56/ 5 /1   100 508/9062/2.176 
 420 
     0◀    
 13249   IT Systems   UA    4104     455    220   76/ 4 /8   83 379/6541/1.594 
 445 
    0◀    
 44237   CTC Core   RU    3824     194    33   24/ 3 /2   97 991/3441/0.900 
 448 
    0◀    
 35320   ETT   UA    3725     633    276   91/ 2 /10   119 183/13 331/3.579 
 468 
    +1▲    
 41440   SibirTelecom   RU    3565     152    41   29/ 3 /0   141 718/8649/2.426 
 482 
    -1▼    
 8997   SpbNit   RU    3469     477    37   29/ 2 /3   64 124/12 899/3.718 
 484 
    0◀    
 20764   Rascom   RU    3456     314    136   39/ 4 / 7 46 408/3429/0.992
494
  0 ◀  
35400 ; MFIST (USI) RU 3369 374 47 13 / 2 / 0 217 297/9913/2.942
 505 
    +1▲    
 43975   VolgaTelecom   RU    3261     128    27   14/ 3 /0   157 521/3186/0.977 
 511 
    +1▲    
 21219   Datagroup   UA    3227     647    328   190/ 1 /8   73 755/6351/1.968 
 523 
    -2▼    
 6849   UkrTelecom   UA    3144     309    96   42/ 2 /1   32 433/2531/0.805 
 548 
    +1▲    
 25229   Volia   UA    2949     78    30   27/ 2 /1   117 059/5747/1.949 
 569 
    +1▲    
 30751   Eurotel   RU    2781 389 73 17 / 4 / 5 125 524/9926/3.569
595
  +4 ▲  
39 792 Anders BG RU 2565 251  116   75/ 3 /12   46 398/3124/1.218 
 609 
    0◀    
 8732   Comcor   RU    2473     274    148   122/ 3 /7   59 400/2363/0.956 
 643 
    0◀    
 2118   Relcom   RU    2291     115    25   20/ 2 /5   48 771/3589/1.567 
 650 
    0◀    
 21127   ZapSibTTK   RU    2254     333    105   84/ 1 /0   54 842/6576/2.917 
 666 
     +1▲    
 12714   NetByNet   RU    2128     122    53   23/ 2 /5   25 711/3518/1.653 
 685 
    +5▲    
 5568   RBNet   RU    2056     109    42   41/ 5 /12   39 254/2069/1.006 
 715 
    -8▼    
 12883   Ucomline   UA    1890     512    153   72/ 5 /2   39 215/4737/2.506 
 729 
    +1▲    
 21414   RusComNet   RU    1838     172    68   49/ 6 /9   40 074/2479/1.349 
 741 
    +3▲    
 3255   UarNet   UA    1802     681    234   108/ 4 /6   43 611/4469/2.480 
 752 
    -2▼    
 20632   PeterStar   RU    1775     149    56   52/ 4 /6   37 828/1229/0.692 
 764 
    +2▲    
 44467   IRN-STC-AS AS for InterRegional Network STC   RU    1750     89    14   10/ 4 /0   113 392/7132/4.075 
 770 
    +2▲    
 28809   NaukaNet   RU    1720     256    102   66/ 8 /9   63 539/4913/2.856 
 775 
    -3▼    
 2854   Equant   RU    1696     238    105   93/ 3 /3   29 375/1607/0.948 
 778 
    -7▼    
 29632   NetAssist   UA    1682     91    39   21/ 1 /3   57 661/5379/3.198 
 817 
    0◀    
 21011   TopNet   UA    1538     461    200   87/ 3 /7   59 636/6183/4.020 
 856 
    +8▲    
 29076   CityTelecom   RU    1448     182    88   52/ 2 /12   29 464/9908/6.843 
 868 
    0◀    
 31133   Megafon   RU    1391     190    55   40/ 4 /3   41 281/3443/2.475 
 885 
    -2▼    
 28917   Fiord   RU    1338     230    81   48/ 2 / 10 28 423/1287/0.962
894
  -1 ▼  
8615 ; CNT-AS CNT Autonomous System RU 1327 41 22 25 / 3 / 3 34 717/514/0.387
 953 
    +3▲    
 12332   PRIMORYE-AS Far East Telecommunications Company   RU    1186     44    2   3/ 2 /0   126 357/10 412/8.779 

Here's the basic dynamics of Russian providers for the year (from November 2008 to November 2009):

Free Pokemon Soul Silver Online

Nipanimayu

When windsurfing or poppy drops some application, window pops up with a proposal to send this information to Microsoft, or, respectively, to Apple for review. Under FreeBSD, if the user is faced with mistake, he can say "send-pr" and send a problem report.

However, if I'm faced with a clear problem in Cisco / Juniper / Extreme, I should pay for it, to tell the manufacturer about problem. Even if my arms thrown iosom bark trapnuvshiysya dzhunosovy demon or a reproducible bug extreme. To me it is completely incomprehensible. It is not I need - if I have something not working, I'm not going to wait until the vendor fix bugs and release updates, it is unacceptable for me, I'll find another way to solve this problem so that more of this error is not encountered. And after that I can inform the vendor about the error (so that other users not stepping on the same rake), and I can not tell. Why prevent the vendors, so I reported it a bug? After all, it does not necessarily take the guarantee correction does not necessarily make bug reports available to the public - why not just give the opportunity to send bug reports?

If so did a vendor I would have thought that he had some quirk in the brain. But so do virtually everything, and that means something I do not understand.

Explain.

What To Say On A Engagement Card

Cisco: the speed limit transit Vilan

often have a task: to limit speed Vila, passing in transit through the Switch from one interface to another.
Catalyst easily supports ingress policing on a physical interface, but if you want does not restrict all traffic from an interface, and separate from Leland trunk ports, everything becomes harder. Especially if the rate should be limited to no the sum of all areas of Vila, and to each side independently (and usually it is true). Nevertheless, the problem is solved as the 3560 (3550, 3750, 3560-E, etc.), and in 6500.

3560 - through hierarchical policy-maps.
Пример конфига:

 
mls qos
no mls qos rewrite ip dscp
!
access-list 101 remark ANY
access-list 101 permit ip any any
!
class-map match-all INTERFACES-FOR-VLAN-10
match input-interface GigabitEthernet0/8
class-map match-all ANY
match access-group 101
!
policy-map POLICY-FOR-INTERFACES-FOR-VLAN-10
class INTERFACES-FOR-VLAN-10
police 10240000 1920000 exceed-action drop
!
policy-map POLICY-FOR-VLAN-10
class ANY
set dscp 7
service-policy POLICY-FOR-INTERFACES-FOR-VLAN-10
!
interface Vlan10
no ip address
service-policy input POLICY-FOR-VLAN-10

Счётчики do not work, but the speed is limited. Insignificant in view of (match of access-list to "permit any", an unused "set dscp") are really needed, without them no longer work. As they say, it is difficult to understand, but you must remember. Which dscp set - no matter (most importantly, not to 0), but apparently for different Wilanow need to install different values.
At the physical interface should be spelled "mls qos vlan-based". In the policy on an interface may be a few classes - for different input interfaces.

for 6500 is otherwise. The above method does not work there, the terms "match input-interface", "match vlan" and other head-on methods - too (at least on the "cheap" cards such as WS-X6724-SFP or WS-X6748-GE-TX) .
First had to try to bridge the speed limit for SVI and vlan-mapping back (to the number Vilan has not changed). Works, but cpu-based, routing processor immediately killed, and customers do not like the jitter. Therefore
was found more acceptable solution (tested on sup32, sup720 and vs-s720 with different line cards).

 mac packet-classify use vlan! mac access-list extended VLAN10 permit any any vlan 10! class-map match-all vlan10-in match access-group name VLAN10 policy-map iface1 class-map vlan10-in police cir 100000000 bc 1000000 be 2000000 conform-action transmit exceed-action drop! interface Vlan10 no ip address mac packet-classify 

At the physical interface (trunk), apply service-policy iface1. There may be many classes for different Wilanow. And on this physical interface should not be "mls qos vlan-based". That is the trouble: Vila in the trunk, which terminates locally, can no longer be restricted to the SVI, everything should be confined to on this physical interface to Wilanow.
In this case, the processor consumes humanity (up to certain limits), jitter is practically not growing, but the application control-plane such Whelan will still fall off (which makes one sad thought).
Incidentally, in this case, we can not only limit the speed, but also consider the traffic of Wilanow transit in each direction - the counters in policy-map regularly work.

Use Woolite In Front Loader

junos dynamic-db

In JunOs not so long ago (9.4 or 9.5 - too lazy to look) appeared dynamic-db .
feature interesting and useful - Primarily for prefix-lists. The idea is that some parts of the configuration specific to bgp (prefix-lists and policy-statements) can be taken to a separate config file, and from the ground there of reference. This greatly reduces the size of the main config, speeds up the commit, rollback history does not clog filters, auto-update. We have a prefix-lists - it is about 90% of the config, commit instead of a couple of minutes was held for about 20 seconds.
However, as it turned out, while there are not going smoothly. :-(
first thing encountered - you can not watch this the most dynamic config, but to go in there and tell the show, which is very inconvenient for scripting, and privilege requires configuration changes when only viewing. Had do op script show-dyn-conf.slax , showing the dynamic config (however, the problem with the privileges it does not solve).
And about a month of using dynamic-db from him without any apparent reason сорвало крышу (MX480, 9.5R2.7). :-(

 
[edit dynamic]
gul# run show ?
Possible completions:
\zп*\ termination
error: remote side unexpectedly closed connection
Connection to quoll.itsinternet.net closed.

Nov 13 16:32:52 /kernel: BAD_PAGE_FAULT: pid 49853 (mgd), uid 0: pc 0x8109a21 got a read fault at 0xbad006bc, x86 fault flags = 0x4
Nov 13 16:32:52 /kernel: Trapframe Register Dump:
Nov 13 16:32:52 /kernel: eax: baf4bd2e ecx: bad006bc edx: 08315890 ebx: 00000000
Nov 13 16:32:52 /kernel: esp: bfbe5270 ebp: bfbe52c8 esi: 00000000 edi: baf4bdf0
Nov 13 16:32:52 /kernel: eip: 08109a21 eflags: 00010206
Nov 13 16:32:52 /kernel: cs: 0033 ss: 003b ds: bfbd003b es: 831003b
Nov 13 16:32:52 /kernel: fs: 832003b trapno: 0000000c err: 00000004 Nov 13 16:32:52 / kernel: Page table info for PC address 0x8109a21: PDE = 0x2c460067, PTE = 60c31425 Nov 13 16:32:52 / kernel: Dumping 16 bytes starting at PC address 0x8109a21: Nov 13 16:32:52 / kernel: 3a January 1975 1e 84 c0 74 15 8d 41 January 1942 83 ec August 1950

cured deleting file / var / run / db / juniper.dyn.
had to renounce the use of dynamic-db. At least not yet. :-(