[prev in list] [next in list] [prev in thread] [next in thread] 

List:       bird-users
Subject:    Ubuntu Static Routes
From:       Jason Kopacko <jason () kopacko ! com>
Date:       2017-04-07 16:09:21
Message-ID: CAMAZ-tzndK6go_ptFZMBb4Xe1KXTBp=cqgAorQSO7iOyVFGcKw () mail ! gmail ! com
[Download RAW message or body]

Hello all,
I am new here, so please forgive me if this has been asked before.

I am setting up BIRD to handle RTBH and here is my config for reading in
local static routes and identifying route info:

filter ROUTE_INFO {
  gw = LOCAL_GW;
  print "******************************";
  if source ~ [ RTS_STATIC ] then {
    print "** [SOURCE] STATIC Route: ",net;
  }
  if source ~ [ RTS_INHERIT ] then {
    print "** [SOURCE] INHERIT Route: ",net;
  }
  if source ~ [ RTS_DEVICE ] then {
    print "** [SOURCE] DEVICE Route: ",net;
  }
  if source ~ [ RTS_STATIC_DEVICE ] then {
    print "** [SOURCE] STATIC_DEVICE Route: ",net;
  }
  if source ~ [ RTS_REDIRECT ] then {
    print "** [SOURCE] REDIRECT Route: ",net;
  }
  if source ~ [ RTS_BGP ] then {
    print "** [SOURCE] BGP Route: ",net;
  }
  if source ~ [ RTS_PIPE ] then {
    print "** [SOURCE] PIPE Route: ",net;
  }
  print "******************************";
  if dest ~ [ RTD_ROUTER ] then {
    print "** [DESTINATION] Neighbor Route: ",net;
  }
  if dest ~ [ RTD_DEVICE ] then {
    print "** [DESTINATION] Directly Connected Route: ",net;
  }
  if dest ~ [ RTD_MULTIPATH ] then {
    print "** [DESTINATION] Multipath Route: ",net;
  }
  if dest ~ [ RTD_BLACKHOLE ] then {
    print "** [DESTINATION] Blackhole Route: ",net;
  }
  if dest ~ [ RTD_UNREACHABLE ] then {
    print "** [DESTINATION] Unreachable Route: ",net;
  }
  if dest ~ [ RTD_PROHIBIT ] then {
    print "** [DESTINATION] Prohibited Route: ",net;
  }
  print "******************************";
  if scope ~ [ SCOPE_HOST ] then {
    print "** [SCOPE] Host Route: ",net;
  }
  if scope ~ [ SCOPE_LINK ] then {
    print "** [SCOPE] Link Route: ",net;
  }
  if scope ~ [ SCOPE_SITE ] then {
    print "** [SCOPE] Site Route: ",net;
  }
  if scope ~ [ SCOPE_ORGANIZATION ] then {
    print "** [SCOPE] Organization Route: ",net;
  }
  if scope ~ [ SCOPE_UNIVERSE ] then {
    print "** [SCOPE] Universe Route: ",net;
  }
  print "******************************";
  if cast ~ [ RTC_UNICAST ] then {
    print "** [TYPE] Unicast Route: ",net;
  }
  if cast ~ [ RTC_BROADCAST ] then {
    print "** [TYPE] Broadcast Route: ",net;
  }
  if cast ~ [ RTC_MULTICAST ] then {
    print "** [TYPE] Multicast Route: ",net;
  }
  if cast ~ [ RTC_ANYCAST ] then {
    print "** [TYPE] Anycast Route: ",net;
  }
}

protocol kernel {
  description "Kernel Blackholes";
  scan time 10;
  table BH;
  kernel table 120;
  learn;
  import filter ROUTE_INFO;
  export all;
}

I found that when I add a route:

-- sudo ip route add blackhole x.x.x.x/32 table 120

In my logs on the BIRD server,  I see this in my logs:

2017-04-07 12:00:45 <INFO> ******************************
2017-04-07 12:00:45 <INFO> ** [SOURCE] INHERIT Route: x.x.x.x/32
2017-04-07 12:00:45 <INFO> ******************************
2017-04-07 12:00:45 <INFO> ** [DESTINATION] Neighbor Route: x.x.x.x/32
2017-04-07 12:00:45 <INFO> ******************************
2017-04-07 12:00:45 <INFO> ** [SCOPE] Universe Route: x.x.x.x/32
2017-04-07 12:00:45 <INFO> ******************************
2017-04-07 12:00:45 <INFO> ** [TYPE] Unicast Route: x.x.x.x/32
2017-04-07 12:00:45 <INFO> ******************************

Shouldn't this be showing up as some sort of static or device route?

Also, shouldn't the destination be a blackhole route?

If these are attributes I need to be changing, I can do that, I just
figured they were being identified correctly.

