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