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