On Mon, Apr 17, 2006 at 04:47:52PM +0200, Thomas Bader wrote:
> Hi all
> 
> I need to multihome a network, connecting it to two upstream providers.
> Besides that I also need some iBGP sessions inside that network to
> connect one or two inner routers to the two border routers. The whole
> project will begin in one or two months and I'm now evaluating possible
> solutions.
> 
> I have setup a small test scenario to test OpenBGPD. There I have two
> routers in AS 65001 and one router in AS 65002. You can find the
> configuration of one of the AS 65001 routers below. I wanted to use IPv4
> and IPv6. During my first tries I found out that IPv6-functionality is
> not yet complete in the bgpd shipped with OpenBSD 3.8. Therefore I took
> bgpd and bgpctl HEAD revisions from CVS and I got my setup working so
> far and feel quite comfortable with OpenBGPD. I only have a few
> questions left:
> 
> In the HEAD revision, the "announce self" does not seem to work anymore
> (I get a "syntax error" message). Apparently, the default behaviour
> seems to be "announce all". This makes my two AS 65001 routers
> announcing the routes which they receive over iBGP to AS 65002. I
> quickly looked at the source and there seems to be no compensation to
> "announce self". Is there a possibility to configure bgpd to only
> announce the prefixes set through a "network" statement to a specific
> peer without using filters?
> 

Fast fix use 'announce "self"' or the following diff.

-- 
:wq Claudio

Index: parse.y
===================================================================
RCS file: /cvs/src/usr.sbin/bgpd/parse.y,v
retrieving revision 1.185
diff -u -p -r1.185 parse.y
--- parse.y     4 Apr 2006 12:03:26 -0000       1.185
+++ parse.y     17 Apr 2006 15:46:09 -0000
@@ -690,6 +690,12 @@ peeropts   : REMOTEAS asnumber     {
                                fatal("king bula sees borked AFI");
                        }
                }
+               | ANNOUNCE CAPABILITIES yesno {
+                       curpeer->conf.announce_capa = $3;
+               }
+               | ANNOUNCE SELF {
+                       curpeer->conf.announce_type = ANNOUNCE_SELF;
+               }
                | ANNOUNCE STRING {
                        if (!strcmp($2, "self"))
                                curpeer->conf.announce_type = ANNOUNCE_SELF;
@@ -846,9 +852,6 @@ peeropts    : REMOTEAS asnumber     {
                                curpeer->conf.auth.auth_keylen_out = keylen;
                        }
                        free($7);
-               }
-               | ANNOUNCE CAPABILITIES yesno {
-                       curpeer->conf.announce_capa = $3;
                }
                | SET filter_set_opt    {
                        struct filter_rule      *r;

Reply via email to