1Note: this file lists major user-visible changes only.
2
3* Changes in Quagga []
4
5- [zebra] "no link-detect" is no longer the default.
6
7    The previous release of Quagga always explicitly writes-out the
8    link-detect configuration state.  Therefore, to retain current behavior
9    save your config with the prior release before updating.
10
11    Otherwise, review your configuration.  Note, most users will generally
12    want to have link-detect enabled, and so can just remove 'no
13    link-detect' from their interface configuration.
14
15    This release also adds a global configuration to specify the default,
16    which can be specified in the zebra configuration as:
17
18      default link-detect (on|off)
19
20    This will then apply to any interface which does not have link-detect
21    explicitly configured.
22
23* Changes in Quagga 0.99.24
24
25User-visible changes:
26- [pimd] New daemon: pimd provides IPv4 PIM-SSM multicast routing.
27- [bgpd] New feature: "next-hop-self all" to override nexthop on iBGP route
28    reflector setups.
29- [bgpd] route-maps have a new action "set ipv6 next-hop peer-address"
30- [bgpd] route-maps have a new action "set as-path prepend last-as"
31- [bgpd] Update validity checking (particularly MP-BGP / IPv6 routes) was
32    touched up significantly.  Please report possible bugs.
33- [ripd] New feature: RIP for IPv4 now supports equal-cost multipath (ECMP)
34- [zebra] Multicast RIB support has been extended.  It still is IPv4 only.
35- [zebra] "no link-detect" is now printed in configurations since it won't
36    be the default anymore soon.  To retain current behaviour, re-save your
37    configuration after updating to 0.99.24.
38
39Distributor-visible changes:
40- --enable-pimd is added to enable pimd.  It is considered experimental, though
41    unless the distribution target is embedded systems with little flash, there
42    is no reason to not include it in packages.
43- --disable-ipv6 no longer exists as an option.  It's 2015, your C library
44    really needs to have IPv6 support by now.
45- --disable-netlink no longer exists as an option.  It didn't work anyway.
46- --disable-solaris no longer exists as an option.  It only controlled some
47    init scripts.
48- --enable-isisd is now the default.
49- mrlg.cgi is no longer included (it was severely outdated).  It can be found
50    independently at http://mrlg.op-sec.us/
51- build on Linux with the musl C library should now work
52
53* Changes in Quagga 0.99.23
54
55Known issues:
56- [bgpd] setting an extcommunity in a route map on a route that already has
57  an extcommunity attribute will cause bgpd to crash.  This issue will be
58  fixed in a followup minor release.
59
60User-visible changes:
61- [lib] Performance enhancements on hashes and timers.
62- [bgpd] New feature: iBGP TTL security.
63- [bgpd] New feature: relaxed bestpath criteria for multipath and improved
64  display of multipath routes in "show ip bgp".  Scripts parsing this output
65  may need to be updated.
66- [bgpd] Multiprotocol peerings over IPv6 now try to find a more appropriate
67  IPv4 nexthop by looking at the interface.
68- [ospf6d] A large amount of changes has been merged for ospf6d.  Careful
69  evaluation prior to deployment is recommended.
70- [zebra] Recursive route support has been overhauled.  Scripts parsing
71  "show ip route" output may need adaptation.
72- [zebra] IPv6 address management has been improved regarding tentative
73  addresses.  This is visible in that a freshly configured address will not
74  immediately be marked as usable.
75- [*] a lot of bugs have been fixed, please refer to the git log
76
77* Changes in Quagga 0.99.22
78
79- [bgpd] The semantics of default-originate route-map have changed.
80  The route-map is now used to advertise the default route conditionally.
81  The old behaviour which allowed to set attributes on the originated
82  default route is no longer supported.
83- [bgpd] There is now a replace-as option to neighbor ... local-as ...
84  no-prepend.  For details, refer to the user documentation.
85- [zebra] An FPM interface has been added.  This provides an alternate
86  interface to routing information and is geared at OpenFlow & co.
87- [snmp] AgentX is now supported;  the old smux backend is considered
88  deprecated.  ospf6d has also had OSPFV3-MIB added.
89- [*] several issues with configuration save/load/apply have been fixed,
90  in particular on ospf "max-metric router-lsa administrative" and
91  "distribute-list", bgpd "no neighbor activate", isisd "metric-style",
92- [*] a lot of bugs have been fixed, please refer to the git log
93
94* Changes in Quagga 0.99.21
95
96- [bgpd] BGP multipath support has been merged
97- [bgpd] SAFI (Multicast topology) support has been extended to propagate
98  the topology to zebra.
99- [bgpd] AS path limit functionality has been removed
100- [babeld] a new routing daemon implementing the BABEL ad-hoc mesh routing
101  protocol has been merged.
102- [isisd] a major overhaul has been picked up. Please note that isisd is
103  STILL NOT SUITABLE FOR PRODUCTION USE.
104- [*] a lot of bugs have been fixed, please refer to the git log
105
106* Changes in Quagga 0.99.10
107
108- [bgpd] 4-byte AS support added
109- [bgpd] MRT format changes to version 2. Those relying on
110  bgpd MRT table dumps may need to update their tools.
111- [bgpd] Added new route-map set statement: "as-path exclude"
112- Zebra RIB updates queue has evolved into a multi-level
113  structure to address RIB consistency issues.
114
115* Changes in Quagga 0.99.2
116
117- [bgpd] Work queues added to bgpd to split up update processing,
118  particularly beneficial when a peer session goes down. AS_PATH
119  parsing rewritten to be clearer, more robust and ready for 4-byte.
120
121- [ripd] Simple authentication is no longer the default authentication
122  mode for ripd. The default is now no-authentication. Any setups which
123  used simple authentication will probably need to update their
124  configuration manually.
125
126- [ospfd] 1s dead-interval with sub-second Hellos feature added.
127  SPF timers now specified in milliseconds, and with adaptive
128  hold-time support. RFC3137 Stub-router support added. Default ABR
129  type is now 'cisco'.
130
131- Solaris least privileges support added.
132
133* Changes in Quagga 0.99.1
134
135- Zserv is now buffered via threads and non-blocking in most cases for both
136  clients and zebra, which should improve responsiveness of daemons when
137  they must send many messages to zebra.
138
139- 'show thread cpu' now displays both cpu+system and wall-clock time,
140  where getrusage() is available.
141
142- Background threads added and workqueue API added, with a
143  'show work-queues' command. Thread scheduling improved slightly.
144
145- Zebra now has a work-queue for RIB processing. See 'show work-queues' in
146  the zebra daemon vty.
147
148- Support for interface renaming on Linux netlink systems.
149
150- GNU Zebra bgpd merges, including BGP Graceful-restart and "match ip
151  route-source" command.
152
153- Automatic logging of backtraces should daemons crash to assist in
154  diagnosis. See the documentation for more information on configuring
155  logging correctly, and set --enable-gcc-rdynamic if compiling with gcc.
156
157* Changes in Quagga 0.98.0
158
159- Logging facilities upgraded.  One can now specify a severity level
160  for each logging destination.  And a new "show logging" command gives
161  thorough information on the current logging system configuration.
162
163- Watchquagga daemon added.  This is not well tested yet.  Please try
164  monitor mode first before enabling restart features.  It is important
165  to make sure that the various timers are configured with appropriate
166  values for your site.
167
168- BGP route-server support added. See the texinfo documentation.
169
170- OSPF API initialisation is disabled by default even if compiled in. You
171  can enable it with -a/--apiserver command line switch.
172
173- "write-config integrated" vtysh command replaced with "service
174  integrated-vtysh-config" command.
175
176- Router id is now handled by zebra daemon and all daemons receive changes
177  from it. Router id can be overriden in daemons' configurations of course.
178  To fix common router id in zebra daemon you can either install non-127
179  address on loopback or use "router-id x.x.x.x" command.
180
181- "secondary" keyword is removed from ip address configuration. All
182  supported OS'es have their own vision what's secondary address and
183  how to handle it.
184
185- Zebra no longer enables forwarding by default. If you rely on zebra to
186  enable forwarding make sure to add '<ip|ip6> forwarding' statements
187  to your zebra configuration file.
188
189- All libraries are built and used shared, on platforms where libtool
190  supports shared libraries.
191
192- Router advertisement syntax is changed. In usual cases (if you didn't do
193  any fancy stuff) it's enough to change lines in configuration from:
194  "ipv6 nd prefix-advertisement X:X:X:X::/X 2592000 604800 autoconfig on-link"
195  to:
196  "ipv6 nd prefix X:X:X:X::/X"
197
198  All router advertisement options are documented in texi documentation.
199
200- --enable-nssa configure switch is removed. NSSA support is stable enough.
201
202- Daemons don't look at current directory for config file any more.
203
204* Changes in Quagga 0.96.5
205
206- include files are installed in $(prefix)/include/quagga.  Programs
207  building against these includes should -I$(prefix)/include and e.g.
208  #include <quagga/routemap.h>
209
210- New option --enable-exampledir puts example files in a separate
211  directory from $(sysconfdir), easing NetBSD pkgsrc hierarchy rules
212  compliance.
213
214- New configure options --enable-configfile-mask and
215  --enable-logfile-mask to set umask values for config and log
216  values.  Masks default to 0600, matching previous behavior.
217
218- Import current CVS isisd from SourceForge, then merge it with
219  the Quagga's Framework.
220
221* Changes in Quagga 0.96.4
222
223- Further fixes to ospfd, some relating to the PtP revert. Interface
224lookups should be a lot more robust now.
225
226- Fix for a remote triggerable crash in vty layer.
227
228- Improvements to ripd, and addition of split horizon support.
229
230- Improved bgpd table support, now dumps at time of day intervals rather
231than time from startup intervals. Much improved support for IPv6 table
232dumps. show commands for views improved.
233
234* Changes in Quagga 0.96.3
235
236- revert the 'generic PtP' patch. Means Quagga will no longer work with
237FreeSWAN, however, on the plus side this gets rid of a lot of niggly bugs
238which the PtP patch introduced.
239
240* Changes in Quagga 0.96.2
241
242- Fix crash in ospfd
243
244* Changes in Quagga 0.96.1
245
246- Iron out problem with the privileges definitions
247
248* Changes in Quagga 0.96
249
250- Privilege support, daemons now run with the minimal privileges needed, see
251  the documentation for details.
252
253- NSSA ABR support in ospfd.
254
255- OSPF-API support merged in.
256
257- 6WIND patch merged in.
258
259* Changes in zebra-0.93
260
261* Changes in bgpd
262
263** Configuration is changed to new format.
264
265* Changes in ospfd
266
267** Crush bugs which reported on Zebra ML is fixed.
268
269** Opaque LSA and TE LSA support is added by KDD R&D Laboratories,
270   Inc.
271
272* Chages in ospf6d
273
274** Many bugs are fixed.
275
276* Changes in zebra-0.92a
277
278* Changes in bgpd
279
280** Fix "^$" community list bug.
281
282** Below command's Address Family specific configurations are added
283
284  nexthop-self
285  route-reflector-client
286  route-server-client
287  soft-reconfiguration inbound
288
289* Changes in zebra
290
291** Treat kernel type routes as EGP routes.
292
293* Changes in zebra-0.92
294
295** Overall security is improved.  Default umask is 0077.
296
297* Changes in ripd
298
299** If output interface is in simple password authentication mode,
300substruct one from rtemax.
301
302* Changes in bgpd
303
304** IPv4 multicast and IPv6 unicast configuration is changed to so
305called new config.  All of AFI and SAFI specific configuration is
306moved to "address-family" node.  When you have many IPv6 only
307configuration, you will see many "no neighbor X:X::X:X activate" line
308in your configuration to disable IPv4 unicast NLRI exchange.  In that
309case please use "no bgp default ipv4-unicast" command to suppress the
310output.  Until zebra-0.93, old config is still left for compatibility.
311
312Old config
313==========
314router bgp 7675
315 bgp router-id 10.0.0.1
316 redistribute connected
317 network 192.168.0.0/24
318 neighbor 10.0.0.2 remote-as 7675
319 ipv6 bgp network 3ffe:506::/33
320 ipv6 bgp network 3ffe:1800:e800::/40
321 ipv6 bgp aggregate-address 3ffe:506::/32
322 ipv6 bgp redistribute connected
323 ipv6 bgp neighbor 3ffe:506:1000::2 remote-as 1
324
325New config
326==========
327router bgp 7675
328 bgp router-id 10.0.0.1
329 network 192.168.0.0/24
330 redistribute connected
331 neighbor 10.0.0.2 remote-as 7675
332 neighbor 3ffe:506:1000::2 remote-as 1
333 no neighbor 3ffe:506:1000::2 activate
334!
335 address-family ipv6
336  network 3ffe:506::/33
337  network 3ffe:1800:e800::/40
338  aggregate-address 3ffe:506::/32
339  redistribute connected
340  neighbor 3ffe:506:1000::2 activate
341 exit-address-family
342
343* Changes in ospfd
344
345** Internal interface treatment is changed.  Now ospfd can handle
346multiple IP address for an interface.
347
348** Redistribution of loopback interface's address works fine.
349
350* Changes in zebra-0.91
351
352** --enable-oldrib configure option is removed.
353
354** HAVE_IF_PSEUDO part is removed.  Same feature is now supported by
355default.
356
357* Changes in ripd
358
359** When redistributed route is withdrawn, perform poisoned reverse.
360
361* Changes in zebra
362
363** When interface's address is removed, kernel route pointing out to
364the address is removed.
365
366** IPv6 RIB is now based upon new RIB code.
367
368** zebra can handle same connected route to one interface.
369
370** New command for interface address.  Currently this commands are
371only supported on GNU/Linux with netlink interface.
372
373"ip address A.B.C.D secondary"
374"ip address A.B.C.D label LABEL"
375
376* Changes in bgpd
377
378** BGP flap dampening bugs are fixed.
379
380** BGP non-blocking TCP connection bug is fixed.
381
382** "show ip bgp summary" shows AS path and community entry number.
383
384** New commands have been added.
385  "show ip bgp cidr-only"
386  "show ip bgp ipv4 (unicast|multicast) cidr-only"
387  "show ip bgp A.B.C.D/M longer-prefixes"
388  "show ip bgp ipv4 (unicast|multicast) A.B.C.D/M longer-prefixes"
389  "show ipv6 bgp X:X::X:X/M longer-prefixes"
390  "show ipv6 mbgp X:X::X:X/M longer-prefixes"
391
392** IPv6 IBGP nexthop change is monitored.
393
394** Unknown transitive attribute is passed with partial flag bit on.
395
396* Changes in ospfd
397
398** Fix bug of LSA MaxAge flood.
399
400** Fix bug of NSSA codes.
401
402* Changes in zebra-0.90
403
404** From this beta release, --enable-unixdomain and --enable-newrib
405becomes default.  So both options are removed from configure.in.  To
406revert old behavior please specify below option.
407
408--enable-tcp-zebra # TCP/IP socket is used for protocol daemon and zebra.
409--enable-oldrib    # Turn on old RIB implementation.
410
411Old RIB implementation will be removed in zebra-0.91.
412
413** From this beta release --enable-multipath is supported.  This
414option is only effective on GNU/Linux kernel with
415CONFIG_IP_ADVANCED_ROUTER and CONFIG_IP_ROUTE_MULTIPATH is set.
416
417--enable-multipath=ARG  # ARG must be digit.  When ARG is 0 unlimit multipath number.
418
419** From this release we do not include guile files.
420
421* Changes in lib
422
423** newlist.[ch] is merged with linklist.[ch].
424
425** Now Zebra works on MacOS X public beta.
426
427** Access-list can have remark.  "access-list WORD remark LINE" define
428remark for specified access-list.
429
430** Key of key-chain is sorted by it's idetifier value.
431
432** prefix-list rule is slightly changed.  The rule of "len <= ge-value
433<= le-value" is changed to "len < ge-value <= le-value".
434
435** According to above prefix-list rule change, add automatic
436conversion function of an old rule. ex.) 10.0.0.0/8 ge 8 -> 10.0.0.0/8
437le 32
438
439** SMUX can handle SNMP trap.
440
441** In our event library, event thread is executed before any other
442thread like timer, read and write event.
443
444** Robust method for writing configuration file and recover from
445backing up config file.
446
447** Display "end" at the end of configuration.
448
449** Fix memory leak in vtysh_read().
450
451** Fix memroy leak about access-list and prefix-list name.
452
453* Changes in zebra
454
455** UNIX domain socket server of zebra protocol is added.
456
457** Fix PointoPoint interface network bug.  The destination network
458should be installed into routing table instead of local network.
459
460** Metric value is reflected to kernel routing table.
461
462** "show ip route" display uptime of RIP,OSPF,BGP routes.
463
464** New RIB implementation is added.
465
466Now we have enhanced RIB (routing information base) implementation in
467zebra.  New RIB has many new features and fixed some bugs which exist
468in old RIB code.
469
470*** Static route with distance value
471
472    Static route can be specified with administrative distance.  The
473  distance value 255 means it is not installed into the kernel.
474  Default value of distance for static route is 1.
475
476    ip route A.B.C.D/M A.B.C.D <1-255>
477    ip route A.B.C.D/M IFNAME <1-255>
478
479    If the least distance value's route's nexthop are unreachable,
480  select the least distance value route which has reachable nexthop is
481  selected.
482
483    ip route 0.0.0.0/0 10.0.0.1
484    ip route 0.0.0.0/0 11.0.0.1 2
485
486    In this case, when 10.0.0.1 is unreachable and 11.0.0.1 is
487  reachable.  The route with nexthop 11.0.0.1 will be installed into
488  forwarding table.
489
490    zebra> show ip route
491    S>* 0.0.0.0/0 [2/0] via 11.0.0.1
492    S   0.0.0.0/0 [1/0] via 10.0.0.1 inactive
493
494    If the nexthop is unreachable "inactive" is displayed.  You can
495  specify any string to IFNAME.  There is no need of the interface is
496  there when you configure the route.
497
498    ip route 1.1.1.1/32 ppp0
499
500  When ppp0 comes up, the route is installed properly.
501
502*** Multiple nexthop routes for one prefix
503
504    Multiple nexthop routes can be specified for one prefix.  Even the
505  kernel support only one nexthop for one prefix user can configure
506  multiple nexthop.
507
508    When you configure routes like below, prefix 10.0.0.1 has three
509  nexthop.
510
511    ip route 10.0.0.1/32 10.0.0.2
512    ip route 10.0.0.1/32 10.0.0.3
513    ip route 10.0.0.1/32 eth0
514
515    If there is no route to 10.0.0.2 and 10.0.0.3.  And interface eth0
516    is reachable, then the last route is installed into the kernel.
517
518    zebra> show ip route
519    S>  10.0.0.1/32 [1/0] via 10.0.0.2 inactive
520                          via 10.0.0.3 inactive
521      *                   is directly connected, eth0
522
523    '*' means this nexthop is installed into the kernel.
524
525*** Multipath (more than one nexthop for one prefix) can be installed into the kernel.
526
527    When the kernel support multipath, zebra can install multipath
528  routes into the kernel.  Before doing that please make it sure that
529  setting --enable-multipath=ARG to configure script.  ARG must be digit
530  value.  When specify 0 to ARG, there is no limitation of the number
531  of the multipath.  Currently only GNU/Linux with netlink interface is
532  supported.
533
534    ip route 10.0.0.1/32 10.0.0.2
535    ip route 10.0.0.1/32 10.0.0.3
536    ip route 10.0.0.1/32 eth0
537
538    zebra> show ip route
539    S>* 10.0.0.1/32 [1/0] via 10.0.0.2
540      *                   via 10.0.0.3
541                          is directly connected, eth0
542
543*** Kernel message delete installed route.
544
545    After zebra install static or dynamic route into the kernel.
546
547    R>* 0.0.0.0/0 [120/3] via 10.0.0.1
548
549    If you delete this route outside zebra, old zebra does not reinstall
550  route again.  Now the route is re-processed and properly reinstall the
551  static or dynamic route into the kernel.
552
553** GNU/Linux netlink socket handling is improved to fix race condition
554between kernel message and user command responce.
555
556* Changes in bgpd
557
558** Add show neighbor's routes command.
559
560  "show ip bgp neighbors (A.B.C.D|X:X::X:X) routes"
561  "show ip bgp ipv4 (unicast|multicast) neighbors (A.B.C.D|X:X::X:X) routes"
562  "show ipv6 bgp neighbors (A.B.C.D|X:X::X:X) routes"
563  "show ipv6 mbgp neighbors (A.B.C.D|X:X::X:X) routes"
564
565** BGP passive peer support problem is fixed.
566
567** Redistributed IGP nexthop is passed to BGP nexthop.
568
569** On multiaccess media, if the nexthop is reachable nexthop is passed
570as it is.
571
572** Remove zebra-0.88 compatibility commands.
573
574  "match ip prefix-list WORD"
575  "match ipv6 prefix-list WORD"
576
577  Instead of above please use below commands.
578
579  "match ip address prefix-list WORD"
580  "match ipv6 address prefix-list WORD"
581
582** Fix bug of holdtimer is not reset when bgp cleared.
583
584** "show ip bgp summary" display peer establish/drop count.
585
586** Change "match ip next-hop" argument from IP address to access-list
587name.
588
589** When "bgp enforce-first-as" is enabled, check EBGP peer's update
590has it's AS number in the first AS number in AS sequence.
591
592** New route-map command "set community-delete COMMUNITY-LIST" is
593added.  Community matched the CoMMUNITY-LIST is removed from the
594community.
595
596** BGP-MIB implementation is finished.
597
598** When BGP connection comes from unconfigured IP address, close
599socket immediately.
600
601** Do not compare router ID when the routes comes from EBGP peer.
602When originator ID is same, take shorter cluster-list route.  If
603cluster-list is same take smaller IP address neighbor's route.
604
605** Add "bgp bestpath as-path ignore" command.  When this option is
606set, do not concider AS path length when route selection.
607
608** Add "bgp bestpath compare-routerid".  When this option is set,
609compare router ID when the routes comes from EBGP peer.
610
611** Add "bgp deterministic-med" process.
612
613** BGP flap dampening feature is added.
614
615** When IBGP nexthop is changed, it is reflected to RIB.
616
617** Change "neighbor route-refresh" command to "neighbor capability
618route-refresh".
619
620* Changes in ripd
621
622** Change "match ip next-hop" argument from IP address to access-list
623name.
624
625** "no ip rip (send|receive)" command accept version number argument.
626
627** Memory leak related classfull network generation is fixed.
628
629** When a route is in garbage collection process (invalid with metric
63016) and a router receives the same route with valid metric then route
631was not installed into zebra rib, but only into ripd rib. Moreover ,
632it will never get into zebra rib, because ripd wrongly assumes it's
633already there.
634
635* Change in ospfd
636
637** Fix bug of refreshing default route.
638
639** --enable-nssa turn on undergoing NSSA feature.
640
641** Fix bug of Hello packet's option is not properly set when interface
642comes up.
643
644** Reduce unconditional logging.
645
646** Add nexthop to OSPF path only when it is not there.
647
648** When there is no DR on network (suppose you have only one router
649with interface priority 0). It's router LSA does not contain the link
650information about this network.
651
652** When you change a priority of interface from/to 0
653ISM_NeighborChange event should be scheduled in order to elect new
654DR/BDR on the network.
655
656** When we add some LSA into retransmit list we need to check whether
657the present old LSA in retransmit list is not more recent than the new
658one.
659
660** In states Loading and Full the slave must resend its last Database
661Description packet in response to duplicate Database Description
662packets received from the master.  For this reason the slave must wait
663RouterDeadInterval seconds before freeing the last Database
664Description packet. Reception of a Database Description packet from
665the master after this interval will generate a SeqNumberMismatch
666neighbor event. RFC2328 Section 10.8
667
668** Virtual link can not configured in stub area.
669
670** Clear a ls_upd_queue queue of the interface when interface goes
671down.
672
673** "no router ospf" unregister redistribution requests from zebra.
674
675** New command for virtual-link configuration is added.
676
677  "area A.B.C.D virtual-link A.B.C.D"
678  "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535>"
679  "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535> authentication-key AUTH_KEY"
680  "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
681  "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535> message-digest-key <1-255> md5 KEY"
682  "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
683
684** Clear cryptographic sequence number when neighbor status is changed
685to NSM down.
686
687** Make Summary LSA's origination and refreshment as same as other
688type of LSA.
689
690** New OSPF pakcet read method. Now maximum packet length may be 65535
691bytes (maximum IP packet length).
692
693** Checking the age of the found LSA and if the LSA is MAXAGE we
694should call refresh instead of originate.
695
696** Install multipath information to zebra.
697
698** Fix socket descriptor leak when system call failed.
699
700* Changes in ospf6d
701
702** Whole functionality has been rewritten as new code. new command
703"show ipv6 ospf6 spf node", "show ipv6 ospf6 spf tree", "show ipv6
704ospf6 spf table" has been added.
705
706** Change to do not send garbage route whose nexthop is not linklocal
707address.
708
709** "redistribute ospf6" was generated in "router ospf6" in config
710file. It is fixed.
711
712** LSDB sync bug is fixed.
713
714** Fix bug of using unavailable route.
715
716* Changes in vtysh
717
718** route-map and access-list configuration is merged into one
719configuration.
720
721** /usr/local/etc/Zebra.conf is integrated configuration file.  "write
722memory" in vtysh will write whole configuration to this file.
723
724** When -b option is specified to vtysh, vtysh read
725/usr/local/etc/Zebra.conf file then pass the confuguration to proper
726protocol daemon.  So make all protocol daemon's configuration file
727empty then invoke all daemon.  After that vtysh -b will setup saved
728configuration.
729
730zebrastart.sh
731=============
732/usr/local/sbin/zebra -d
733/usr/local/sbin/ripd -d
734/usr/local/sbin/ospfd -d
735/usr/local/sbin/bgpd -d
736/usr/local/bin/vtysh -b
737
738* Changes in zebra-0.89
739
740* Changes in lib
741
742** distribute-list can set all interface's access-list and prefix-list
743configuration.
744
745* Changes in ripd
746
747** "show ip protocols" display proper distribute-list settings and
748distance settings.
749
750** When metric infinity route received withdraw the route from kernel
751immediately it used to be wait garbage collection.
752
753** key-chain can be used for simple password authentication.
754
755** RIPv2 MIB getnext interface bug is fixed.
756
757* Changes in vtysh
758
759** --with-libpam enable PAM authentication for vtysh.
760
761** Now vtysh read vtysh.conf.  This file should be
762${SYSCONFDIR}/etc/vtysh.conf for security reason.  Usually it is
763/usr/local/etc/vtysh.conf.
764
765** "username WORD nopassword" command is added to vtysh.
766
767* Chagees in ospfd
768
769** NBMA interface support is added.
770
771** OSPF area is sorted by area ID.
772
773** New implementation of OSPF refreesh.
774
775** OSPF-MIB read function is partly added.
776
777* Changes in bgpd
778
779** When the peering is done by ebgp-multihop, nexthop is looked up
780like IBGP routes.
781
782** "show ip mbgp" commands are changed to "show ip bgp ipv4
783multicast".
784
785** New terminal commands are added.
786  "show ip bgp ipv4 (unicast|multicast) filter-list WORD"
787  "show ip bgp ipv4 (unicast|multicast) community"
788  "show ip bgp ipv4 (unicast|multicast) community-list WORD"
789  "show ip bgp ipv4 (unicast|multicast) community-list WORD exact-match"
790
791** MBGP soft-reconfiguration command is added.
792  "clear ip bgp x.x.x.x ipv4 (unicast|multicast) in"
793  "clear ip bgp x.x.x.x ipv4 (unicast|multicast) out"
794  "clear ip bgp x.x.x.x ipv4 (unicast|multicast) soft"
795  "clear ip bgp <1-65535> ipv4 (unicast|multicast) in"
796  "clear ip bgp <1-65535> ipv4 (unicast|multicast) out"
797  "clear ip bgp <1-65535> ipv4 (unicast|multicast) soft"
798  "clear ip bgp * ipv4 (unicast|multicast) in"
799  "clear ip bgp * ipv4 (unicast|multicast) out"
800  "clear ip bgp * ipv4 (unicast|multicast) soft"
801
802** MED related commands are added.
803  "bgp deterministic-med"
804  "bgp bestpath med confed"
805  "bgp bestpath med missing-as-worst"
806
807** "bgp default local-preference" command is added.
808
809** BGP confederation peer's routes are passed to zebra like IBGP route.
810
811** Community match command is added.
812  "show ip bgp community <val>"
813  "show ip bgp community <val> exact-match"
814
815** EBGP multihop route treatment bug is fixed.  Now nexthop is
816resolved by IGP routes.
817
818** Some commands are added to show routes by filter-list and community
819value.
820  "show ip bgp ipv4 (unicast|multicast) filter-list WORD"
821  "show ip bgp ipv4 (unicast|multicast) community"
822  "show ip bgp ipv4 (unicast|multicast) community-list WORD"
823  "show ip bgp ipv4 (unicast|multicast) community-list WORD exact-match"
824
825* Changes in zebra
826
827** zebra read interface's address information using getifaddrs() when
828it is available.
829
830** Reflect IPv6 interface's address change to protocol daemons.
831
832* Changes in zebra-0.88
833
834* Changes in lib
835
836** "exact-match" option is added to "access-list" and "ipv6
837access-list" command.  If this option is specified, the prefix and
838prefix length is compared as exact match mode.
839
840* Changes in zebra
841
842** New Zebra message ZEBRA_REDISTRIBUTE_DEFAULT_ADD and
843ZEBRA_REDISTRIBUTE_DEFAULT_DELTE are added.
844
845** Default administrative distance value is changed.
846
847            Old         New
848------------------------------------------
849system      10           0
850kernel      20           0
851connected   30           0
852static      40           1
853rip         50         120
854ripng       50         120
855ospf        60         110
856ospf6       49         110
857bgp         70         200(iBGP)  20(eBGP)
858------------------------------------------
859
860** Distance value can be passed from protocol daemon to zebra.
861
862** "show ip route" shows [metric/distance] value pair.
863
864** Zebra Protocol is changed to support multi-path route and distance
865value.
866
867* Changes in ospfd
868
869** "default-information originate [always]" command is added.
870
871** "default-metric <0-16777214>" command is added.
872
873** "show ip ospf database" command is integrated.  LS-ID and AdvRouter can
874   be specifed.  The commands are
875
876   show ip ospf database TYPE LS-ID
877   show ip ospf database TYPE LS-ID ADV-ROUTER
878   show ip ospf database TYPE LS-ID self-originate
879   show ip ospf database TYPE self-originate
880
881** route-map support for `redistribute' command are added.
882   Supported `match' statements are
883
884   match interface
885   match ip address
886   match next-hop
887
888   Supported `set' statements are
889
890   set metric
891   set metric-type
892
893** Pass OSPF metric value to zebra daemon.
894
895* Changes in ripd
896
897** When specified route-map does not exist, it means all deny.
898
899** "default-metric <1-16>" command is added.
900
901** "offset-list ACCESS-LIST-NAME <0-16>" and "offset-list
902ACCESS-LIST-NAME <0-16> IFNAME" commands are added.
903
904** "redistribute ROUTE-TYPE metric <0-16>" command is added.
905
906** "default-information originate" command is added.
907
908** "ip split-horizon" and "no ip split-horizon" is added to interface
909configuration.
910
911** "no router rip" command is added.
912
913** "ip rip authentication mode (md5|text)" is added to interface
914configuration.
915
916** "ip rip authentication key-chain KEY-CHAIN" is added to interface
917configuration.
918
919** Pass RIP metric value to zebra daemon.
920
921** Distance manipulation functions are added.
922
923* Changes in bgpd
924
925** Fix bug of next hop treatment for MPLS-VPN route exchange.
926
927** BGP peer MIB is updated.
928
929** Aggregated route has origin IGP, atomic-aggregate and proper
930aggregator attribute.
931
932** Suppressed route now installed into BGP table.  It is only
933suppressed from announcement.
934
935** BGP router-id is properly set after "no router bgp ASN" and "router
936bgp ASN".
937
938** Add check for nexthop is accessible or not for IBGP routes.
939
940** Add cehck for nexthop is on connected or not for EBGP routes.
941
942** "dump bgp route" command is changed to "dump bgp route-mrt" for
943generating MRT compatible dump output.
944
945** Soft reconfiguration inbound and outbound is supported.
946
947** Route refresh feature is supported.
948
949* Changes in vtysh
950
951** VTY shell is now included into the distribution.
952
953* Changes in zebra-0.87
954
955* Changes in lib
956
957** "show startup-config" command is added.
958
959** "show history" command is added.
960
961** Memory statistics command is changed.  New command
962
963   show memory all
964   show memory lib
965   show memory rip
966   show memory ospf
967   show memory bgp
968
969are added.
970
971** Filters can be removed only specify it's name.  New command
972
973   no access-list NAME
974   no ip community-list NAME
975   no ip as-path access-list NAME
976   no route-map NAME
977
978are added.
979
980** At any node, user can view/save user configuration.
981
982   write terminal
983   write file
984   wirte memory
985
986are added to every node in default.
987
988** LCD completion is added.  For example both "ip" and "ipv6" command
989are exist, "i" then press TAB will be expanded to "ip".
990
991* Changes in bgpd
992
993** "show ip bgp" family shows total number of prefixes.
994
995** "no bgp default ipv4-unicast" command is added.
996
997** Extended Communities support is added.
998
999** "no neighbor PEER send-community extended" command is added.
1000
1001** MPLS-VPN PE-RR support is added.
1002
1003 New address family vpnv4 unicast is introduced.
1004
1005  !
1006  address-family vpnv4 unicast
1007   neighobr PEER activate
1008   network A.B.C.D rd RD tag TAG
1009  exit-address-family
1010  !
1011
1012 To make it route-reflector, please configure it under normal router
1013bgp ASN.
1014
1015  !
1016  router bgp 7675
1017   no bgp default ipv4-unicast
1018   bgp router-id 10.0.0.100
1019   bgp cluster-id 10.0.0.100
1020   neighbor 10.0.0.1 remote-as 65535
1021   neighbor 10.0.0.1 route-reflector-client
1022   neighbor 10.0.0.2 remote-as 65535
1023   neighbor 10.0.0.2 route-reflector-client
1024   neighbor 10.0.0.3 remote-as 65535
1025   neighbor 10.0.0.3 route-reflector-client
1026  !
1027  address-family vpnv4 unicast
1028   neighbor 10.0.0.1 activate
1029   neighbor 10.0.0.2 activate
1030   neighbor 10.0.0.3 activate
1031  exit-address-family
1032  !
1033
1034* Changes in ospfd
1035
1036** Many many bugs are fixed.
1037
1038* Changes in ripd
1039
1040** Better interface up/down event handle.
1041
1042* Changes in zebra
1043
1044** Better interface up/down event handle.
1045
1046* Changes in zebra-0.86
1047
1048* Changes in lib
1049
1050** Fix bug of exec-timeout command which may cause crush.
1051
1052** Multiple same policy for "access-list", "ip prefix-list, "as-path
1053access-list", "ip community-list" is not duplicated.
1054
1055** It used to be "ip prefix-list A.B.C.D/M" match routes which mask >=
1056M.  Now default behavior is exact match so it only match routes which
1057mask == M.
1058
1059* Changes in bgpd
1060
1061** "match ip address prefix-list" is added to route-map.
1062
1063** A route without local preference is evaluated as 100 local preference.
1064
1065** Select smaller router-id route when other values are same.
1066
1067** Compare MED only both routes comes from same neighboring AS.
1068
1069** "bgp always-compare-med" command is added.
1070
1071** Now MED value is passed to IBGP peer.
1072
1073** When neighbor's filter is configured with non-existent access-list,
1074as-path access-list, ip prefix-list, route-map.  The behavior is
1075changed from all permit to all deny.
1076
1077* Changes in ospfd
1078
1079** Fix bug of external route tag byte order.
1080
1081** OSPF Neighbor deletion bug which cause crush is fixed.
1082
1083** Some route calculation bug are fixed.
1084
1085** Add sanity check with router	routing table.
1086
1087** Fix bug of memory leak about linklist.
1088
1089** Fix bug of 1-WayReceived in NSM.
1090
1091** Take care of BIGENDIAN architecture.
1092
1093** Fix bug of NSM state flapping between ExStart and Exchange.
1094
1095** Fix bug of Network-LSA originated in stub network.
1096
1097** Fix bug of MS flag unset.
1098
1099** Add to schedule router_lsa origination when the interface cost
1100changes.
1101
1102** Increment LS age by configured interface transmit_delay.
1103
1104** distribute-list is reimplemented.
1105
1106** Fix bug of refresh never occurs.
1107
1108** Fix bug of summary-LSAs reorigination.  Correctly copy
1109OSPF_LSA_APPROVED flag to new LSA. when summary-LSA is reoriginatd.
1110
1111** Fix bug of re-origination when a neighbor disappears.
1112
1113** Fix bug of segmentation fault with DD retransmission.
1114
1115** Fix network-LSA re-origination problem.
1116
1117** Fix problem of remaining withdrawn routes on zebra.
1118
1119* Changes in ripd
1120
1121** Do not leave from multicast group when interface goes down bug is
1122fixed.
1123
1124* Changes in zebra
1125
1126** Remove client structure when client dies.
1127
1128** Take care static route when interface goes up/down.
1129
1130* Changes in zebra-0.85
1131
1132* Changes in bgpd
1133
1134** "transparent-nexthop" and "transparenet-as" commands are added.
1135
1136** Route reflector's originator-id bug is fixed.
1137
1138* Changes in ospfd
1139
1140** Fix bug of OSPF LSA memory leak.
1141
1142** Fix bug of OSPF external route memory leak.
1143
1144** AS-external-LSA origination bug was fixed.
1145
1146** LS request treatment is completely rewritten.  Now performance is
1147drastically improved.
1148
1149* Changes in ripd
1150
1151** RIPv1 update is done by class-full manner.
1152
1153* Changes in zebra-0.84b
1154
1155* Changes in lib
1156
1157** Fix bug of inet_pton return value handling
1158
1159* Changes in bgpd
1160
1161** Fix bug of BGP-4+ link-local address nexthop check for IBGP peer.
1162
1163** Don't allocate whole buffer for displaying "show ip bgp".  Now it
1164consume only one screen size memory.
1165
1166* Changes in ripd
1167
1168** Fix debug output string.
1169
1170** Add RIP peer handling.  RIP peer are shown by "show ip protocols".
1171
1172* Changes in zebra-0.84a
1173
1174* Changes in bgpd
1175
1176** Fix serious bug of BGP-4+ peering under IPv6 link-local address.
1177   Due to the bug BGP-4+ peering may not be established.
1178
1179* Changes in zebra-0.84
1180
1181* Changes in lib
1182
1183** IPv6 address and prefix parser is added to VTY by Toshiaki Takada
1184   <takada@zebra.org>.  DEFUN string is "X:X::X:X" for IPv6 address,
1185   "X:X::X:X/M" for IPv6 prefix.  You can use it like this.
1186
1187   DEFUN (func, cmd, "neighbor (A.B.C.D|X:X::X:X) remote-as <1-65535>")
1188
1189** VTY configuration is locked during configuration.  This is for
1190   avoiding unconditional crush from two terminals modify the
1191   configuration at the same time.  "who" command shows which termnal
1192   lock the configuration.  VTY which has '*' character at the head of
1193   line is locking the configuration.
1194
1195** Old logging functions are removed.  Functions like
1196   log_open,log_close,openlog are deleted.  Instead of that please use
1197   zlog_* functions.  zvlog_* used in ospf6d are deleted also.
1198
1199** "terminal monitor" command is added.  "no terminal monitor" is for
1200   disabling.  This command simply display logging information to the
1201   VTY.
1202
1203** dropline.[ch] files are deleted.
1204
1205* Changes in bgpd
1206
1207** BGP neighbor configuration are sorted by it's IP address.
1208
1209** BGP peer configuration and actual peer is separated.  This is
1210   preparation for Route Server support.
1211
1212** "no neighbor PEER" command is added. You can delete neighbor
1213   without specifying AS number.
1214
1215** "no neighbor ebgp-multihop" command is added.
1216
1217** "no neighbor port PORT" command is added.
1218
1219** To conform RFC1771, "neighbor PEER send-community" is default
1220   behavior.  If you want to disable sending community attribute,
1221   please specify "no neighbor PEER send-community" to the peer.
1222
1223** "neighbor maximum-prefix NUMBER" command is added.
1224
1225** Multi-protocol extention NLRI is proceeded only when the peer is
1226   configured proper Address Family and Subsequent Address Family.  If
1227   not, those NLRI are simply ignored.
1228
1229** Aggregate-address support is improved.  Currently below commands
1230   works.
1231
1232  "aggregate-address"
1233  "aggregate-address summary-only"
1234  "no aggregate-address"
1235  "no aggregate-address summary-only"
1236
1237  "ipv6 bgp aggregate-address"
1238  "ipv6 bgp aggregate-address summary-only"
1239  "no ipv6 bgp aggregate-address"
1240  "no ipv6 bgp aggregate-address summary-only"
1241
1242** redistribute route-map bug is fixed.
1243
1244** MBGP support becomes default.  "configure" option --enable-mbgp is
1245   removed.
1246
1247** New command "neighbor PEER timers connect <1-65535>" is added.
1248
1249** New command "neighbor PEER override-capability" is added.
1250
1251** New command "show ip bgp neighbor A.B.C.D advertised-route" is added.
1252
1253** New command "show ip bgp neighbor A.B.C.D routes" is added.  To use
1254   this command, you have to configure neighbor with
1255   "neighbor A.B.C.D soft-reconfiguration inbound" beforehand.
1256
1257
1258* Changes in zebra-0.83
1259
1260* bgpd
1261
1262** Serious bug fix about fetching global and link-local address at the
1263same time.  Due to this bug, corrupted IPv6 prefix is generated.  If
1264you uses bgpd for BGP-4+ please update to this version.  The bug is
1265introduced in zebra-0.82.
1266
1267** When bgpd send Notify message, don't use thread manager.  It is now
1268send to neighbor immediately.
1269
1270* Changes in zebra-0.82
1271
1272** Solaris 2.6 support is added by Michael Handler
1273<handler@sub-rosa.com>.
1274
1275** MBGP support is added by Robert Olsson <Robert.Olsson@data.slu.se>.
1276Please specify --enable-mbgp to configure script.  This option will be
1277removed in the future and MBGP support will be default.
1278
1279* Changes in zebra
1280
1281** When interface goes down, withdraw connected routes from routing
1282table.  When interface goes up, restore the routes to the routing
1283table.
1284
1285** `show interface' show interface's statistics on Linux and BSD with
1286routing socket.
1287
1288** Now zebra can get MTU value on BSDI/OS.
1289
1290* Changes in bgpd
1291
1292** Add capability option support based upon
1293draft-ietf-idr-bgp4-cap-neg-04.txt.
1294
1295** Add `show ipv6 bgp prefix-list' command.
1296
1297** Check self AS appeared in received routes.
1298
1299** redistribute route-map support is added.
1300
1301** BGP packet dump feature compatible with MRT.
1302
1303* Changes in ripd
1304
1305** Fix bug of `timers basic' command's argument format.
1306
1307* Changes in ripngd
1308
1309** Calculate max RTE using interface's MTU value.
1310
1311* Changes in ospfd
1312
1313** Some correction to LSU processing.
1314
1315** Add check for lsa->refresh_list.
1316
1317* Changes in ospf6d
1318
1319** Many debug feature is added.
1320
1321* Changes in zebra-0.81
1322
1323** SNMP support is disabled in default.--enable-snmp option is added
1324to configure script.
1325
1326* Changes in bgpd
1327
1328** Fix FSM bug which introduced in zebra-0.80.
1329
1330* Changes in zebra-0.80
1331
1332* access-list
1333
1334  New access-list name space `ipv6 access-list' is added.  At the same
1335  time, `access-list' statemant only accepts IPv4 prefix.  Please be
1336  careful if you use IPv6 filtering.  You will need to change your
1337  configuration.  For IPv6 filtering please use `ipv6 access-list'.
1338
1339  As of zebra-0.7x, user can use `access-list' for both IPv4 and IPv6
1340  filtering.
1341
1342  ! zebra-0.7x
1343  access-list DML-net permit 203.181.89.0/24
1344  access-list DML-net permit 3ffe:506::0/32
1345  access-list DML-net deny any
1346  !
1347
1348  Above configuration is not valid for zebra-08x.  Please add `ipv6'
1349  before 'access-list' when you configure IPv6 filtering.
1350
1351  ! zebra-0.8x
1352  access-list DML-net permit 203.181.89.0/24
1353  access-list DML-net deny any
1354  !
1355  ipv6 access-list DML-net permit 3ffe:506::0/32
1356  ipv6 access-list DML-net deny any
1357  !
1358
1359* prefix-list
1360
1361  And also new prefix-list name space `ipv6 prefix-list' is added.  It
1362  is the same as the change of `access-list'. `ip prefix-list' now only
1363  accept IPv4 prefix.  It was source of confusion that `ip prefix-list'
1364  can be used both IPv4 and IPv6 filtering.  Now name space is separated
1365  to clear the meaning of the filter.
1366
1367  If you use `ip prefix-list' for IPv6 filtering, please change the
1368  stetement.
1369
1370  ! zebra-0.7x
1371  ip prefix-list 6bone-filter seq 5 permit 3ffe::/17 le 24 ge 24
1372  ip prefix-list 6bone-filter seq 10 permit 3ffe:8000::/17 le 28 ge 28
1373  ip prefix-list 6bone-filter seq 12 deny 3ffe::/16
1374  ip prefix-list 6bone-filter seq 15 permit 2000::/3 le 16 ge 16
1375  ip prefix-list 6bone-filter seq 20 permit 2001::/16 le 35 ge 35
1376  ip prefix-list 6bone-filter seq 30 deny any
1377  !
1378
1379  Now user can explicitly configure it as IPv6 prefix-list.
1380
1381  ! zebra-0.8x
1382  ipv6 prefix-list 6bone-filter seq 5 permit 3ffe::/17 le 24 ge 24
1383  ipv6 prefix-list 6bone-filter seq 10 permit 3ffe:8000::/17 le 28 ge 28
1384  ipv6 prefix-list 6bone-filter seq 12 deny 3ffe::/16
1385  ipv6 prefix-list 6bone-filter seq 15 permit 2000::/3 le 16 ge 16
1386  ipv6 prefix-list 6bone-filter seq 20 permit 2001::/16 le 35 ge 35
1387  ipv6 prefix-list 6bone-filter seq 30 deny any
1388  !
1389
1390* RIP configuration
1391
1392  If you want to filter only default route (0.0.0.0/0) and permit other
1393  routes, it was hard to do that.  Now `ip prefix-list' can be used for
1394  RIP route filtering.
1395
1396  New statement:
1397
1398  `distribute-list prefix PLIST_NAME (in|out) IFNAME'
1399
1400  is added to ripd.  So you can configure on eth0 interface accept all
1401  routes other than default routes.
1402
1403  !
1404  router rip
1405   distribute-list prefix filter-default in eth0
1406  !
1407  ip prefix-list filter-default deny 0.0.0.0/0 le 0
1408  ip prefix-list filter-default permit any
1409  !
1410
1411* RIPng configuration
1412
1413  Same change is done for ripngd.  You can use `ipv6 prefix-list' for
1414  filtering.
1415
1416  !
1417  router ripng
1418   distribute-list prefix filter-default in eth0
1419  !
1420  ipv6 prefix-list filter-default deny ::/0 le 0
1421  ipv6 prefix-list filter-default permit any
1422  !
1423
1424* BGP configuration
1425
1426  So far, Multiprotocol Extensions for BGP-4 (RFC2283) configuration is
1427  done with traditional IPv4 peering statement like blow.
1428
1429  !
1430  router bgp 7675
1431   neighbor 3ffe:506::1 remote-as 2500
1432   neighbor 3ffe:506::1 prefix-list 6bone-filter out
1433  !
1434
1435  For separating configuration IPv4 and IPv6, and for retaining Cisco
1436  configuration compatibility, now IPv6 configuration is done by IPv6
1437  specific statement.  IPv6 BGP configuration is done by statement which
1438  start from `ipv6 bgp'.
1439
1440  !
1441  router bgp 7675
1442  !
1443  ipv6 bgp neighbor 3ffe:506::1 remote-as 2500
1444  ipv6 bgp neighbor 3ffe:506::1 prefix-list 6bone-filter out
1445  !
1446
1447  At the same time some IPv6 specific commands are deleted from IPv4
1448  configuration.
1449
1450  o redistribute ripng
1451  o redistribute ospf6
1452  o neighbor PEER version BGP_VERSION
1453  o neighbor PEER interface IFNAME
1454
1455  Those commands are only accepted as like below.
1456
1457  o ipv6 bgp redistribute ripng
1458  o ipv6 bgp redistribute ospf6
1459  o ipv6 bgp neighbor PEER version BGP_VERSION
1460  o ipv6 bgp neighbor PEER interface IFNAME
1461
1462  And below new commands are added.
1463
1464  o ipv6 bgp network IPV6_PREFIX
1465  o ipv6 bgp redistribute static
1466  o ipv6 bgp redistribute connected
1467  o ipv6 bgp neighbor PEER remote-as <1-65535> [passive]
1468  o ipv6 bgp neighbor PEER ebgp-multihop [TTL]
1469  o ipv6 bgp neighbor PEER description DESCRIPTION
1470  o ipv6 bgp neighbor PEER shutdown
1471  o ipv6 bgp neighbor PEER route-reflector-client
1472  o ipv6 bgp neighbor PEER update-source IFNAME
1473  o ipv6 bgp neighbor PEER next-hop-self
1474  o ipv6 bgp neighbor PEER timers holdtime <0-65535>
1475  o ipv6 bgp neighbor PEER timers keepalive <0-65535>
1476  o ipv6 bgp neighbor PEER send-community
1477  o ipv6 bgp neighbor PEER weight <0-65535>
1478  o ipv6 bgp neighbor PEER default-originate
1479  o ipv6 bgp neighbor PEER filter-list FILTER_LIST_NAME (in|out)
1480  o ipv6 bgp neighbor PEER prefix-list PREFIX_LIST_NAME (in|out)
1481  o ipv6 bgp neighbor PEER distribute-list AS_LIST_NAME (in|out)
1482  o ipv6 bgp neighbor PEER route-map ROUTE_MAP_NAME (in|out)
1483
1484  And some utility commands are introduced.
1485
1486  o clear ipv6 bgp [PEER]
1487  o show ipv6 bgp neighbors [PEER]
1488  o show ipv6 bgp summary
1489
1490  I hope these changes are easy to understand for current Zebra users...
1491
1492* To restrict connection to VTY interface.
1493
1494  It used to be both IPv4 and IPv6 filter can be specified with one
1495  access-list.  Then the access-list can be appried to VTY interface
1496  with `access-class' stetement in `line vty' node.  Below is example in
1497  zebra-0.7x.
1498
1499  !
1500  access-list local-only permit 127.0.0.1/32
1501  access-list local-only permit ::1/128
1502  access-list local-only deny any
1503  !
1504  line vty
1505   access-class local-only
1506  !
1507
1508  Now IPv4 and IPv6 filter have each name space.  It is not possible to
1509  specify IPv4 and IPv6 filter with one access-list.  For setting IPv6
1510  access-list in `line vty', `ipv6 access-class' statement is
1511  introduced.  Let me show the configuration in zebra-0.8x.
1512
1513  !
1514  access-list local-only permit 127.0.0.1/32
1515  access-list local-only deny any
1516  !
1517  ipv6 access-list local-only permit ::1/128
1518  ipv6 access-list local-only dny any
1519  !
1520  line vty
1521   access-class local-only
1522   ipv6 access-class local-only
1523  !
1524
1525* route-map
1526
1527  New IPv6 related route-map match commands are added.
1528
1529  o match ipv6 address
1530  o match ipv6 next-hop
1531
1532  Please change your configuration if you use IP match statement for
1533  IPv6 route.
1534
1535  zebra-0.7x config
1536  =================
1537  !
1538  access-list all permit any
1539  !
1540  route-map set-nexthop permit 10
1541   match ip address all
1542   set ipv6 next-hop global 3ffe:506::1
1543   set ipv6 next-hop local fe80::cbb5:591a
1544  !
1545
1546  zebra-0.8x config
1547  =================
1548  !
1549  ipv6 access-list all permit any
1550  !
1551  route-map set-nexthop permit 10
1552   match ipv6 address all
1553   set ipv6 next-hop global 3ffe:506::1
1554   set ipv6 next-hop local fe80::cbb5:591a
1555  !
1556
1557* zebra connection
1558
1559  Protocol daemon such as ripd, bgpd, ospfd will reconnect zebra daemon
1560  when the connection fail.  Those daemons try to connect zebra every 10
1561  seconds first three trial, then the interval changed to 60 seconds.
1562  After all, if ten connections are fail, protocol daemon give up the
1563  connection to the zebra daemon.
1564
1565* SNMP support (is not yet finished)
1566
1567  Zebra uses SMUX protocol (RFC1227) for making communication with SNMP
1568  agent.  Currently lib/smux.c can be compiled only with ucd-snmp-4.0.1
1569  and http://ucd-snmp.ucdavis.edu/patches/012.patch.  It can not be
1570  compiled with ucd-snmp-3.6.2.
1571
1572  After applying the patch to ucd-snmp-4.0.1, please configure it with
1573  SMUX module.
1574
1575  % configure --with-mib-modules=smux
1576
1577  After compile & install ucd-snmp-4.0.1, you will need to configure
1578  smuxpeer.  I'm now using below configuration.
1579
1580  /usr/local/share/snmp/snmpd.conf
1581  ================================
1582  smuxpeer 1.3.6.1.6.3.1 test
1583
1584  Above 1.3.6.1.6.3.1 and test is temporary configuration which is hard
1585  coded in lib/smux.c. Yes, I know it is bad, I'll change it ASAP.
1586
1587* HUP signal treatment
1588
1589  From zebra-0.80, ripd will reload it's configuration file when ripd
1590  receives HUP signal.  Other daemon such as bgpd, ospfd will support
1591  HUP signal treatment soon.
1592
1593* Changes in zebra-0.79
1594
1595* Changes in zebra
1596
1597** Broadcast address setting on Linux box bug is fixed.
1598
1599** Protocol daemon can install connected IPv6 route into the kernel.
1600
1601** Now zebra can handle blackhole route.
1602
1603* Changes in ripd
1604
1605** Add route-map feature for RIP protocol.
1606
1607** In case of RIP version 2 routing table entry has IPv4 address and
1608netmask pair which host part bit is on, ignore the entry.
1609
1610* Changes in ripngd
1611
1612** Change CMSG_DATA cast from (u_char *) to (int *).  (u_char *) does
1613not work for NetBSD-currnet on SparcStation 10.
1614
1615* Changes in ospfd
1616
1617** MaxAge LSA treatment is added.
1618
1619** ABR/ASBR functionality is added.
1620
1621** Virtual Link funtionality is added.
1622
1623** ABR behaviors IBM/Cisco/Shortcut is added.
1624
1625* Changes in ospf6d
1626
1627** Enclosed KAME specific part with #ifdef #endif
1628
1629* Changes in zebra-0.78
1630
1631* Changes in lib
1632
1633** SNMP support is started.
1634
1635** Now Zebra can work on BSD/OS 4.X.
1636
1637** Now Zebra can compiled on vanilla OpenBSD 2.5 but not yet working correcltly.
1638
1639* Changes in zebra
1640
1641** Interface index detection using ioctl() bug is fixed.
1642
1643** Interface information protocol is changed.  Now interface
1644addition/deletion and interface's address addition/deletion is
1645separated.
1646
1647* Changes in bgpd
1648
1649** BGP hold timer bug is fixed.
1650
1651** BGP keepavlie timer becomes configurable.
1652
1653* Changes in ripd
1654
1655** When making reply to rip's REQUEST message, fill in
1656RIP_METRIC_INFINITY with network byte order using htonl ().
1657
1658** Pass host byte order address to IN_CLASSC and IN_CLASSB macro.
1659
1660* Changes in ospfd
1661
1662** LSA flooding works.
1663
1664** Fix bug of DD processing.
1665
1666** Fix bug of originating router-LSA bug is fixed.
1667
1668** LSA structure is changed to support LSA aging.
1669
1670* Changes in ospf6d
1671
1672** `ip6' statement in configuration is changed to `ipv6'.
1673
1674* Changes in zebra-0.77
1675
1676* Changes in lib
1677
1678** SIGUSR1 reopen logging file.
1679
1680** route-map is extended to support multi-protocol routing
1681information.
1682
1683** When compiling under GNU libc 2.1 environment don't use inet6-apps.
1684
1685* Changes in zebra
1686
1687** Basic IPv6 router advertisement codes added.  It is not yet usable.
1688
1689** Fix IPv6 route addition/deletion bug is fixed.
1690
1691** `show ip route A.B.C.D' works
1692
1693* Changes in bgpd
1694
1695** When invalid unfeasible routes length comes, bgpd send notify then
1696continue to process the packet.  Now bgpd stop parsing invalid packet
1697then return to main loop.
1698
1699** BGP-4+ withdrawn routes parse bug is fixed.
1700
1701** When BGP-4+ information passed to non shared network's peer, trim
1702link-local next-hop information.
1703
1704** `no redistribute ROUTE_TYPE' withdraw installed routes from BGP
1705routing information.
1706
1707** `show ipv6 route IPV6ADDR' command added.
1708
1709** BGP start timer has jitter.
1710
1711** Holdtimer configuration bug is fixed.  Now configuration does not
1712show unconfigured hold time value.
1713
1714* Changes in ripngd
1715
1716** Now update timer (default 30 seconds) has +/- 50% jitter value.
1717
1718** Add timers basic command.
1719
1720** `network' configuration is dynamically reflected.
1721
1722** `timers basic <update> <timeout> <garbage>' added.
1723
1724* Changes in ripd
1725
1726** Reconstruct almost codes.
1727
1728** `network' configuration is dynamically reflected.
1729
1730** RIP timers now conforms to RFC2453.  So user can configure update,
1731timeout, garbage timer.
1732
1733** `timers basic <update> <timeout> <garbage>' works.
1734
1735* Changes in ospfd
1736
1737** Bug of originating network LSA is fixed.
1738
1739** `no router ospf' core dump bug is fixed.
1740
1741* Changes in ospf6d
1742
1743** Redistribute route works.
1744
1745* Changes in zebra-0.76
1746
1747* Changes in lib
1748
1749** configure.in Linux IPv6 detection problem is fixed.
1750
1751** Include SERVICES file to the distribution
1752
1753** Update zebra.texi to zebra-0.76.
1754
1755* Changes in zebra-0.75
1756
1757* Changes in lib
1758
1759** `termnal length 0' bug is fixed.
1760
1761* Changes in zebra
1762
1763** When zebra starts up, sweep all zebra installed routes.  If -k or
1764--keep_kernel option is specified to zebra dameon.  This function is
1765not performed.
1766
1767* Changes in ripngd
1768
1769** Aggreagte address command supported.  In router ripngd,
1770`aggregate-address IPV6PREFIX' works.
1771
1772* Changes in bgpd
1773
1774** Input route-map's bug which cause segmentation violation is fixed.
1775
1776** route-map method improved.
1777
1778** BGP-4+ nexthop detection improved.
1779
1780** BGP-4+ route re-selection bug is fixed.
1781
1782** BGP-4+ iBGP route's nexthop calculation works.
1783
1784** After connection Established `show ip bgp neighbor' display BGP TCP
1785connection's source and destination address.
1786
1787** In case of BGP-4+ `show ip bgp neighbor' display BGP-4+ global and
1788local nexthop which used for originated route.  This address will be
1789used when `next-hop-self'.
1790
1791* Changes in ospfd
1792
1793** Fix bug of DR election.
1794
1795** Set IP precedence field with IPTOS_PREC_INTERNET_CONTROL.
1796
1797** Schedule NeighborChange event if NSM status change.
1798
1799** Never include a neighbor in Hello packet, when the neighbor goes
1800down.
1801
1802* Changes in zebra-0.74
1803
1804* Changes in lib
1805
1806** Now `terminal length 0' means no line output control.
1807
1808** `line LINES' command deleted.  Instead of this please use `terminal
1809length <0-512>'.
1810
1811** `terminal length <0-512>' is each vty specific configuration so it
1812can not be configured in the configuration file.  If you want to
1813configure system wide line control, please use `service
1814terminal-length <0-512>'.  This configuration affects to the all vty
1815interface.
1816
1817* Changes in zebra
1818
1819** Installation of IPv6 route bug is fixed.
1820
1821* Changes in bgpd
1822
1823** Very serious bug of bgp_stop () is fixed. When multiple route to
1824the same destination exist, bgpd try to announce the information to
1825stopped peer.  Then add orphan write thread is added.  This cause
1826many strange behavior of bgpd.
1827
1828** Router-id parsing bug is fixed.
1829
1830** With BGP-4+ nexthop installation was done with global address but
1831it should be link-local address.  This bug is fixed now.
1832
1833** When incoming route-map prepend AS, old AS path remained.  Now bgpd
1834free old AS path.
1835
1836** `neighbor PEER weight <0-65535>' command added.
1837
1838* Changes in ripngd
1839
1840** Almost codes are rewritten to conform to RFC2080.
1841
1842* Changes in ospfd
1843
1844** SPF calculation timer is added.  Currently it is set to 30 seconds.
1845
1846** SPF calculation works now.
1847
1848** OSPF routing table codes are added.
1849
1850** OSPF's internal routes installed into the kernel routing table.
1851
1852** Now `ospfd' works as non-area, non-external route support OSPF
1853router.
1854
1855** Call of log_rotate() is removed.
1856
1857* Changes in ospf6d
1858
1859** LSA data structure is changed.
1860
1861** Call of log_rotate() is removed.
1862
1863* Changes in zebra-0.73
1864
1865* Changes in lib
1866
1867** `config terminal' is changed to `configure terminal'.
1868
1869** `terminal length <0-512>' command is added.
1870
1871** Variable length argument was specified by `...'.  Now all strings
1872started with character `.' is variable length argument.
1873
1874* Changes in zebra
1875
1876** Internal route (such as iBGP, internal OSPF route) handling works
1877correctly.
1878
1879** In interface node, `ipv6 address' and `no ipv6 address' works.
1880
1881** Interface's address remain after `no ip address' bug is fixed.
1882
1883** Host route such as IPv4 with /32 mask and IPv6 with /128 mask
1884didn't set RTF_GATEWAY even it has gateway.  This bug if fixed now.
1885
1886* Changes in bgpd
1887
1888** `match as-path' argument is used to be specify AS PATH value itself
1889directly (e.g. ^$).  But it is changed to specify `ip as-apth
1890access-list' name.
1891
1892** iBGP route handle works without getting error from the kernel.
1893
1894** `set aggregator as AS A.B.C.D' command is added to route-map.
1895
1896** `set atomic-aggregate' command is added to bgpd's routemap.
1897
1898** Announcement of atomic aggregate attribute and aggregator attribute
1899works.
1900
1901** `update-source' bug is fixed.
1902
1903** When a route learned from eBGP is announced to iBGP, local
1904preference was set to zero.  But now it set to
1905DEFAULT_LOCAL_PREF(100).
1906
1907* Changes in ripd
1908
1909** RIPv1 route filter bug is fixed.
1910
1911** Some memory leak is fixed.
1912
1913* Changes in ospfd
1914
1915** Fix bug of DR Election.
1916
1917** Fix bug of adjacency forming.
1918
1919* Changes in ospf6d
1920
1921** Clean up logging message.
1922
1923** Reflect routing information to zebra daemon.
1924
1925* Changes in zebra-0.72
1926
1927* Changes in lib
1928
1929** When getsockname return IPv4 mapped IPv6 address.  Convert it to
1930IPv4 address.
1931
1932* Changes in bgpd
1933
1934** Change route-map's next-hop related settings.
1935
1936set ip nexthop          -> set ip next-hop
1937set ipv6 nexthop global -> set ipv6 next-hop global
1938set ipv6 nexthop local  -> set ipv6 next-hop local
1939
1940** Add `next-hop-self' command.
1941
1942* Changes in ospfd
1943
1944** Fix bug of multiple `network area' directive crashes.
1945
1946* Changes in zebra-0.71
1947
1948* Changes in lib
1949
1950** `log syslog' command is added.
1951
1952** Use getaddrinfo function to bind IPv4/IPv6 server socket.
1953
1954** `no banner motd' will suppress motd output when user connect to VTY.
1955
1956** Bind `quit' command to major nodes.
1957
1958* Changes in zebra
1959
1960** Point-to-point link address handling bug is fixed.
1961
1962* Changes in bgpd
1963
1964** AS path validity check is added.  If malformed AS path is received
1965NOTIFY Malformed AS path is send to the peer.
1966
1967** Use getaddrinfo function to bind IPv4/IPv6 server socket.
1968
1969* Changes in ripd
1970
1971** Connected network announcement bug is fixed.
1972
1973** `broadcast' command is deleted.
1974
1975** `network' command is added.
1976
1977** `neighbor' command is added.
1978
1979** `redistribute' command is added.
1980
1981** `timers basic' command is added.
1982
1983** `route' command is added.
1984
1985* Changes in ripngd
1986
1987** Fix metric calculation bug.
1988
1989* Changes in ospfd
1990
1991** Check sum bug is fixed.
1992
1993* Chanegs in ospf6d
1994
1995** Routing table code is rewritten.
1996
1997* Changes in zebra-0.70
1998
1999* Changes in zebra
2000
2001** Critical routing information base calculation bug check is fixed.
2002
2003** zebra ipv4 message is extended to support external/internal route
2004flavor.
2005
2006** Now if internal route doesn't has direct connected nexthop, then
2007nexthop is calculated by looking up IGP routing table.
2008
2009* Changes in bgpd
2010
2011** `neighbor PEER update-source IFNAME' command added as ALIAS to
2012`neighbor PEER interface IFNAME'.
2013
2014* Changes in ospfd
2015
2016** DD null pointer bug is fixed.
2017
2018* Changes in zebra-0.69
2019
2020* Changes in zebra
2021
2022** zebra redistirbution supports dynamic notification of the route
2023change.  If you add static route while running zebra, it will be
2024reflected to other protocol daemon which set `redistribute static'.
2025
2026** If static route installation is failed due to the error.  The
2027static route is not added to the configuration and zebra routing
2028table.
2029
2030** zebra sets forwarding flag to on when it starts up.
2031
2032** `no ip forwarding' turn off IPv4 forwarding.
2033
2034** `no ipv6 forwarding' turn off IPv6 forwarding.
2035
2036** Change `show ipforward' command to `show ip forwarding'.
2037
2038** Change `show ipv6forward' command to `show ipv6 forwarding'.
2039
2040** `ip route A.B.C.D/M INTERFACE' works.  So you can set `ip route
204110.0.0.0/8 eth0'.
2042
2043* Changes in bgpd
2044
2045** `neighbor PEER send-community' command is added.  If the option is
2046set, bgpd will send community attribute to the peer.
2047
2048** When a BGP route has no-export community attribute and
2049send-community is set to the peer, the route is not announced to the
2050peer.
2051
2052* Changes in ripngd
2053
2054** When ripngd terminates, delete all installed route.
2055
2056** `redistribute static', `redistribute connected' works.
2057
2058** Change `debug ripng event' to `debug ripng events'.
2059
2060** Change `show debug ripng' to `show debugging ripng'.
2061
2062** Bug of static route deletion is fixed.
2063
2064* Changes in ospfd
2065
2066** LS request and LS update can be send and received.
2067
2068* Changes in zebra-0.68
2069
2070* Changes in lib
2071
2072** DEFUN() is extended to support (a|b|c) statement.
2073
2074** Input buffer overflow bug is fixed.
2075
2076* Changes in bgpd
2077
2078** `ip community-list' is added.
2079
2080** set community and match community is added to route-map statement.
2081
2082** aggregate-address A.B.C.D/M partly works.  Now it works only
2083summary-only mode.
2084
2085* Changes in zebra
2086
2087** IPv6 network address delete bug is fixed.
2088
2089* Changes in ospfd
2090
2091** DR election bug fixed.
2092
2093** Now Database Description can be send or received.
2094
2095** Neighbor State Machine goes to Full state.
2096
2097* Changes in ospf6d
2098
2099** router zebra related bug is fixed.
2100
2101* Changes in zebra-0.67
2102
2103* Changes in lib
2104
2105** `service password-encryption' is added for encrypted password.
2106
2107* Changes in bgpd
2108
2109** `set as-path prepend ASPATH' is added to route-map command.
2110
2111** `set weight WEIGHT' is added to route-map command.
2112
2113** `no set ipv6 nexthop global' and `no set ipv6 nexthop local'
2114command is added to route-map.
2115
2116** `neighbor IP_ADDR version BGP_VERSION' command's BGP_VERSION
2117argument changed.
2118
2119Old               New
2120=====================
2121bgp4              4
2122bgp4+             4+
2123bgp4+-draft-00    4-
2124=====================
2125
2126If you want to peer with old draft version of BGP-4+, please configure
2127like below:
2128
2129router bgp ASN
2130 neighbor PEER version 4-
2131
2132** Some AS path isn't correctly compared during route selection.  Now
2133it is fixed.
2134
2135* Changes in ospfd
2136
2137** `router zebra' is default behavior.
2138
2139* Changes in ospf6d
2140
2141** `router zebra' is default behavior.
2142
2143* Changes in zebra-0.66
2144
2145* Changes in zebra
2146
2147** When other daemon such as gated install routes into the kernel then
2148zebra blocks.  This is only occur with netlink socket.  Now socket is
2149set as NONBLOCKING and problem is fixed.  Reported and fixed by
2150Patrick Koppen <koppen@rhrk.uni-kl.de>
2151
2152* Changes in bgpd
2153
2154** Now `router zebra' is not needed to insert BGP routes into the
2155kernel.  It is default behavior.  If you don't want to install the BGP
2156routes to the kernel, please configure like below:
2157
2158!
2159router zebra
2160 no redistribute bgp
2161!
2162
2163** redistribute connected works.
2164
2165** redistribute static now filter local loopback routes and link local
2166network.
2167
2168* Changes in ripd
2169
2170** Some network check is added.  Patch is done by Carlos Alberto
2171Barcenilla <barce@frlp.utn.edu.ar>
2172
2173* Changes in ripngd
2174
2175** Sometimes ripngd install wrong nexthop into the kernel.  This bug
2176is fixed now.
2177
2178** Now `router zebra' is not needed to insert RIPng routes into the
2179kernel.  It is default behavior. If you don't want to install the BGP
2180routes to the kernel, please configure like below:
2181
2182!
2183router zebra
2184 no redistribute ripng
2185!
2186
2187* Changes in zebra-0.65
2188
2189* Changes in lib
2190
2191** `C-c' changes current node to ENABLE_NODE.  Previously it doesn't.
2192
2193** In ENABLE_NODE, `exit' command close vty connection.
2194
2195** `service advanced-vty' enable advanced vty function.  If this
2196service is specified one can directly connect to ENABLE_NODE when
2197enable password is not set.
2198
2199** `lines LINES' command is added by Stephen R. van den Berg
2200<srb@cuci.nl>.
2201
2202* Changes in zebra
2203
2204** Basic Linux policy based routing table support is added by Stephen
2205R. van den Berg <srb@cuci.nl>.
2206
2207* Changes in bgpd
2208
2209** route-map command is improved:
2210  `match ip next-hop': New command.
2211  `match metric': New command.
2212  `set metric': Doc fixed.
2213  `set local-preference': DEFUN added.
2214
2215* Changes in ripd
2216
2217** Check of announced network is added.  Now multicast address is
2218filtered.  Reported by Carlos Alberto Barcenilla
2219<barce@frlp.utn.edu.ar>
2220
2221** Check of network 127 is added.  Reported by Carlos Alberto
2222Barcenilla <barce@frlp.utn.edu.ar>
2223
2224* Changes in ripngd
2225
2226** Aging route bug is fixed.
2227
2228** `router zebra' semantics changed.  ripngd automatically connect to
2229zebra.
2230
2231* Changes in ospfd
2232
2233** `no router ospf' works.
2234
2235* Changes in ospf6d
2236
2237** Bug fix about network vertex.
2238
2239* Changes in zebra-0.64.1.
2240
2241This is bug fix release.
2242
2243* Changes in lib
2244
2245** Add check of sin6_scope_id in struct sockaddr_in6.  For compilation
2246on implementation which doesn't have sin6_scope_id.  Reported by Wim
2247Biemolt <Wim.Biemolt@ipv6.surfnet.nl>.
2248
2249* Changes in zebra
2250
2251** Fix bug of display BGP routes as "O" instead of "B".  Reported by
2252"William F. Maton" <wmaton@enterprise.ic.gc.ca> and Dave Hartzell
2253<hartzell@greatplains.net>.
2254
2255* Changes in bgpd
2256
2257** `no network IPV6_NETWORK' statement and `no neighbor IP_ADDR timers
2258holdtime [TIMER]' statement doesn't work. Reported by Georg Hitsch
2259<georg@atnet.at>.  Now both statement work.
2260
2261* Changes in ospfd
2262
2263** Last interface is not updated by ospf_if_update().  Reported by
2264Dave Hartzell <hartzell@greatplains.net>.
2265
2266* Changes in ospf6d
2267
2268** Byte order of ifid is changed.  Due to this change, this code will
2269not work with previous version, sorry.
2270
2271** Fix `show ip route' route type mismatch.
2272
2273** Fix bug of no network IPV6_NETWORK.
2274
2275** Important bug fix about intra-area-prefix-lsa.
2276
2277* Changes in zebra-0.64.
2278
2279* Changes in lib
2280
2281** prefix-list based filtering routine is added.  Currently used in
2282bgpd but it will be in other daemons.
2283
2284* Changes in bgpd
2285
2286** `no router bgp' works.  But network statement is not cleared.  This
2287should be fixed in next beta.
2288
2289** Route reflector related statement is added.
2290
2291  router bgp ASN
2292    bgp cluster-id a.b.c.d
2293    neighbor a.b.c.d route-reflector-client
2294
2295  is added.
2296
2297** Prefix list based filtering is added.
2298
2299  router bgp ASN
2300    neighbor a.b.c.d prefix-list PREFIX_LIST_NAME
2301
2302** Prefix list based routing display works.
2303
2304  show ip bgp prefix-list PREFIX_LIST_NAME
2305
2306* Changes in ripd
2307
2308** Fix route metric check bug.  Reported from Mr. Carlos Alberto
2309Barcenilla.
2310
2311* Changes in ospf6d
2312
2313** There are many changes.  If you have interested in ospf6d please
2314visit ospf6d/README file.
2315
2316* Changes in zebra-0.63 first beta package.
2317
2318* Changes in lib
2319
2320** `copy running-config stgartup-config' command is added.
2321
2322** prefix length check bug is fixed.  Thanks Marlos Barcenilla
2323<barce@frip.utn.edu.ar>.
2324
2325* Changes in ospfd
2326
2327** DR and BDR election works.
2328
2329** OSPF Hello simple authentication works.
2330
2331* Changes in ospf6d
2332
2333** Now ospf6d can be compiled on both Linux and *BSD system.
2334
2335* Changes in zebra-19990420 snapshot
2336
2337** `make dist' at top directory works now.
2338
2339* Changes in lib
2340
2341** VTY has now access-class to restrict remote connection.
2342Implemented by Alex Bligh <amb@gxn.net>.
2343
2344!
2345line vty
2346  access-class ACCESS-LIST-NAME
2347!
2348
2349** `show version' command added.  Implemented by Carlos Alberto
2350Barcenilla <barce@frlp.utn.edu.ar>
2351
2352* Changes in zebra
2353
2354** `ip address' command on *BSD bug is fixed.
2355
2356** `no ip address' works now for IPv4 address.
2357
2358** Now `write terminal' display `ip address' configuration.
2359
2360* Changes in bgpd
2361
2362** Redistribute static works now.  Please run both zebra and bgpd.
2363bgpd.conf should be like this:
2364
2365!
2366router zebra
2367!
2368router bgp ASN
2369  redisitribute static
2370!
2371
2372* Changes in guile
2373
2374** configure --enable-guile turns on zebra-guile build.
2375
2376** (router-bgp ASN) allocates real bgp structre.
2377
2378* Changes in zebra-19990416 snapshot
2379
2380** Set version to 0.60 for preparation of beta release.
2381
2382** New directory guile is added for linking with guile interpreter.
2383
2384* Changes in zebra
2385
2386** On GNU/Linux Kernel 2.2.x (with netlink support), zebra detects
2387asynchronous routing updates.  *BSD support is not yet finished.
2388
2389* Changes in bgpd
2390
2391** `show ip bgp regexp ASPATH_REGEX' uses CISCO like regular expression
2392instead of RPSL like regular expression.  I'm planing to provide RPSL
2393like regular expression with `show ip bgp rpsl' or something.
2394
2395* Changes in lib
2396
2397** Press '?' at variable mandatory argument, vty prints nothing.  Now
2398vty outputs description about the argument.  Fixed by Alex Bligh
2399<amb@gxn.net>
2400
2401** buffer.c has some ugly bugs.  Due to the bug, vty interface hangs
2402when large output date exists.  This bug is fixed. Reported by Alex
2403Bligh <amb@gxn.net>.
2404
2405* Changes in ospfd
2406
2407** DR and BDR information is shown by `show ip ospf interface' command.
2408
2409* Changes in zebra-19990408 snapshot
2410
2411* Changes in bgpd
2412
2413** Old BGP-4+ specification (described in old draft) treatment bug is
2414fixed.  It seems that mrtd uses this format as default.  So if you
2415have problem peering with mrtd and want to use old draft format please
2416use version statement like this.
2417
2418neighbor PEER_ADDRESS remote-as ASN
2419neighbor PEER_ADDRESS version bgp4+-draft-00
2420
2421** When AS path is epmty (routes generated by bgpd), SEGV is occur
2422when announce the routes to eBGP peer.  Reported by
2423kad@gibson.skif.net.
2424
2425** ip as-path access-list command is added.
2426
2427** neighbor PEER_ADDRESS filter-list AS_LIST [in|out] command is added.
2428
2429** neighbor PEER_ADDRESS timers holdtimer TIMER command is added.
2430
2431* Changes in all daemons
2432
2433** With KAME stack, terminal interface is now bind AF_INET socket
2434instead of AF_INET6 one.
2435
2436* Changes in zebra-19990403 snapshot
2437
2438* Changes in bgpd
2439
2440** When bgpd has 'router zebra', bgpd automatically select it's router
2441ID as most highest interface's IP Address.
2442
2443** When AS path is empty (in case of iBGP), it doesn't include any AS
2444segment.  This change is for announcement to gated under iBGP.
2445
2446* Changes in ospfd
2447
2448** OSPF hello packet send/receive works.
2449
2450* Changes in ospf6d
2451
2452** Yasuhiro Ohara's ospf6d codes is imported.  It is under development
2453and can't be compiled on any platform.
2454
2455* Changes in zebra-19990327 snapshot
2456
2457* Changes in bgpd
2458
2459** When BGP-4+ connection is done by IPv6 link-local address.  One
2460have to specify interface index for the connection.  So I've added
2461interface statement to the neighbor commmand.  Please specify
2462interface name for getting interface index like below.  This statement
2463only works on GNU/Linux.  I'll support BSD ASAP.
2464
2465router bgp 7675
2466 neighbor fe80::200:f8ff:fe01:5fd3 remote-as 2500
2467 neighbor fe80::200:f8ff:fe01:5fd3 interface sit3
2468
2469** For disable BGP peering `shutdown' command is added.
2470
2471router bgp 7675
2472 neighbor 10.0.0.1 shutdown
2473
2474** `description' command is added to neighbor statement.
2475
2476router bgp 7675
2477 neighbor 10.0.0.1 description peering with Norway.
2478
2479** `show ip bgp regexp AS-REGEXP' works again.
2480
2481show ip bgp regexp AS7675
2482
2483will show routes which include AS7675.
2484
2485** When a route which is made from `network' statement is send to
2486neighbor.  Set it's nexthop to self.  So 10.0.0.0/8 is announced to
2487the peer A with source address 192.168.1.1.  The routes nexthop is set
2488to 192.168.1.1.
2489
2490* Changes in zebra
2491
2492** In zebra/rtread_sysctl.c, function rtm_read() may overrun allocated
2493buffer when the address family is not supported and the length is big
2494(i.e link address).  Reported Achim Patzner <ap@bnc.net>.
2495
2496* Changes in ospfd
2497
2498** Now ospfd receive OSPF packet.
2499
2500* Changes in zebra-19990319 snapshot
2501
2502* Changes in configuration and libraries
2503
2504** User can disable IPv6 feature and/or pthread feature by configure
2505   option.
2506
2507  To disable IPv6:    configure --disable-ipv6
2508  To disable pthread: configure --disable-pthread
2509
2510** User can disable specified daemon by configure option.
2511
2512  Don't make zebra:  configure --disable-zebra
2513  Don't make bgpd:   configure --disable-bgpd
2514  Don't make ripd:   configure --disable-ripd
2515  Don't make ripngd: configure --disable-ripngd
2516  Don't make ospfd:  configure --disable-ospfd
2517  Don't make ospf6d: configure --disable-ospf6d
2518
2519** Sample configuration files are installed as 600 file flag.
2520   Suggested by Jeroen Ruigrok/Asmodai <asmodai@wxs.nl>.
2521
2522** syslog logging feature is added by Peter Galbavy
2523   <Peter.Galbavy@knowledge.com>
2524
2525** Inclusion of standard header files is reworked by Peter Galbavy
2526   <Peter.Galbavy@knowledge.com>
2527
2528** Change description from GNU/Linux 2.1.X to GNU/Linux 2.2.X
2529
2530** If daemon function exists in standard C library use it.
2531
2532** To generate configure script we upgrade autoconf to 2.13.  To
2533generate Makefile.in we upgrade automake to 1.4.
2534
2535** doc/texinfo.tex is added to distribution.
2536
2537** Update ports/pkg/DESCR description.
2538
2539** Update doc/zebra.texi.
2540
2541** logfile FILENAME statement deleted.  Instead of that please use log
2542file FILENAME.
2543
2544* Changes in zebra
2545
2546* Changes in bgpd
2547
2548** Communication between zebra and bgpd works now.  So if there is
2549   `router zebra' line in bgpd.conf, selected route is installed
2550   into kernel routing table.
2551
2552** Delete all routes which inserted by bgpd when bgpd dies.  If you
2553want to retain routes even bgpd dies please specify [-r|--retain]
2554option to bgpd.
2555
2556** BGP announcement code is reworked.  Now bgpd announce selected
2557   routes to other peer.
2558
2559** All output bgp packet is buffered.  It's written to the socket when
2560   it gets ready.
2561
2562** Output route-map works now.  You can specify output route-map by:
2563
2564   neighbor IP_ADDR route-map ROUTE_MAP_NAME out
2565
2566** New route-map command added.
2567
2568   set ip nexthop IP_ADDR
2569   set ipv6 nexthop global IP_ADDR
2570
2571** Fix bug about unlock of the route_node structure.
2572
2573** BGP-4+ support is added.  bgpd can listen and speak BGP-4+ packet
2574specified in RFC2283. You can view IPv6 bgp table by: `show ipv6 bgp'.
2575
2576** Meny packet overflow check is added.
2577
2578* Changes in ripd
2579
2580* Changes in ripngd
2581
2582* Changes in ospfd
2583
2584** ospfd work is started by Toshiaki Takada <takada@zebra.org>.  Now
2585several files are included in ospfd directory.
2586
2587** ospf6d codes are merged from Yasuhiro Ohara <yasu@sfc.wide.ad.jp>'s
2588ospfd work.  Now codes are located in ospf6d directory.
2589
2590
2591Local variables:
2592mode: outline
2593paragraph-separate: "[ 	]*$"
2594end:
2595