<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-text-flowed" style="font-family: -moz-fixed;
      font-size: 12px;" lang="x-unicode">Ok, i have DNS running on one
      peer (route client) and listening on a virtual sub-interface (I
      intend to add more and do anycasting). the other peer will be a
      route server.
      <br>
      It is the route to the virtual IP on the route client that I want
      to propagate to the route server.
      <br>
      <br>
      bird> sh protocols all
      <br>
      name     proto    table    state  since       info
      <br>
      kernel1  Kernel   master   up     14:03
      <br>
        Preference:     10
      <br>
        Input filter:   ACCEPT
      <br>
        Output filter:  ACCEPT
      <br>
        Routes:         0 imported, 0 exported, 0 preferred
      <br>
        Route change stats:     received   rejected   filtered ignored  
      accepted
      <br>
          Import updates:              0          0          0
      0          0
      <br>
          Import withdraws:            0          0        ---
      0          0
      <br>
          Export updates:              0          0          0
      ---          0
      <br>
          Export withdraws:            0        ---        ---
      ---          0
      <br>
      <br>
      device1  Device   master   up     14:03
      <br>
        Preference:     240
      <br>
        Input filter:   ACCEPT
      <br>
        Output filter:  REJECT
      <br>
        Routes:         0 imported, 0 exported, 0 preferred
      <br>
        Route change stats:     received   rejected   filtered ignored  
      accepted
      <br>
          Import updates:              0          0          0
      0          0
      <br>
          Import withdraws:            0          0        ---
      0          0
      <br>
          Export updates:              0          0          0
      ---          0
      <br>
          Export withdraws:            0        ---        ---
      ---          0
      <br>
      <br>
      RC1p     BGP      master   up     14:04       Established
      <br>
        Description:    Route Client1 Peer
      <br>
        Preference:     100
      <br>
        Input filter:   ACCEPT
      <br>
        Output filter:  ACCEPT
      <br>
        Routes:         0 imported, 0 exported, 0 preferred
      <br>
        Route change stats:     received   rejected   filtered ignored  
      accepted
      <br>
          Import updates:              0          0          0
      0          0
      <br>
          Import withdraws:            0          0        ---
      0          0
      <br>
          Export updates:              0          0          0
      ---          0
      <br>
          Export withdraws:            0        ---        ---
      ---          0
      <br>
        BGP state:          Established
      <br>
          Neighbor address: 192.168.128.32
      <br>
          Neighbor AS:      64496
      <br>
          Neighbor ID:      192.168.128.32
      <br>
          Neighbor caps:    refresh AS4
      <br>
          Session:          external route-server AS4
      <br>
          Source address:   192.168.128.31
      <br>
          Hold timer:       179/240
      <br>
          Keepalive timer:  37/80
      <br>
      <br>
      #Route client bird.conf
      <br>
      <br>
      router id 192.168.128.21;
      <br>
      <br>
      #protocol direct {
      <br>
      #       interface "-eth*", "*"; # Restrict network interfaces it
      works with
      <br>
      #}
      <br>
      <br>
      protocol kernel {
      <br>
      #       learn;                  # Learn all alien routes from the
      kernel
      <br>
              persist;                # Don't remove routes on bird
      shutdown
      <br>
              scan time 20;           # Scan kernel routing table every
      20 seconds
      <br>
      #       import none;            # Default is import all
      <br>
              export all;             # Default is export none
      <br>
      #       kernel table 5;         # Kernel table to synchronize with
      (default: main)
      <br>
      }
      <br>
      <br>
      protocol device {
      <br>
              scan time 10;           # Scan interfaces every 10 seconds
      <br>
      }
      <br>
      <br>
      protocol bgp RouteSrv {
      <br>
      #       disabled;
      <br>
              description "Route Server Peer";
      <br>
              local as 64496;
      <br>
              neighbor 192.168.128.20 as 65000;
      <br>
              import all;
      <br>
              export all;
      <br>
      #       multihop;
      <br>
      }
      <br>
      <br>
      #Route Server bird.conf
      <br>
      <br>
      router id 192.168.128.20;
      <br>
      <br>
      # Martian networks
      <br>
      function net_martian()
      <br>
      {
      <br>
        return net ~ [ 169.254.0.0/16+, 172.16.0.0/12+, 192.168.0.0/16+,
      10.0.0.0/8+,
      <br>
          127.0.0.0/8+, 224.0.0.0/4+, 240.0.0.0/4+, 0.0.0.0/32-,
      0.0.0.0/0{25,32}, 0.0.0.0/0{0,7} ];
      <br>
      }
      <br>
      <br>
      #Local networks
      <br>
      function net_local()
      <br>
      {
      <br>
        return net ~ [ 192.168.128.0/24+, 192.168.122.0/24+ ];
      <br>
      }
      <br>
      <br>
      function rt_import(int asn; int set peer_asns; prefix set
      peer_nets)
      <br>
      {
      <br>
        if ! (net ~ peer_nets) then return false;
      <br>
        if ! (bgp_path.last ~ peer_asns) then return false;
      <br>
        if bgp_path.first != asn then return false;
      <br>
        if bgp_path.len > 64 then return false;
      <br>
        if bgp_next_hop != from then return false;
      <br>
        return true;
      <br>
      }
      <br>
      <br>
      function rt_export_all()
      <br>
      {
      <br>
        if proto = "static_bgp" then return true;
      <br>
        if source != RTS_BGP then return false;
      <br>
        if net_martian() then return false;
      <br>
        if bgp_path.len > 64 then return false;
      <br>
        return true;
      <br>
      }
      <br>
      <br>
      #protocol direct {
      <br>
      #       interface "-eth*", "*"; # Restrict network interfaces it
      works with
      <br>
      #}
      <br>
      <br>
      protocol kernel {
      <br>
      #       learn;                  # Learn all alien routes from the
      kernel
      <br>
              persist;                # Don't remove routes on bird
      shutdown
      <br>
              scan time 20;           # Scan kernel routing table every
      20 seconds
      <br>
      #       import none;            # Default is import all
      <br>
              export all;             # Default is export none
      <br>
      #       kernel table 5;         # Kernel table to synchronize with
      (default: main)
      <br>
      }
      <br>
      <br>
      protocol device {
      <br>
              scan time 10;           # Scan interfaces every 10 seconds
      <br>
      }
      <br>
      <br>
      filter bgp_in_client
      <br>
      {
      <br>
        if ! rt_import(64496, [ 64496 ], [ 192.168.128.0/24,
      10.0.0.0/23+ ]) then reject;
      <br>
        accept;
      <br>
      }
      <br>
      <br>
      filter bgp_out_client
      <br>
      {
      <br>
        if ! rt_export_all() then reject;
      <br>
        accept;
      <br>
      }
      <br>
      <br>
      <br>
      protocol bgp RC1 {
      <br>
      #       disabled;
      <br>
              description "Route Client1 Peer";
      <br>
          local as 65000;
      <br>
          neighbor 192.168.128.21 as 64496;
      <br>
          import filter bgp_in_client;
      <br>
          export filter bgp_out_client;
      <br>
          rs client;
      <br>
      }
      <br>
      <br>
      [admin@rs ~]# ifconfig -a
      <br>
      eth0      Link encap:Ethernet  HWaddr 00:1A:64:22:5F:E9
      <br>
                inet addr:192.168.128.31  Bcast:192.168.128.255
      Mask:255.255.255.0
      <br>
                inet6 addr: fe80::21a:64ff:fe22:5fe9/64 Scope:Link
      <br>
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      <br>
                RX packets:3726 errors:0 dropped:0 overruns:0 frame:0
      <br>
                TX packets:1964 errors:0 dropped:0 overruns:0 carrier:0
      <br>
                collisions:0 txqueuelen:1000
      <br>
                RX bytes:331155 (323.3 KiB)  TX bytes:187893 (183.4 KiB)
      <br>
                Interrupt:17
      <br>
      <br>
      lo        Link encap:Local Loopback
      <br>
                inet addr:127.0.0.1  Mask:255.0.0.0
      <br>
                inet6 addr: ::1/128 Scope:Host
      <br>
                UP LOOPBACK RUNNING  MTU:16436  Metric:1
      <br>
                RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      <br>
                TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      <br>
                collisions:0 txqueuelen:0
      <br>
                RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
      <br>
      <br>
      [admin@rc ~]# ifconfig -a
      <br>
      eth0      Link encap:Ethernet  HWaddr 00:1A:64:22:60:01
      <br>
                inet addr:192.168.128.33  Bcast:192.168.128.255
      Mask:255.255.255.0
      <br>
                inet6 addr: fe80::21a:64ff:fe22:6001/64 Scope:Link
      <br>
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      <br>
                RX packets:25056 errors:0 dropped:0 overruns:0 frame:0
      <br>
                TX packets:10341 errors:0 dropped:0 overruns:0 carrier:0
      <br>
                collisions:0 txqueuelen:1000
      <br>
                RX bytes:2368094 (2.2 MiB)  TX bytes:1065046 (1.0 MiB)
      <br>
                Interrupt:17
      <br>
      <br>
      lo        Link encap:Local Loopback
      <br>
                inet addr:127.0.0.1  Mask:255.0.0.0
      <br>
                inet6 addr: ::1/128 Scope:Host
      <br>
                UP LOOPBACK RUNNING  MTU:16436  Metric:1
      <br>
                RX packets:22 errors:0 dropped:0 overruns:0 frame:0
      <br>
                TX packets:22 errors:0 dropped:0 overruns:0 carrier:0
      <br>
                collisions:0 txqueuelen:0
      <br>
                RX bytes:1900 (1.8 KiB)  TX bytes:1900 (1.8 KiB)
      <br>
      <br>
      lo:0      Link encap:Local Loopback
      <br>
                inet addr:10.0.1.1  Mask:255.255.255.255
      <br>
                UP LOOPBACK RUNNING  MTU:16436  Metric:1
      <br>
      <br>
      This worked ok on Ubuntu
      <br>
      <br>
      <br>
      <br>
      On 09/09/12 18:49, Виталий Туровец wrote:
      <br>
      <blockquote type="cite" style="color: #000000;">2012/9/9 ril.kidd
        <a class="moz-txt-link-rfc2396E"
          href="mailto:ril.kidd@gmail.com"><ril.kidd@gmail.com></a>:
        <br>
        <blockquote type="cite" style="color: #000000;">The following
          commands give me: Peer is not a protocol
          <br>
          <br>
          <br>
          birdc show protocols all Peer
          <br>
          birdc show route all protocol Peer
          <br>
          birdc show route all export Peer
          <br>
          <br>
          Output from "'# netstat -rn" is:
          <br>
          Kernel IP routing table
          <br>
          Destination     Gateway         Genmask         Flags   MSS
          Window  irtt
          <br>
          Iface
          <br>
          192.168.128.0   0.0.0.0         255.255.255.0   U         0
          0          0
          <br>
          eth0
          <br>
          169.254.0.0     0.0.0.0         255.255.0.0     U         0
          0          0
          <br>
          eth0
          <br>
          0.0.0.0         192.168.128.28  0.0.0.0         UG        0
          0          0
          <br>
          eth0
          <br>
        </blockquote>
        Well, 1: which routes you expect your bird to propagate to peer?
        <br>
        169.254.0.0/16 network. must NOT be routed anyway.
        <br>
        2: ports out otput of "show protocols all " command here please.
        <br>
        3: show your FULL and UNCUT config file.
        <br>
        4: ifconfig -a
        <br>
        <br>
        <br>
        <blockquote type="cite" style="color: #000000;">
          <br>
          On 09/09/12 17:18, Виталий Туровец wrote:
          <br>
          <blockquote type="cite" style="color: #000000;">2012/9/9
            ril.kidd <a class="moz-txt-link-rfc2396E"
              href="mailto:ril.kidd@gmail.com"><ril.kidd@gmail.com></a>:
            <br>
            <blockquote type="cite" style="color: #000000;">On 09/09/12
              16:57, ril.kidd wrote:
              <br>
              <br>
              Sorry, bird.conf looks like this:
              <br>
              <br>
              <br>
              router id 192.168.128.21;
              <br>
              <br>
              #protocol direct {
              <br>
              #       interface "-eth*", "*"; # Restrict network
              interfaces it works
              <br>
              with
              <br>
              #}
              <br>
              <br>
              protocol kernel {
              <br>
              #       learn;                  # Learn all alien routes
              from the kernel
              <br>
                        persist;                # Don't remove routes on
              bird shutdown
              <br>
                        scan time 20;           # Scan kernel routing
              table every 20
              <br>
              seconds
              <br>
              #       import none;            # Default is import all
              <br>
                        export all;             # Default is export none
              <br>
              #       kernel table 5;         # Kernel table to
              synchronize with
              <br>
              (default:
              <br>
              main)
              <br>
              }
              <br>
              <br>
              protocol device {
              <br>
                        scan time 10;           # Scan interfaces every
              10 seconds
              <br>
              }
              <br>
              <br>
              protocol bgp Peer {
              <br>
              #       disabled;
              <br>
                        description "Peer";
              <br>
                        local as 64496;
              <br>
                        neighbor 192.168.128.20 as 65000;
              <br>
                        import all;
              <br>
                        export all;
              <br>
              #       multihop;
              <br>
              }
              <br>
              <br>
              On 09/09/12 16:53, Crest wrote:
              <br>
              <br>
              On 09.09.2012 17:50, ril.kidd wrote:
              <br>
              <br>
              On 09/09/12 16:10, ril.kidd wrote:
              <br>
              <br>
              hello,
              <br>
              I have two ubuntu 12.04 linux servers running bird 1.3.8
              and peered with
              <br>
              each other.
              <br>
              The routes from each show in both routing tables.
              <br>
              <br>
              I installed centos 6.3 on an (identically configured)
              different set of
              <br>
              servers and copied the configuration files. I see peering
              established but
              <br>
              no
              <br>
              routes in both routing tables. It doesnt work when peered
              with the ubuntu
              <br>
              servers either.
              <br>
              Please what may be wrong? Or am I just missing something?
              <br>
              <br>
              <br>
              Actually, when i do "show route" from birdc> i dont get
              any results
              <br>
              <br>
              Sorry my crystal ball is unaligned how about a few
              bird.conf snippets to
              <br>
              calibrate it?
              <br>
              <br>
              <br>
              <br>
            </blockquote>
            What about output from these commands:
            <br>
            birdc show protocols all Peer
            <br>
            birdc show route all protocol Peer
            <br>
            birdc show route all export Peer
            <br>
            netstat -rn
            <br>
            ?
            <br>
            <br>
          </blockquote>
        </blockquote>
        <br>
        <br>
      </blockquote>
      <br>
    </div>
  </body>
</html>