Sent from my Verizon Wireless 4G LTE Droid Turbo 2.

[Attachment #3 (text/html)]

<div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif">Hello \
all,</div><div class="gmail_default" style="font-family:tahoma,sans-serif">I am new \
here, so please forgive me if this has been asked before.</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">I am setting up BIRD to \
handle RTBH and here is my config for reading in local static routes and identifying \
route info:</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default"><div \
class="gmail_default" style="font-family:tahoma,sans-serif">filter ROUTE_INFO \
{</div><div class="gmail_default" style="font-family:tahoma,sans-serif">   gw = \
LOCAL_GW;</div><div class="gmail_default" style="font-family:tahoma,sans-serif">   \
print &quot;******************************&quot;;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_STATIC ] then {</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">      print &quot;** \
[SOURCE] STATIC Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_INHERIT ] then {</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">      print &quot;** \
[SOURCE] INHERIT Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_DEVICE ] then {</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">      print &quot;** \
[SOURCE] DEVICE Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_STATIC_DEVICE ] then \
{</div><div class="gmail_default" style="font-family:tahoma,sans-serif">      print \
&quot;** [SOURCE] STATIC_DEVICE Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_REDIRECT ] then \
{</div><div class="gmail_default" style="font-family:tahoma,sans-serif">      print \
&quot;** [SOURCE] REDIRECT Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_BGP ] then {</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">      print &quot;** \
[SOURCE] BGP Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   if source ~ [ RTS_PIPE ] then {</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">      print &quot;** \
[SOURCE] PIPE Route: &quot;,net;</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">   }</div><div><div><font face="tahoma, \
sans-serif">   print \
&quot;******************************&quot;;</font></div><div><font face="tahoma, \
sans-serif">   if dest ~ [ RTD_ROUTER ] then {</font></div><div><font face="tahoma, \
sans-serif">      print &quot;** [DESTINATION] Neighbor Route: \
&quot;,net;</font></div><div><font face="tahoma, sans-serif">   \
}</font></div><div><font face="tahoma, sans-serif">   if dest ~ [ RTD_DEVICE ] then \
{</font></div><div><font face="tahoma, sans-serif">      print &quot;** [DESTINATION] \
Directly Connected Route: &quot;,net;</font></div><div><font face="tahoma, \
sans-serif">   }</font></div><div><font face="tahoma, sans-serif">   if dest ~ [ \
RTD_MULTIPATH ] then {</font></div><div><font face="tahoma, sans-serif">      print \
&quot;** [DESTINATION] Multipath Route: &quot;,net;</font></div><div><font \
face="tahoma, sans-serif">   }</font></div><div><font face="tahoma, sans-serif">   if \
dest ~ [ RTD_BLACKHOLE ] then {</font></div><div><font face="tahoma, sans-serif">     \
print &quot;** [DESTINATION] Blackhole Route: &quot;,net;</font></div><div><font \
face="tahoma, sans-serif">   }</font></div><div><font face="tahoma, sans-serif">   if \
dest ~ [ RTD_UNREACHABLE ] then {</font></div><div><font face="tahoma, sans-serif">   \
print &quot;** [DESTINATION] Unreachable Route: &quot;,net;</font></div><div><font \
face="tahoma, sans-serif">   }</font></div><div><font face="tahoma, sans-serif">   if \
dest ~ [ RTD_PROHIBIT ] then {</font></div><div><font face="tahoma, sans-serif">      \
print &quot;** [DESTINATION] Prohibited Route: &quot;,net;</font></div><div><font \
face="tahoma, sans-serif">   }</font></div></div><div><div \
style="font-family:tahoma,sans-serif">   print \
&quot;******************************&quot;;</div><div \
style="font-family:tahoma,sans-serif">   if scope ~ [ SCOPE_HOST ] then {</div><div \
style="font-family:tahoma,sans-serif">      print &quot;** [SCOPE] Host Route: \
&quot;,net;</div><div style="font-family:tahoma,sans-serif">   }</div><div \
style="font-family:tahoma,sans-serif">   if scope ~ [ SCOPE_LINK ] then {</div><div \
style="font-family:tahoma,sans-serif">      print &quot;** [SCOPE] Link Route: \
&quot;,net;</div><div style="font-family:tahoma,sans-serif">   }</div><div \
style="font-family:tahoma,sans-serif">   if scope ~ [ SCOPE_SITE ] then {</div><div \
style="font-family:tahoma,sans-serif">      print &quot;** [SCOPE] Site Route: \
&quot;,net;</div><div style="font-family:tahoma,sans-serif">   }</div><div \
style="font-family:tahoma,sans-serif">   if scope ~ [ SCOPE_ORGANIZATION ] then \
{</div><div style="font-family:tahoma,sans-serif">      print &quot;** [SCOPE] \
Organization Route: &quot;,net;</div><div style="font-family:tahoma,sans-serif">   \
}</div><div style="font-family:tahoma,sans-serif">   if scope ~ [ SCOPE_UNIVERSE ] \
then {</div><div style="font-family:tahoma,sans-serif">      print &quot;** [SCOPE] \
Universe Route: &quot;,net;</div><div style="font-family:tahoma,sans-serif">   \
}</div><div><div><font face="tahoma, sans-serif">   print \
&quot;******************************&quot;;</font></div><div><font face="tahoma, \
sans-serif">   if cast ~ [ RTC_UNICAST ] then {</font></div><div><font face="tahoma, \
sans-serif">      print &quot;** [TYPE] Unicast Route: \
&quot;,net;</font></div><div><font face="tahoma, sans-serif">   \
}</font></div><div><font face="tahoma, sans-serif">   if cast ~ [ RTC_BROADCAST ] \
then {</font></div><div><font face="tahoma, sans-serif">      print &quot;** [TYPE] \
Broadcast Route: &quot;,net;</font></div><div><font face="tahoma, sans-serif">   \
}</font></div><div><font face="tahoma, sans-serif">   if cast ~ [ RTC_MULTICAST ] \
then {</font></div><div><font face="tahoma, sans-serif">      print &quot;** [TYPE] \
Multicast Route: &quot;,net;</font></div><div><font face="tahoma, sans-serif">   \
}</font></div><div><font face="tahoma, sans-serif">   if cast ~ [ RTC_ANYCAST ] then \
{</font></div><div><font face="tahoma, sans-serif">      print &quot;** [TYPE] \
Anycast Route: &quot;,net;</font></div><div><font face="tahoma, sans-serif">   \
}</font></div></div><div \
style="font-family:tahoma,sans-serif">}</div></div></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default"><div \
class="gmail_default"><font face="tahoma, sans-serif">protocol kernel \
{</font></div><div class="gmail_default"><font face="tahoma, sans-serif">   \
description &quot;Kernel Blackholes&quot;;</font></div><div \
class="gmail_default"><font face="tahoma, sans-serif">   scan time \
10;</font></div><div class="gmail_default"><font face="tahoma, sans-serif">   table \
BH;</font></div><div class="gmail_default"><font face="tahoma, sans-serif">   kernel \
table 120;</font></div><div class="gmail_default"><font face="tahoma, sans-serif">   \
learn;</font></div><div class="gmail_default"><font face="tahoma, sans-serif">   \
import filter ROUTE_INFO;</font></div><div class="gmail_default"><font face="tahoma, \
sans-serif">   export all;</font></div><div class="gmail_default"><font face="tahoma, \
sans-serif">}</font></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><br></div></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">I found that when I add a route:</div><div \
class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div \
class="gmail_default" style="font-family:tahoma,sans-serif">-- sudo ip route add \
blackhole x.x.x.x/32 table 120<br></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif">In my logs on the BIRD server,   I see this in \
my logs:</div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" \
style="font-family:tahoma,sans-serif"><div class="gmail_default">2017-04-07 12:00:45 \
&lt;INFO&gt; ******************************</div><div \
class="gmail_default">2017-04-07 12:00:45 &lt;INFO&gt; ** [SOURCE] INHERIT Route: \
x.x.x.x/32</div><div class="gmail_default">2017-04-07 12:00:45 &lt;INFO&gt; \
******************************</div><div class="gmail_default">2017-04-07 12:00:45 \
&lt;INFO&gt; ** [DESTINATION] Neighbor Route: x.x.x.x/32</div><div \
class="gmail_default">2017-04-07 12:00:45 &lt;INFO&gt; \
******************************</div><div class="gmail_default">2017-04-07 12:00:45 \
&lt;INFO&gt; ** [SCOPE] Universe Route: x.x.x.x/32</div><div \
class="gmail_default">2017-04-07 12:00:45 &lt;INFO&gt; \
******************************</div><div class="gmail_default">2017-04-07 12:00:45 \
&lt;INFO&gt; ** [TYPE] Unicast Route: x.x.x.x/32</div><div \
class="gmail_default">2017-04-07 12:00:45 &lt;INFO&gt; \
******************************</div><div><br></div><div>Shouldn&#39;t this be showing \
up as some sort of static or device route?</div><div><br></div><div>Also, \
shouldn&#39;t the destination be a blackhole route?</div><div><br></div><div>If these \
are attributes I need to be changing, I can do that, I just figured they were being \
identified correctly.</div></div><div><div class="gmail_signature"><div \
dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><br><font \
face="tahoma,sans-serif">Sent from my Verizon Wireless 4G LTE Droid Turbo \
2.</font></div></div></div></div></div></div></div> </div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic