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