[PATCH] static: Support for BFD controlled static routes

2015-07-14 Thread Steve Atkinson
Hi,

This is my first submission into the community, it is a change to the static 
protocol to support the addition / deletion of static routes based on the 
availability of the gateway as determined by BFD.
This was implemented as a proof of concept for one of our customers,  it 
appears to work although has only been tested against the bfd-beacon, with 
routes exported to a remote BGP associated router.

There two non-related changes to the which move the declaration of some 
variable to the start of the appropriate function, this is because we are using 
a very only GCC compiler that doesn't allow declaration mid code.

Regards

Steve

===
Steve Atkinson CEng BEng(hon) MIET
Teligent Ltd
2 Kings Hill Avenue
West Malling
Kent
ME19 4AQ

Telephone: +44(0) 1732 879 655Fax: +44 (0) 1732 879601

[YourHomePhoneIsAnywhere]

The information in this email is confidential. The contents may not be 
disclosed or used by anyone other than the addressee. If you are not the 
intended recipient, please notify the sender immediately at the above address. 
The sender cannot accept any responsibility for the accuracy or completeness of 
this message as it has been transmitted over a public network.

[BSI]

Teligent Ltd is registered in England and Wales, registration number 2893478.  
Registered office Lion House, Red Lion Street, London WC1R 4GB.  VAT 
registration GB639938577.




patch.bfd.controlled.static.routes
Description: patch.bfd.controlled.static.routes


Aw: define command is not working ?

2015-07-14 Thread Kai
Hi!

If I remember correctly, I tried this as well. And again, if my memory serves 
me well, you cannot use a defined constant with the router id-directive. 
(Don't know the reason.)
But you should be able to use constants in pretty much of all other cases.

Best regards, Kai


 Gesendet: Dienstag, 14. Juli 2015 um 11:50 Uhr
 Von: Peter Hudec phu...@cnc.sk
 An: bird-users@network.cz
 Betreff: define command is not working ?

 Hi,
 
 I'm trying to make the configuration more template and variable based.
 but I'm fighting with this .. Am I using the define command wrong? I
 seen few examples how to use define command ..
 
 ---
 log stderr all;
 log syslog all;
 
 define bgp_router_id = 192.168.93.104;
 
 # Override router ID
 router id bgp_router_id;
 
 ---
 
 On the line with 'router id' I've got 'syntax error'.
 
 os: debian jessie
 bird: 1.4.5
 
   best regards
   Peter
 
 -- 
 *Peter Hudec*
 Infraštruktúrny architekt
 phu...@cnc.sk mailto:phd...@cnc.sk
 
 *CNC, a.s.*
 Borská 6, 841 04 Bratislava
 Recepcia: +421 2  35 000 100
 
 Mobil:+421 905 997 203
 *www.cnc.sk* http:///www.cnc.sk
 




define command is not working ?

2015-07-14 Thread Peter Hudec
Hi,

I'm trying to make the configuration more template and variable based.
but I'm fighting with this .. Am I using the define command wrong? I
seen few examples how to use define command ..

---
log stderr all;
log syslog all;

define bgp_router_id = 192.168.93.104;

# Override router ID
router id bgp_router_id;

---

On the line with 'router id' I've got 'syntax error'.

os: debian jessie
bird: 1.4.5

best regards
Peter

-- 
*Peter Hudec*
Infraštruktúrny architekt
phu...@cnc.sk mailto:phd...@cnc.sk

*CNC, a.s.*
Borská 6, 841 04 Bratislava
Recepcia: +421 2  35 000 100

Mobil:+421 905 997 203
*www.cnc.sk* http:///www.cnc.sk



Re: Aw: define command is not working ?

2015-07-14 Thread Peter Hudec
Hi,

thanks, I put the just value.

Any way I have antother snippet ;(

---
define anycast_bgp_as = 57801;
define anycast_a_bgp_community = 11;
define anycast_a_bgp_med = 100;


filter bgp_out_anycast {

if (match_anycast_a()) then {   
bgp_community.add((anycast_bgp_as,anycast_a_bgp_community));
if (anycast_a_bgp_med  0) {
bgp_med = anycast_a_bgp_med;
}
accept;
}

---

The problem is in IF statement.
I'm thinking to switch to ansible end templates :)

best regards
Peter


On 14/07/15 12:04, Kai wrote:
 Hi!
 
 If I remember correctly, I tried this as well. And again, if my memory serves 
 me well, you cannot use a defined constant with the router id-directive. 
 (Don't know the reason.)
 But you should be able to use constants in pretty much of all other cases.
 
 Best regards, Kai
 
 
 Gesendet: Dienstag, 14. Juli 2015 um 11:50 Uhr
 Von: Peter Hudec phu...@cnc.sk
 An: bird-users@network.cz
 Betreff: define command is not working ?

 Hi,

 I'm trying to make the configuration more template and variable based.
 but I'm fighting with this .. Am I using the define command wrong? I
 seen few examples how to use define command ..

 ---
 log stderr all;
 log syslog all;

 define bgp_router_id = 192.168.93.104;

 # Override router ID
 router id bgp_router_id;
 
 ---

 On the line with 'router id' I've got 'syntax error'.

 os: debian jessie
 bird: 1.4.5

  best regards
  Peter

 -- 
 *Peter Hudec*
 Infraštruktúrny architekt
 phu...@cnc.sk mailto:phd...@cnc.sk

 *CNC, a.s.*
 Borská 6, 841 04 Bratislava
 Recepcia: +421 2  35 000 100

 Mobil:+421 905 997 203
 *www.cnc.sk* http:///www.cnc.sk


 


-- 
*Peter Hudec*
Infraštruktúrny architekt
phu...@cnc.sk mailto:phd...@cnc.sk

*CNC, a.s.*
Borská 6, 841 04 Bratislava
Recepcia: +421 2  35 000 100

Mobil:+421 905 997 203
*www.cnc.sk* http:///www.cnc.sk



Re: OSPF and mass route deletion

2015-07-14 Thread Andrew

I mean host routes mass removing.

Maybe OSPF really isn't best choice for this. Earlier, with quagga, 
there was no troubles with it. I didn't look deeply to RFC, so I thouht 
that single LSA can carry multiple prefixes. Possibly quagga just sends 
packets slower...


14.07.2015 17:47, Olivier Benghozi пишет:

OSPF doesn't delete routes, it sends LSAs.
It seems that you are redistributing a lot of single IP addresses in OSPF (as 
external routes). So there's one LSA type 5 for each single redistributed /32.

OSPF is not the proper choice for this usecase, and it's not a Quagga or BIRD 
issue.
BGP is the protocol to use for such cases. Many routes, few messages, 
scalability.



Le 14 juil. 2015 à 09:20, Andrew ni...@seti.kr.ua a écrit :

When routes are deleted (for ex., terminating a lot of PPP tunnels for some 
reason in same time), it seems like each removed route is sent into separate 
OSPF packet that causes troubles with OSPF in some cases (for ex., there's 
troubles with old quagga).

Is there a possibility to add some rate-limiting (for ex., limit to 10 messages 
per second), and aggregate separate 'route deleted' messages to one packet?