Initial revision
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..24248c7
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,2338 @@
+GNU Zebra is not yet released, so this NEWS is about beta version.
+
+* Changes in zebra-0.93
+
+* Changes in bgpd
+
+** Configuration is changed to new format.
+
+* Changes in ospfd
+
+** Crush bugs which reported on Zebra ML is fixed.
+
+** Opaque LSA and TE LSA support is added by KDD R&D Laboratories,
+ Inc.
+
+* Chages in ospf6d
+
+** Many bugs are fixed.
+
+* Changes in zebra-0.92a
+
+* Changes in bgpd
+
+** Fix "^$" community list bug.
+
+** Below command's Address Family specific configurations are added
+
+ nexthop-self
+ route-reflector-client
+ route-server-client
+ soft-reconfiguration inbound
+
+* Changes in zebra
+
+** Treat kernel type routes as EGP routes.
+
+* Changes in zebra-0.92
+
+** Overall security is improved. Default umask is 0077.
+
+* Changes in ripd
+
+** If output interface is in simple password authentication mode,
+substruct one from rtemax.
+
+* Changes in bgpd
+
+** IPv4 multicast and IPv6 unicast configuration is changed to so
+called new config. All of AFI and SAFI specific configuration is
+moved to "address-family" node. When you have many IPv6 only
+configuration, you will see many "no neighbor X:X::X:X activate" line
+in your configuration to disable IPv4 unicast NLRI exchange. In that
+case please use "no bgp default ipv4-unicast" command to suppress the
+output. Until zebra-0.93, old config is still left for compatibility.
+
+Old config
+==========
+router bgp 7675
+ bgp router-id 10.0.0.1
+ redistribute connected
+ network 192.168.0.0/24
+ neighbor 10.0.0.2 remote-as 7675
+ ipv6 bgp network 3ffe:506::/33
+ ipv6 bgp network 3ffe:1800:e800::/40
+ ipv6 bgp aggregate-address 3ffe:506::/32
+ ipv6 bgp redistribute connected
+ ipv6 bgp neighbor 3ffe:506:1000::2 remote-as 1
+
+New config
+==========
+router bgp 7675
+ bgp router-id 10.0.0.1
+ network 192.168.0.0/24
+ redistribute connected
+ neighbor 10.0.0.2 remote-as 7675
+ neighbor 3ffe:506:1000::2 remote-as 1
+ no neighbor 3ffe:506:1000::2 activate
+!
+ address-family ipv6
+ network 3ffe:506::/33
+ network 3ffe:1800:e800::/40
+ aggregate-address 3ffe:506::/32
+ redistribute connected
+ neighbor 3ffe:506:1000::2 activate
+ exit-address-family
+
+* Changes in ospfd
+
+** Internal interface treatment is changed. Now ospfd can handle
+multiple IP address for an interface.
+
+** Redistribution of loopback interface's address works fine.
+
+* Changes in zebra-0.91
+
+** --enable-oldrib configure option is removed.
+
+** HAVE_IF_PSEUDO part is removed. Same feature is now supported by
+default.
+
+* Changes in ripd
+
+** When redistributed route is withdrawn, perform poisoned reverse.
+
+* Changes in zebra
+
+** When interface's address is removed, kernel route pointing out to
+the address is removed.
+
+** IPv6 RIB is now based upon new RIB code.
+
+** zebra can handle same connected route to one interface.
+
+** New command for interface address. Currently this commands are
+only supported on GNU/Linux with netlink interface.
+
+"ip address A.B.C.D secondary"
+"ip address A.B.C.D label LABEL"
+
+* Changes in bgpd
+
+** BGP flap dampening bugs are fixed.
+
+** BGP non-blocking TCP connection bug is fixed.
+
+** "show ip bgp summary" shows AS path and community entry number.
+
+** New commands have been added.
+ "show ip bgp cidr-only"
+ "show ip bgp ipv4 (unicast|multicast) cidr-only"
+ "show ip bgp A.B.C.D/M longer-prefixes"
+ "show ip bgp ipv4 (unicast|multicast) A.B.C.D/M longer-prefixes"
+ "show ipv6 bgp X:X::X:X/M longer-prefixes"
+ "show ipv6 mbgp X:X::X:X/M longer-prefixes"
+
+** IPv6 IBGP nexthop change is monitored.
+
+** Unknown transitive attribute is passed with partial flag bit on.
+
+* Changes in ospfd
+
+** Fix bug of LSA MaxAge flood.
+
+** Fix bug of NSSA codes.
+
+* Changes in zebra-0.90
+
+** From this beta release, --enable-unixdomain and --enable-newrib
+becomes default. So both options are removed from configure.in. To
+revert old behavior please specify below option.
+
+--enable-tcp-zebra # TCP/IP socket is used for protocol daemon and zebra.
+--enable-oldrib # Turn on old RIB implementation.
+
+Old RIB implementation will be removed in zebra-0.91.
+
+** From this beta release --enable-multipath is supported. This
+option is only effective on GNU/Linux kernel with
+CONFIG_IP_ADVANCED_ROUTER and CONFIG_IP_ROUTE_MULTIPATH is set.
+
+--enable-multipath=ARG # ARG must be digit. When ARG is 0 unlimit multipath number.
+
+** From this release we do not include guile files.
+
+* Changes in lib
+
+** newlist.[ch] is merged with linklist.[ch].
+
+** Now Zebra works on MacOS X public beta.
+
+** Access-list can have remark. "access-list WORD remark LINE" define
+remark for specified access-list.
+
+** Key of key-chain is sorted by it's idetifier value.
+
+** prefix-list rule is slightly changed. The rule of "len <= ge-value
+<= le-value" is changed to "len < ge-value <= le-value".
+
+** According to above prefix-list rule change, add automatic
+conversion function of an old rule. ex.) 10.0.0.0/8 ge 8 -> 10.0.0.0/8
+le 32
+
+** SMUX can handle SNMP trap.
+
+** In our event library, event thread is executed before any other
+thread like timer, read and write event.
+
+** Robust method for writing configuration file and recover from
+backing up config file.
+
+** Display "end" at the end of configuration.
+
+** Fix memory leak in vtysh_read().
+
+** Fix memroy leak about access-list and prefix-list name.
+
+* Changes in zebra
+
+** UNIX domain socket server of zebra protocol is added.
+
+** Fix PointoPoint interface network bug. The destination network
+should be installed into routing table instead of local network.
+
+** Metric value is reflected to kernel routing table.
+
+** "show ip route" display uptime of RIP,OSPF,BGP routes.
+
+** New RIB implementation is added.
+
+Now we have enhanced RIB (routing information base) implementation in
+zebra. New RIB has many new features and fixed some bugs which exist
+in old RIB code.
+
+*** Static route with distance value
+
+ Static route can be specified with administrative distance. The
+ distance value 255 means it is not installed into the kernel.
+ Default value of distance for static route is 1.
+
+ ip route A.B.C.D/M A.B.C.D <1-255>
+ ip route A.B.C.D/M IFNAME <1-255>
+
+ If the least distance value's route's nexthop are unreachable,
+ select the least distance value route which has reachable nexthop is
+ selected.
+
+ ip route 0.0.0.0/0 10.0.0.1
+ ip route 0.0.0.0/0 11.0.0.1 2
+
+ In this case, when 10.0.0.1 is unreachable and 11.0.0.1 is
+ reachable. The route with nexthop 11.0.0.1 will be installed into
+ forwarding table.
+
+ zebra> show ip route
+ S>* 0.0.0.0/0 [2/0] via 11.0.0.1
+ S 0.0.0.0/0 [1/0] via 10.0.0.1 inactive
+
+ If the nexthop is unreachable "inactive" is displayed. You can
+ specify any string to IFNAME. There is no need of the interface is
+ there when you configure the route.
+
+ ip route 1.1.1.1/32 ppp0
+
+ When ppp0 comes up, the route is installed properly.
+
+*** Multiple nexthop routes for one prefix
+
+ Multiple nexthop routes can be specified for one prefix. Even the
+ kernel support only one nexthop for one prefix user can configure
+ multiple nexthop.
+
+ When you configure routes like below, prefix 10.0.0.1 has three
+ nexthop.
+
+ ip route 10.0.0.1/32 10.0.0.2
+ ip route 10.0.0.1/32 10.0.0.3
+ ip route 10.0.0.1/32 eth0
+
+ If there is no route to 10.0.0.2 and 10.0.0.3. And interface eth0
+ is reachable, then the last route is installed into the kernel.
+
+ zebra> show ip route
+ S> 10.0.0.1/32 [1/0] via 10.0.0.2 inactive
+ via 10.0.0.3 inactive
+ * is directly connected, eth0
+
+ '*' means this nexthop is installed into the kernel.
+
+*** Multipath (more than one nexthop for one prefix) can be installed into the kernel.
+
+ When the kernel support multipath, zebra can install multipath
+ routes into the kernel. Before doing that please make it sure that
+ setting --enable-multipath=ARG to configure script. ARG must be digit
+ value. When specify 0 to ARG, there is no limitation of the number
+ of the multipath. Currently only GNU/Linux with netlink interface is
+ supported.
+
+ ip route 10.0.0.1/32 10.0.0.2
+ ip route 10.0.0.1/32 10.0.0.3
+ ip route 10.0.0.1/32 eth0
+
+ zebra> show ip route
+ S>* 10.0.0.1/32 [1/0] via 10.0.0.2
+ * via 10.0.0.3
+ is directly connected, eth0
+
+*** Kernel message delete installed route.
+
+ After zebra install static or dynamic route into the kernel.
+
+ R>* 0.0.0.0/0 [120/3] via 10.0.0.1
+
+ If you delete this route outside zebra, old zebra does not reinstall
+ route again. Now the route is re-processed and properly reinstall the
+ static or dynamic route into the kernel.
+
+** GNU/Linux netlink socket handling is improved to fix race condition
+between kernel message and user command responce.
+
+* Changes in bgpd
+
+** Add show neighbor's routes command.
+
+ "show ip bgp neighbors (A.B.C.D|X:X::X:X) routes"
+ "show ip bgp ipv4 (unicast|multicast) neighbors (A.B.C.D|X:X::X:X) routes"
+ "show ipv6 bgp neighbors (A.B.C.D|X:X::X:X) routes"
+ "show ipv6 mbgp neighbors (A.B.C.D|X:X::X:X) routes"
+
+** BGP passive peer support problem is fixed.
+
+** Redistributed IGP nexthop is passed to BGP nexthop.
+
+** On multiaccess media, if the nexthop is reachable nexthop is passed
+as it is.
+
+** Remove zebra-0.88 compatibility commands.
+
+ "match ip prefix-list WORD"
+ "match ipv6 prefix-list WORD"
+
+ Instead of above please use below commands.
+
+ "match ip address prefix-list WORD"
+ "match ipv6 address prefix-list WORD"
+
+** Fix bug of holdtimer is not reset when bgp cleared.
+
+** "show ip bgp summary" display peer establish/drop count.
+
+** Change "match ip next-hop" argument from IP address to access-list
+name.
+
+** When "bgp enforce-first-as" is enabled, check EBGP peer's update
+has it's AS number in the first AS number in AS sequence.
+
+** New route-map command "set community-delete COMMUNITY-LIST" is
+added. Community matched the CoMMUNITY-LIST is removed from the
+community.
+
+** BGP-MIB implementation is finished.
+
+** When BGP connection comes from unconfigured IP address, close
+socket immediately.
+
+** Do not compare router ID when the routes comes from EBGP peer.
+When originator ID is same, take shorter cluster-list route. If
+cluster-list is same take smaller IP address neighbor's route.
+
+** Add "bgp bestpath as-path ignore" command. When this option is
+set, do not concider AS path length when route selection.
+
+** Add "bgp bestpath compare-routerid". When this option is set,
+compare router ID when the routes comes from EBGP peer.
+
+** Add "bgp deterministic-med" process.
+
+** BGP flap dampening feature is added.
+
+** When IBGP nexthop is changed, it is reflected to RIB.
+
+** Change "neighbor route-refresh" command to "neighbor capability
+route-refresh".
+
+* Changes in ripd
+
+** Change "match ip next-hop" argument from IP address to access-list
+name.
+
+** "no ip rip (send|receive)" command accept version number argument.
+
+** Memory leak related classfull network generation is fixed.
+
+** When a route is in garbage collection process (invalid with metric
+16) and a router receives the same route with valid metric then route
+was not installed into zebra rib, but only into ripd rib. Moreover ,
+it will never get into zebra rib, because ripd wrongly assumes it's
+already there.
+
+* Change in ospfd
+
+** Fix bug of refreshing default route.
+
+** --enable-nssa turn on undergoing NSSA feature.
+
+** Fix bug of Hello packet's option is not properly set when interface
+comes up.
+
+** Reduce unconditional logging.
+
+** Add nexthop to OSPF path only when it is not there.
+
+** When there is no DR on network (suppose you have only one router
+with interface priority 0). It's router LSA does not contain the link
+information about this network.
+
+** When you change a priority of interface from/to 0
+ISM_NeighborChange event should be scheduled in order to elect new
+DR/BDR on the network.
+
+** When we add some LSA into retransmit list we need to check whether
+the present old LSA in retransmit list is not more recent than the new
+one.
+
+** In states Loading and Full the slave must resend its last Database
+Description packet in response to duplicate Database Description
+packets received from the master. For this reason the slave must wait
+RouterDeadInterval seconds before freeing the last Database
+Description packet. Reception of a Database Description packet from
+the master after this interval will generate a SeqNumberMismatch
+neighbor event. RFC2328 Section 10.8
+
+** Virtual link can not configured in stub area.
+
+** Clear a ls_upd_queue queue of the interface when interface goes
+down.
+
+** "no router ospf" unregister redistribution requests from zebra.
+
+** New command for virtual-link configuration is added.
+
+ "area A.B.C.D virtual-link A.B.C.D"
+ "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>"
+ "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"
+ "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
+ "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"
+ "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
+
+** Clear cryptographic sequence number when neighbor status is changed
+to NSM down.
+
+** Make Summary LSA's origination and refreshment as same as other
+type of LSA.
+
+** New OSPF pakcet read method. Now maximum packet length may be 65535
+bytes (maximum IP packet length).
+
+** Checking the age of the found LSA and if the LSA is MAXAGE we
+should call refresh instead of originate.
+
+** Install multipath information to zebra.
+
+** Fix socket descriptor leak when system call failed.
+
+* Changes in ospf6d
+
+** Whole functionality has been rewritten as new code. new command
+"show ipv6 ospf6 spf node", "show ipv6 ospf6 spf tree", "show ipv6
+ospf6 spf table" has been added.
+
+** Change to do not send garbage route whose nexthop is not linklocal
+address.
+
+** "redistribute ospf6" was generated in "router ospf6" in config
+file. It is fixed.
+
+** LSDB sync bug is fixed.
+
+** Fix bug of using unavailable route.
+
+* Changes in vtysh
+
+** route-map and access-list configuration is merged into one
+configuration.
+
+** /usr/local/etc/Zebra.conf is integrated configuration file. "write
+memory" in vtysh will write whole configuration to this file.
+
+** When -b option is specified to vtysh, vtysh read
+/usr/local/etc/Zebra.conf file then pass the confuguration to proper
+protocol daemon. So make all protocol daemon's configuration file
+empty then invoke all daemon. After that vtysh -b will setup saved
+configuration.
+
+zebrastart.sh
+=============
+/usr/local/sbin/zebra -d
+/usr/local/sbin/ripd -d
+/usr/local/sbin/ospfd -d
+/usr/local/sbin/bgpd -d
+/usr/local/bin/vtysh -b
+
+* Changes in zebra-0.89
+
+* Changes in lib
+
+** distribute-list can set all interface's access-list and prefix-list
+configuration.
+
+* Changes in ripd
+
+** "show ip protocols" display proper distribute-list settings and
+distance settings.
+
+** When metric infinity route received withdraw the route from kernel
+immediately it used to be wait garbage collection.
+
+** key-chain can be used for simple password authentication.
+
+** RIPv2 MIB getnext interface bug is fixed.
+
+* Changes in vtysh
+
+** --with-libpam enable PAM authentication for vtysh.
+
+** Now vtysh read vtysh.conf. This file should be
+${SYSCONFDIR}/etc/vtysh.conf for security reason. Usually it is
+/usr/local/etc/vtysh.conf.
+
+** "username WORD nopassword" command is added to vtysh.
+
+* Chagees in ospfd
+
+** NBMA interface support is added.
+
+** OSPF area is sorted by area ID.
+
+** New implementation of OSPF refreesh.
+
+** OSPF-MIB read function is partly added.
+
+* Changes in bgpd
+
+** When the peering is done by ebgp-multihop, nexthop is looked up
+like IBGP routes.
+
+** "show ip mbgp" commands are changed to "show ip bgp ipv4
+multicast".
+
+** New terminal commands are added.
+ "show ip bgp ipv4 (unicast|multicast) filter-list WORD"
+ "show ip bgp ipv4 (unicast|multicast) community"
+ "show ip bgp ipv4 (unicast|multicast) community-list WORD"
+ "show ip bgp ipv4 (unicast|multicast) community-list WORD exact-match"
+
+** MBGP soft-reconfiguration command is added.
+ "clear ip bgp x.x.x.x ipv4 (unicast|multicast) in"
+ "clear ip bgp x.x.x.x ipv4 (unicast|multicast) out"
+ "clear ip bgp x.x.x.x ipv4 (unicast|multicast) soft"
+ "clear ip bgp <1-65535> ipv4 (unicast|multicast) in"
+ "clear ip bgp <1-65535> ipv4 (unicast|multicast) out"
+ "clear ip bgp <1-65535> ipv4 (unicast|multicast) soft"
+ "clear ip bgp * ipv4 (unicast|multicast) in"
+ "clear ip bgp * ipv4 (unicast|multicast) out"
+ "clear ip bgp * ipv4 (unicast|multicast) soft"
+
+** MED related commands are added.
+ "bgp deterministic-med"
+ "bgp bestpath med confed"
+ "bgp bestpath med missing-as-worst"
+
+** "bgp default local-preference" command is added.
+
+** BGP confederation peer's routes are passed to zebra like IBGP route.
+
+** Community match command is added.
+ "show ip bgp community <val>"
+ "show ip bgp community <val> exact-match"
+
+** EBGP multihop route treatment bug is fixed. Now nexthop is
+resolved by IGP routes.
+
+** Some commands are added to show routes by filter-list and community
+value.
+ "show ip bgp ipv4 (unicast|multicast) filter-list WORD"
+ "show ip bgp ipv4 (unicast|multicast) community"
+ "show ip bgp ipv4 (unicast|multicast) community-list WORD"
+ "show ip bgp ipv4 (unicast|multicast) community-list WORD exact-match"
+
+* Changes in zebra
+
+** zebra read interface's address information using getifaddrs() when
+it is available.
+
+** Reflect IPv6 interface's address change to protocol daemons.
+
+* Changes in zebra-0.88
+
+* Changes in lib
+
+** "exact-match" option is added to "access-list" and "ipv6
+access-list" command. If this option is specified, the prefix and
+prefix length is compared as exact match mode.
+
+* Changes in zebra
+
+** New Zebra message ZEBRA_REDISTRIBUTE_DEFAULT_ADD and
+ZEBRA_REDISTRIBUTE_DEFAULT_DELTE are added.
+
+** Default administrative distance value is changed.
+
+ Old New
+------------------------------------------
+system 10 0
+kernel 20 0
+connected 30 0
+static 40 1
+rip 50 120
+ripng 50 120
+ospf 60 110
+ospf6 49 110
+bgp 70 200(iBGP) 20(eBGP)
+------------------------------------------
+
+** Distance value can be passed from protocol daemon to zebra.
+
+** "show ip route" shows [metric/distance] value pair.
+
+** Zebra Protocol is changed to support multi-path route and distance
+value.
+
+* Changes in ospfd
+
+** "default-information originate [always]" command is added.
+
+** "default-metric <0-16777214>" command is added.
+
+** "show ip ospf database" command is integrated. LS-ID and AdvRouter can
+ be specifed. The commands are
+
+ show ip ospf database TYPE LS-ID
+ show ip ospf database TYPE LS-ID ADV-ROUTER
+ show ip ospf database TYPE LS-ID self-originate
+ show ip ospf database TYPE self-originate
+
+** route-map support for `redistribute' command are added.
+ Supported `match' statements are
+
+ match interface
+ match ip address
+ match next-hop
+
+ Supported `set' statements are
+
+ set metric
+ set metric-type
+
+** Pass OSPF metric value to zebra daemon.
+
+* Changes in ripd
+
+** When specified route-map does not exist, it means all deny.
+
+** "default-metric <1-16>" command is added.
+
+** "offset-list ACCESS-LIST-NAME <0-16>" and "offset-list
+ACCESS-LIST-NAME <0-16> IFNAME" commands are added.
+
+** "redistribute ROUTE-TYPE metric <0-16>" command is added.
+
+** "default-information originate" command is added.
+
+** "ip split-horizon" and "no ip split-horizon" is added to interface
+configuration.
+
+** "no router rip" command is added.
+
+** "ip rip authentication mode (md5|text)" is added to interface
+configuration.
+
+** "ip rip authentication key-chain KEY-CHAIN" is added to interface
+configuration.
+
+** Pass RIP metric value to zebra daemon.
+
+** Distance manipulation functions are added.
+
+* Changes in bgpd
+
+** Fix bug of next hop treatment for MPLS-VPN route exchange.
+
+** BGP peer MIB is updated.
+
+** Aggregated route has origin IGP, atomic-aggregate and proper
+aggregator attribute.
+
+** Suppressed route now installed into BGP table. It is only
+suppressed from announcement.
+
+** BGP router-id is properly set after "no router bgp ASN" and "router
+bgp ASN".
+
+** Add check for nexthop is accessible or not for IBGP routes.
+
+** Add cehck for nexthop is on connected or not for EBGP routes.
+
+** "dump bgp route" command is changed to "dump bgp route-mrt" for
+generating MRT compatible dump output.
+
+** Soft reconfiguration inbound and outbound is supported.
+
+** Route refresh feature is supported.
+
+* Changes in vtysh
+
+** VTY shell is now included into the distribution.
+
+* Changes in zebra-0.87
+
+* Changes in lib
+
+** "show startup-config" command is added.
+
+** "show history" command is added.
+
+** Memory statistics command is changed. New command
+
+ show memory all
+ show memory lib
+ show memory rip
+ show memory ospf
+ show memory bgp
+
+are added.
+
+** Filters can be removed only specify it's name. New command
+
+ no access-list NAME
+ no ip community-list NAME
+ no ip as-path access-list NAME
+ no route-map NAME
+
+are added.
+
+** At any node, user can view/save user configuration.
+
+ write terminal
+ write file
+ wirte memory
+
+are added to every node in default.
+
+** LCD completion is added. For example both "ip" and "ipv6" command
+are exist, "i" then press TAB will be expanded to "ip".
+
+* Changes in bgpd
+
+** "show ip bgp" family shows total number of prefixes.
+
+** "no bgp default ipv4-unicast" command is added.
+
+** Extended Communities support is added.
+
+** "no neighbor PEER send-community extended" command is added.
+
+** MPLS-VPN PE-RR support is added.
+
+ New address family vpnv4 unicast is introduced.
+
+ !
+ address-family vpnv4 unicast
+ neighobr PEER activate
+ network A.B.C.D rd RD tag TAG
+ exit-address-family
+ !
+
+ To make it route-reflector, please configure it under normal router
+bgp ASN.
+
+ !
+ router bgp 7675
+ no bgp default ipv4-unicast
+ bgp router-id 10.0.0.100
+ bgp cluster-id 10.0.0.100
+ neighbor 10.0.0.1 remote-as 65535
+ neighbor 10.0.0.1 route-reflector-client
+ neighbor 10.0.0.2 remote-as 65535
+ neighbor 10.0.0.2 route-reflector-client
+ neighbor 10.0.0.3 remote-as 65535
+ neighbor 10.0.0.3 route-reflector-client
+ !
+ address-family vpnv4 unicast
+ neighbor 10.0.0.1 activate
+ neighbor 10.0.0.2 activate
+ neighbor 10.0.0.3 activate
+ exit-address-family
+ !
+
+* Changes in ospfd
+
+** Many many bugs are fixed.
+
+* Changes in ripd
+
+** Better interface up/down event handle.
+
+* Changes in zebra
+
+** Better interface up/down event handle.
+
+* Changes in zebra-0.86
+
+* Changes in lib
+
+** Fix bug of exec-timeout command which may cause crush.
+
+** Multiple same policy for "access-list", "ip prefix-list, "as-path
+access-list", "ip community-list" is not duplicated.
+
+** It used to be "ip prefix-list A.B.C.D/M" match routes which mask >=
+M. Now default behavior is exact match so it only match routes which
+mask == M.
+
+* Changes in bgpd
+
+** "match ip address prefix-list" is added to route-map.
+
+** A route without local preference is evaluated as 100 local preference.
+
+** Select smaller router-id route when other values are same.
+
+** Compare MED only both routes comes from same neighboring AS.
+
+** "bgp always-compare-med" command is added.
+
+** Now MED value is passed to IBGP peer.
+
+** When neighbor's filter is configured with non-existent access-list,
+as-path access-list, ip prefix-list, route-map. The behavior is
+changed from all permit to all deny.
+
+* Changes in ospfd
+
+** Fix bug of external route tag byte order.
+
+** OSPF Neighbor deletion bug which cause crush is fixed.
+
+** Some route calculation bug are fixed.
+
+** Add sanity check with router routing table.
+
+** Fix bug of memory leak about linklist.
+
+** Fix bug of 1-WayReceived in NSM.
+
+** Take care of BIGENDIAN architecture.
+
+** Fix bug of NSM state flapping between ExStart and Exchange.
+
+** Fix bug of Network-LSA originated in stub network.
+
+** Fix bug of MS flag unset.
+
+** Add to schedule router_lsa origination when the interface cost
+changes.
+
+** Increment LS age by configured interface transmit_delay.
+
+** distribute-list is reimplemented.
+
+** Fix bug of refresh never occurs.
+
+** Fix bug of summary-LSAs reorigination. Correctly copy
+OSPF_LSA_APPROVED flag to new LSA. when summary-LSA is reoriginatd.
+
+** Fix bug of re-origination when a neighbor disappears.
+
+** Fix bug of segmentation fault with DD retransmission.
+
+** Fix network-LSA re-origination problem.
+
+** Fix problem of remaining withdrawn routes on zebra.
+
+* Changes in ripd
+
+** Do not leave from multicast group when interface goes down bug is
+fixed.
+
+* Changes in zebra
+
+** Remove client structure when client dies.
+
+** Take care static route when interface goes up/down.
+
+* Changes in zebra-0.85
+
+* Changes in bgpd
+
+** "transparent-nexthop" and "transparenet-as" commands are added.
+
+** Route reflector's originator-id bug is fixed.
+
+* Changes in ospfd
+
+** Fix bug of OSPF LSA memory leak.
+
+** Fix bug of OSPF external route memory leak.
+
+** AS-external-LSA origination bug was fixed.
+
+** LS request treatment is completely rewritten. Now performance is
+drastically improved.
+
+* Changes in ripd
+
+** RIPv1 update is done by class-full manner.
+
+* Changes in zebra-0.84b
+
+* Changes in lib
+
+** Fix bug of inet_pton return value handling
+
+* Changes in bgpd
+
+** Fix bug of BGP-4+ link-local address nexthop check for IBGP peer.
+
+** Don't allocate whole buffer for displaying "show ip bgp". Now it
+consume only one screen size memory.
+
+* Changes in ripd
+
+** Fix debug output string.
+
+** Add RIP peer handling. RIP peer are shown by "show ip protocols".
+
+* Changes in zebra-0.84a
+
+* Changes in bgpd
+
+** Fix serious bug of BGP-4+ peering under IPv6 link-local address.
+ Due to the bug BGP-4+ peering may not be established.
+
+* Changes in zebra-0.84
+
+* Changes in lib
+
+** IPv6 address and prefix parser is added to VTY by Toshiaki Takada
+ <takada@zebra.org>. DEFUN string is "X:X::X:X" for IPv6 address,
+ "X:X::X:X/M" for IPv6 prefix. You can use it like this.
+
+ DEFUN (func, cmd, "neighbor (A.B.C.D|X:X::X:X) remote-as <1-65535>")
+
+** VTY configuration is locked during configuration. This is for
+ avoiding unconditional crush from two terminals modify the
+ configuration at the same time. "who" command shows which termnal
+ lock the configuration. VTY which has '*' character at the head of
+ line is locking the configuration.
+
+** Old logging functions are removed. Functions like
+ log_open,log_close,openlog are deleted. Instead of that please use
+ zlog_* functions. zvlog_* used in ospf6d are deleted also.
+
+** "terminal monitor" command is added. "no terminal monitor" is for
+ disabling. This command simply display logging information to the
+ VTY.
+
+** dropline.[ch] files are deleted.
+
+* Changes in bgpd
+
+** BGP neighbor configuration are sorted by it's IP address.
+
+** BGP peer configuration and actual peer is separated. This is
+ preparation for Route Server support.
+
+** "no neighbor PEER" command is added. You can delete neighbor
+ without specifying AS number.
+
+** "no neighbor ebgp-multihop" command is added.
+
+** "no neighbor port PORT" command is added.
+
+** To conform RFC1771, "neighbor PEER send-community" is default
+ behavior. If you want to disable sending community attribute,
+ please specify "no neighbor PEER send-community" to the peer.
+
+** "neighbor maximum-prefix NUMBER" command is added.
+
+** Multi-protocol extention NLRI is proceeded only when the peer is
+ configured proper Address Family and Subsequent Address Family. If
+ not, those NLRI are simply ignored.
+
+** Aggregate-address support is improved. Currently below commands
+ works.
+
+ "aggregate-address"
+ "aggregate-address summary-only"
+ "no aggregate-address"
+ "no aggregate-address summary-only"
+
+ "ipv6 bgp aggregate-address"
+ "ipv6 bgp aggregate-address summary-only"
+ "no ipv6 bgp aggregate-address"
+ "no ipv6 bgp aggregate-address summary-only"
+
+** redistribute route-map bug is fixed.
+
+** MBGP support becomes default. "configure" option --enable-mbgp is
+ removed.
+
+** New command "neighbor PEER timers connect <1-65535>" is added.
+
+** New command "neighbor PEER override-capability" is added.
+
+** New command "show ip bgp neighbor A.B.C.D advertised-route" is added.
+
+** New command "show ip bgp neighbor A.B.C.D routes" is added. To use
+ this command, you have to configure neighbor with
+ "neighbor A.B.C.D soft-reconfiguration inbound" beforehand.
+
+
+* Changes in zebra-0.83
+
+* bgpd
+
+** Serious bug fix about fetching global and link-local address at the
+same time. Due to this bug, corrupted IPv6 prefix is generated. If
+you uses bgpd for BGP-4+ please update to this version. The bug is
+introduced in zebra-0.82.
+
+** When bgpd send Notify message, don't use thread manager. It is now
+send to neighbor immediately.
+
+* Changes in zebra-0.82
+
+** Solaris 2.6 support is added by Michael Handler
+<handler@sub-rosa.com>.
+
+** MBGP support is added by Robert Olsson <Robert.Olsson@data.slu.se>.
+Please specify --enable-mbgp to configure script. This option will be
+removed in the future and MBGP support will be default.
+
+* Changes in zebra
+
+** When interface goes down, withdraw connected routes from routing
+table. When interface goes up, restore the routes to the routing
+table.
+
+** `show interface' show interface's statistics on Linux and BSD with
+routing socket.
+
+** Now zebra can get MTU value on BSDI/OS.
+
+* Changes in bgpd
+
+** Add capability option support based upon
+draft-ietf-idr-bgp4-cap-neg-04.txt.
+
+** Add `show ipv6 bgp prefix-list' command.
+
+** Check self AS appeared in received routes.
+
+** redistribute route-map support is added.
+
+** BGP packet dump feature compatible with MRT.
+
+* Changes in ripd
+
+** Fix bug of `timers basic' command's argument format.
+
+* Changes in ripngd
+
+** Calculate max RTE using interface's MTU value.
+
+* Changes in ospfd
+
+** Some correction to LSU processing.
+
+** Add check for lsa->refresh_list.
+
+* Changes in ospf6d
+
+** Many debug feature is added.
+
+* Changes in zebra-0.81
+
+** SNMP support is disabled in default.--enable-snmp option is added
+to configure script.
+
+* Changes in bgpd
+
+** Fix FSM bug which introduced in zebra-0.80.
+
+* Changes in zebra-0.80
+
+* access-list
+
+ New access-list name space `ipv6 access-list' is added. At the same
+ time, `access-list' statemant only accepts IPv4 prefix. Please be
+ careful if you use IPv6 filtering. You will need to change your
+ configuration. For IPv6 filtering please use `ipv6 access-list'.
+
+ As of zebra-0.7x, user can use `access-list' for both IPv4 and IPv6
+ filtering.
+
+ ! zebra-0.7x
+ access-list DML-net permit 203.181.89.0/24
+ access-list DML-net permit 3ffe:506::0/32
+ access-list DML-net deny any
+ !
+
+ Above configuration is not valid for zebra-08x. Please add `ipv6'
+ before 'access-list' when you configure IPv6 filtering.
+
+ ! zebra-0.8x
+ access-list DML-net permit 203.181.89.0/24
+ access-list DML-net deny any
+ !
+ ipv6 access-list DML-net permit 3ffe:506::0/32
+ ipv6 access-list DML-net deny any
+ !
+
+* prefix-list
+
+ And also new prefix-list name space `ipv6 prefix-list' is added. It
+ is the same as the change of `access-list'. `ip prefix-list' now only
+ accept IPv4 prefix. It was source of confusion that `ip prefix-list'
+ can be used both IPv4 and IPv6 filtering. Now name space is separated
+ to clear the meaning of the filter.
+
+ If you use `ip prefix-list' for IPv6 filtering, please change the
+ stetement.
+
+ ! zebra-0.7x
+ ip prefix-list 6bone-filter seq 5 permit 3ffe::/17 le 24 ge 24
+ ip prefix-list 6bone-filter seq 10 permit 3ffe:8000::/17 le 28 ge 28
+ ip prefix-list 6bone-filter seq 12 deny 3ffe::/16
+ ip prefix-list 6bone-filter seq 15 permit 2000::/3 le 16 ge 16
+ ip prefix-list 6bone-filter seq 20 permit 2001::/16 le 35 ge 35
+ ip prefix-list 6bone-filter seq 30 deny any
+ !
+
+ Now user can explicitly configure it as IPv6 prefix-list.
+
+ ! zebra-0.8x
+ ipv6 prefix-list 6bone-filter seq 5 permit 3ffe::/17 le 24 ge 24
+ ipv6 prefix-list 6bone-filter seq 10 permit 3ffe:8000::/17 le 28 ge 28
+ ipv6 prefix-list 6bone-filter seq 12 deny 3ffe::/16
+ ipv6 prefix-list 6bone-filter seq 15 permit 2000::/3 le 16 ge 16
+ ipv6 prefix-list 6bone-filter seq 20 permit 2001::/16 le 35 ge 35
+ ipv6 prefix-list 6bone-filter seq 30 deny any
+ !
+
+* RIP configuration
+
+ If you want to filter only default route (0.0.0.0/0) and permit other
+ routes, it was hard to do that. Now `ip prefix-list' can be used for
+ RIP route filtering.
+
+ New statement:
+
+ `distribute-list prefix PLIST_NAME (in|out) IFNAME'
+
+ is added to ripd. So you can configure on eth0 interface accept all
+ routes other than default routes.
+
+ !
+ router rip
+ distribute-list prefix filter-default in eth0
+ !
+ ip prefix-list filter-default deny 0.0.0.0/0 le 0
+ ip prefix-list filter-default permit any
+ !
+
+* RIPng configuration
+
+ Same change is done for ripngd. You can use `ipv6 prefix-list' for
+ filtering.
+
+ !
+ router ripng
+ distribute-list prefix filter-default in eth0
+ !
+ ipv6 prefix-list filter-default deny ::/0 le 0
+ ipv6 prefix-list filter-default permit any
+ !
+
+* BGP configuration
+
+ So far, Multiprotocol Extensions for BGP-4 (RFC2283) configuration is
+ done with traditional IPv4 peering statement like blow.
+
+ !
+ router bgp 7675
+ neighbor 3ffe:506::1 remote-as 2500
+ neighbor 3ffe:506::1 prefix-list 6bone-filter out
+ !
+
+ For separating configuration IPv4 and IPv6, and for retaining Cisco
+ configuration compatibility, now IPv6 configuration is done by IPv6
+ specific statement. IPv6 BGP configuration is done by statement which
+ start from `ipv6 bgp'.
+
+ !
+ router bgp 7675
+ !
+ ipv6 bgp neighbor 3ffe:506::1 remote-as 2500
+ ipv6 bgp neighbor 3ffe:506::1 prefix-list 6bone-filter out
+ !
+
+ At the same time some IPv6 specific commands are deleted from IPv4
+ configuration.
+
+ o redistribute ripng
+ o redistribute ospf6
+ o neighbor PEER version BGP_VERSION
+ o neighbor PEER interface IFNAME
+
+ Those commands are only accepted as like below.
+
+ o ipv6 bgp redistribute ripng
+ o ipv6 bgp redistribute ospf6
+ o ipv6 bgp neighbor PEER version BGP_VERSION
+ o ipv6 bgp neighbor PEER interface IFNAME
+
+ And below new commands are added.
+
+ o ipv6 bgp network IPV6_PREFIX
+ o ipv6 bgp redistribute static
+ o ipv6 bgp redistribute connected
+ o ipv6 bgp neighbor PEER remote-as <1-65535> [passive]
+ o ipv6 bgp neighbor PEER ebgp-multihop [TTL]
+ o ipv6 bgp neighbor PEER description DESCRIPTION
+ o ipv6 bgp neighbor PEER shutdown
+ o ipv6 bgp neighbor PEER route-reflector-client
+ o ipv6 bgp neighbor PEER update-source IFNAME
+ o ipv6 bgp neighbor PEER next-hop-self
+ o ipv6 bgp neighbor PEER timers holdtime <0-65535>
+ o ipv6 bgp neighbor PEER timers keepalive <0-65535>
+ o ipv6 bgp neighbor PEER send-community
+ o ipv6 bgp neighbor PEER weight <0-65535>
+ o ipv6 bgp neighbor PEER default-originate
+ o ipv6 bgp neighbor PEER filter-list FILTER_LIST_NAME (in|out)
+ o ipv6 bgp neighbor PEER prefix-list PREFIX_LIST_NAME (in|out)
+ o ipv6 bgp neighbor PEER distribute-list AS_LIST_NAME (in|out)
+ o ipv6 bgp neighbor PEER route-map ROUTE_MAP_NAME (in|out)
+
+ And some utility commands are introduced.
+
+ o clear ipv6 bgp [PEER]
+ o show ipv6 bgp neighbors [PEER]
+ o show ipv6 bgp summary
+
+ I hope these changes are easy to understand for current Zebra users...
+
+* To restrict connection to VTY interface.
+
+ It used to be both IPv4 and IPv6 filter can be specified with one
+ access-list. Then the access-list can be appried to VTY interface
+ with `access-class' stetement in `line vty' node. Below is example in
+ zebra-0.7x.
+
+ !
+ access-list local-only permit 127.0.0.1/32
+ access-list local-only permit ::1/128
+ access-list local-only deny any
+ !
+ line vty
+ access-class local-only
+ !
+
+ Now IPv4 and IPv6 filter have each name space. It is not possible to
+ specify IPv4 and IPv6 filter with one access-list. For setting IPv6
+ access-list in `line vty', `ipv6 access-class' statement is
+ introduced. Let me show the configuration in zebra-0.8x.
+
+ !
+ access-list local-only permit 127.0.0.1/32
+ access-list local-only deny any
+ !
+ ipv6 access-list local-only permit ::1/128
+ ipv6 access-list local-only dny any
+ !
+ line vty
+ access-class local-only
+ ipv6 access-class local-only
+ !
+
+* route-map
+
+ New IPv6 related route-map match commands are added.
+
+ o match ipv6 address
+ o match ipv6 next-hop
+
+ Please change your configuration if you use IP match statement for
+ IPv6 route.
+
+ zebra-0.7x config
+ =================
+ !
+ access-list all permit any
+ !
+ route-map set-nexthop permit 10
+ match ip address all
+ set ipv6 next-hop global 3ffe:506::1
+ set ipv6 next-hop local fe80::cbb5:591a
+ !
+
+ zebra-0.8x config
+ =================
+ !
+ ipv6 access-list all permit any
+ !
+ route-map set-nexthop permit 10
+ match ipv6 address all
+ set ipv6 next-hop global 3ffe:506::1
+ set ipv6 next-hop local fe80::cbb5:591a
+ !
+
+* zebra connection
+
+ Protocol daemon such as ripd, bgpd, ospfd will reconnect zebra daemon
+ when the connection fail. Those daemons try to connect zebra every 10
+ seconds first three trial, then the interval changed to 60 seconds.
+ After all, if ten connections are fail, protocol daemon give up the
+ connection to the zebra daemon.
+
+* SNMP support (is not yet finished)
+
+ Zebra uses SMUX protocol (RFC1227) for making communication with SNMP
+ agent. Currently lib/smux.c can be compiled only with ucd-snmp-4.0.1
+ and http://ucd-snmp.ucdavis.edu/patches/012.patch. It can not be
+ compiled with ucd-snmp-3.6.2.
+
+ After applying the patch to ucd-snmp-4.0.1, please configure it with
+ SMUX module.
+
+ % configure --with-mib-modules=smux
+
+ After compile & install ucd-snmp-4.0.1, you will need to configure
+ smuxpeer. I'm now using below configuration.
+
+ /usr/local/share/snmp/snmpd.conf
+ ================================
+ smuxpeer 1.3.6.1.6.3.1 test
+
+ Above 1.3.6.1.6.3.1 and test is temporary configuration which is hard
+ coded in lib/smux.c. Yes, I know it is bad, I'll change it ASAP.
+
+* HUP signal treatment
+
+ From zebra-0.80, ripd will reload it's configuration file when ripd
+ receives HUP signal. Other daemon such as bgpd, ospfd will support
+ HUP signal treatment soon.
+
+* Changes in zebra-0.79
+
+* Changes in zebra
+
+** Broadcast address setting on Linux box bug is fixed.
+
+** Protocol daemon can install connected IPv6 route into the kernel.
+
+** Now zebra can handle blackhole route.
+
+* Changes in ripd
+
+** Add route-map feature for RIP protocol.
+
+** In case of RIP version 2 routing table entry has IPv4 address and
+netmask pair which host part bit is on, ignore the entry.
+
+* Changes in ripngd
+
+** Change CMSG_DATA cast from (u_char *) to (int *). (u_char *) does
+not work for NetBSD-currnet on SparcStation 10.
+
+* Changes in ospfd
+
+** MaxAge LSA treatment is added.
+
+** ABR/ASBR functionality is added.
+
+** Virtual Link funtionality is added.
+
+** ABR behaviors IBM/Cisco/Shortcut is added.
+
+* Changes in ospf6d
+
+** Enclosed KAME specific part with #ifdef #endif
+
+* Changes in zebra-0.78
+
+* Changes in lib
+
+** SNMP support is started.
+
+** Now Zebra can work on BSD/OS 4.X.
+
+** Now Zebra can compiled on vanilla OpenBSD 2.5 but not yet working correcltly.
+
+* Changes in zebra
+
+** Interface index detection using ioctl() bug is fixed.
+
+** Interface information protocol is changed. Now interface
+addition/deletion and interface's address addition/deletion is
+separated.
+
+* Changes in bgpd
+
+** BGP hold timer bug is fixed.
+
+** BGP keepavlie timer becomes configurable.
+
+* Changes in ripd
+
+** When making reply to rip's REQUEST message, fill in
+RIP_METRIC_INFINITY with network byte order using htonl ().
+
+** Pass host byte order address to IN_CLASSC and IN_CLASSB macro.
+
+* Changes in ospfd
+
+** LSA flooding works.
+
+** Fix bug of DD processing.
+
+** Fix bug of originating router-LSA bug is fixed.
+
+** LSA structure is changed to support LSA aging.
+
+* Changes in ospf6d
+
+** `ip6' statement in configuration is changed to `ipv6'.
+
+* Changes in zebra-0.77
+
+* Changes in lib
+
+** SIGUSR1 reopen logging file.
+
+** route-map is extended to support multi-protocol routing
+information.
+
+** When compiling under GNU libc 2.1 environment don't use inet6-apps.
+
+* Changes in zebra
+
+** Basic IPv6 router advertisement codes added. It is not yet usable.
+
+** Fix IPv6 route addition/deletion bug is fixed.
+
+** `show ip route A.B.C.D' works
+
+* Changes in bgpd
+
+** When invalid unfeasible routes length comes, bgpd send notify then
+continue to process the packet. Now bgpd stop parsing invalid packet
+then return to main loop.
+
+** BGP-4+ withdrawn routes parse bug is fixed.
+
+** When BGP-4+ information passed to non shared network's peer, trim
+link-local next-hop information.
+
+** `no redistribute ROUTE_TYPE' withdraw installed routes from BGP
+routing information.
+
+** `show ipv6 route IPV6ADDR' command added.
+
+** BGP start timer has jitter.
+
+** Holdtimer configuration bug is fixed. Now configuration does not
+show unconfigured hold time value.
+
+* Changes in ripngd
+
+** Now update timer (default 30 seconds) has +/- 50% jitter value.
+
+** Add timers basic command.
+
+** `network' configuration is dynamically reflected.
+
+** `timers basic <update> <timeout> <garbage>' added.
+
+* Changes in ripd
+
+** Reconstruct almost codes.
+
+** `network' configuration is dynamically reflected.
+
+** RIP timers now conforms to RFC2453. So user can configure update,
+timeout, garbage timer.
+
+** `timers basic <update> <timeout> <garbage>' works.
+
+* Changes in ospfd
+
+** Bug of originating network LSA is fixed.
+
+** `no router ospf' core dump bug is fixed.
+
+* Changes in ospf6d
+
+** Redistribute route works.
+
+* Changes in zebra-0.76
+
+* Changes in lib
+
+** configure.in Linux IPv6 detection problem is fixed.
+
+** Include SERVICES file to the distribution
+
+** Update zebra.texi to zebra-0.76.
+
+* Changes in zebra-0.75
+
+* Changes in lib
+
+** `termnal length 0' bug is fixed.
+
+* Changes in zebra
+
+** When zebra starts up, sweep all zebra installed routes. If -k or
+--keep_kernel option is specified to zebra dameon. This function is
+not performed.
+
+* Changes in ripngd
+
+** Aggreagte address command supported. In router ripngd,
+`aggregate-address IPV6PREFIX' works.
+
+* Changes in bgpd
+
+** Input route-map's bug which cause segmentation violation is fixed.
+
+** route-map method improved.
+
+** BGP-4+ nexthop detection improved.
+
+** BGP-4+ route re-selection bug is fixed.
+
+** BGP-4+ iBGP route's nexthop calculation works.
+
+** After connection Established `show ip bgp neighbor' display BGP TCP
+connection's source and destination address.
+
+** In case of BGP-4+ `show ip bgp neighbor' display BGP-4+ global and
+local nexthop which used for originated route. This address will be
+used when `next-hop-self'.
+
+* Changes in ospfd
+
+** Fix bug of DR election.
+
+** Set IP precedence field with IPTOS_PREC_INTERNET_CONTROL.
+
+** Schedule NeighborChange event if NSM status change.
+
+** Never include a neighbor in Hello packet, when the neighbor goes
+down.
+
+* Changes in zebra-0.74
+
+* Changes in lib
+
+** Now `terminal length 0' means no line output control.
+
+** `line LINES' command deleted. Instead of this please use `terminal
+length <0-512>'.
+
+** `terminal length <0-512>' is each vty specific configuration so it
+can not be configured in the configuration file. If you want to
+configure system wide line control, please use `service
+terminal-length <0-512>'. This configuration affects to the all vty
+interface.
+
+* Changes in zebra
+
+** Installation of IPv6 route bug is fixed.
+
+* Changes in bgpd
+
+** Very serious bug of bgp_stop () is fixed. When multiple route to
+the same destination exist, bgpd try to announce the information to
+stopped peer. Then add orphan write thread is added. This cause
+many strange behavior of bgpd.
+
+** Router-id parsing bug is fixed.
+
+** With BGP-4+ nexthop installation was done with global address but
+it should be link-local address. This bug is fixed now.
+
+** When incoming route-map prepend AS, old AS path remained. Now bgpd
+free old AS path.
+
+** `neighbor PEER weight <0-65535>' command added.
+
+* Changes in ripngd
+
+** Almost codes are rewritten to conform to RFC2080.
+
+* Changes in ospfd
+
+** SPF calculation timer is added. Currently it is set to 30 seconds.
+
+** SPF calculation works now.
+
+** OSPF routing table codes are added.
+
+** OSPF's internal routes installed into the kernel routing table.
+
+** Now `ospfd' works as non-area, non-external route support OSPF
+router.
+
+** Call of log_rotate() is removed.
+
+* Changes in ospf6d
+
+** LSA data structure is changed.
+
+** Call of log_rotate() is removed.
+
+* Changes in zebra-0.73
+
+* Changes in lib
+
+** `config terminal' is changed to `configure terminal'.
+
+** `terminal length <0-512>' command is added.
+
+** Variable length argument was specified by `...'. Now all strings
+started with character `.' is variable length argument.
+
+* Changes in zebra
+
+** Internal route (such as iBGP, internal OSPF route) handling works
+correctly.
+
+** In interface node, `ipv6 address' and `no ipv6 address' works.
+
+** Interface's address remain after `no ip address' bug is fixed.
+
+** Host route such as IPv4 with /32 mask and IPv6 with /128 mask
+didn't set RTF_GATEWAY even it has gateway. This bug if fixed now.
+
+* Changes in bgpd
+
+** `match as-path' argument is used to be specify AS PATH value itself
+directly (e.g. ^$). But it is changed to specify `ip as-apth
+access-list' name.
+
+** iBGP route handle works without getting error from the kernel.
+
+** `set aggregator as AS A.B.C.D' command is added to route-map.
+
+** `set atomic-aggregate' command is added to bgpd's routemap.
+
+** Announcement of atomic aggregate attribute and aggregator attribute
+works.
+
+** `update-source' bug is fixed.
+
+** When a route learned from eBGP is announced to iBGP, local
+preference was set to zero. But now it set to
+DEFAULT_LOCAL_PREF(100).
+
+* Changes in ripd
+
+** RIPv1 route filter bug is fixed.
+
+** Some memory leak is fixed.
+
+* Changes in ospfd
+
+** Fix bug of DR Election.
+
+** Fix bug of adjacency forming.
+
+* Changes in ospf6d
+
+** Clean up logging message.
+
+** Reflect routing information to zebra daemon.
+
+* Changes in zebra-0.72
+
+* Changes in lib
+
+** When getsockname return IPv4 mapped IPv6 address. Convert it to
+IPv4 address.
+
+* Changes in bgpd
+
+** Change route-map's next-hop related settings.
+
+set ip nexthop -> set ip next-hop
+set ipv6 nexthop global -> set ipv6 next-hop global
+set ipv6 nexthop local -> set ipv6 next-hop local
+
+** Add `next-hop-self' command.
+
+* Changes in ospfd
+
+** Fix bug of multiple `network area' directive crashes.
+
+* Changes in zebra-0.71
+
+* Changes in lib
+
+** `log syslog' command is added.
+
+** Use getaddrinfo function to bind IPv4/IPv6 server socket.
+
+** `no banner motd' will suppress motd output when user connect to VTY.
+
+** Bind `quit' command to major nodes.
+
+* Changes in zebra
+
+** Point-to-point link address handling bug is fixed.
+
+* Changes in bgpd
+
+** AS path validity check is added. If malformed AS path is received
+NOTIFY Malformed AS path is send to the peer.
+
+** Use getaddrinfo function to bind IPv4/IPv6 server socket.
+
+* Changes in ripd
+
+** Connected network announcement bug is fixed.
+
+** `broadcast' command is deleted.
+
+** `network' command is added.
+
+** `neighbor' command is added.
+
+** `redistribute' command is added.
+
+** `timers basic' command is added.
+
+** `route' command is added.
+
+* Changes in ripngd
+
+** Fix metric calculation bug.
+
+* Changes in ospfd
+
+** Check sum bug is fixed.
+
+* Chanegs in ospf6d
+
+** Routing table code is rewritten.
+
+* Changes in zebra-0.70
+
+* Changes in zebra
+
+** Critical routing information base calculation bug check is fixed.
+
+** zebra ipv4 message is extended to support external/internal route
+flavor.
+
+** Now if internal route doesn't has direct connected nexthop, then
+nexthop is calculated by looking up IGP routing table.
+
+* Changes in bgpd
+
+** `neighbor PEER update-source IFNAME' command added as ALIAS to
+`neighbor PEER interface IFNAME'.
+
+* Changes in ospfd
+
+** DD null pointer bug is fixed.
+
+* Changes in zebra-0.69
+
+* Changes in zebra
+
+** zebra redistirbution supports dynamic notification of the route
+change. If you add static route while running zebra, it will be
+reflected to other protocol daemon which set `redistribute static'.
+
+** If static route installation is failed due to the error. The
+static route is not added to the configuration and zebra routing
+table.
+
+** zebra sets forwarding flag to on when it starts up.
+
+** `no ip forwarding' turn off IPv4 forwarding.
+
+** `no ipv6 forwarding' turn off IPv6 forwarding.
+
+** Change `show ipforward' command to `show ip forwarding'.
+
+** Change `show ipv6forward' command to `show ipv6 forwarding'.
+
+** `ip route A.B.C.D/M INTERFACE' works. So you can set `ip route
+10.0.0.0/8 eth0'.
+
+* Changes in bgpd
+
+** `neighbor PEER send-community' command is added. If the option is
+set, bgpd will send community attribute to the peer.
+
+** When a BGP route has no-export community attribute and
+send-community is set to the peer, the route is not announced to the
+peer.
+
+* Changes in ripngd
+
+** When ripngd terminates, delete all installed route.
+
+** `redistribute static', `redistribute connected' works.
+
+** Change `debug ripng event' to `debug ripng events'.
+
+** Change `show debug ripng' to `show debugging ripng'.
+
+** Bug of static route deletion is fixed.
+
+* Changes in ospfd
+
+** LS request and LS update can be send and received.
+
+* Changes in zebra-0.68
+
+* Changes in lib
+
+** DEFUN() is extended to support (a|b|c) statement.
+
+** Input buffer overflow bug is fixed.
+
+* Changes in bgpd
+
+** `ip community-list' is added.
+
+** set community and match community is added to route-map statement.
+
+** aggregate-address A.B.C.D/M partly works. Now it works only
+summary-only mode.
+
+* Changes in zebra
+
+** IPv6 network address delete bug is fixed.
+
+* Changes in ospfd
+
+** DR election bug fixed.
+
+** Now Database Description can be send or received.
+
+** Neighbor State Machine goes to Full state.
+
+* Changes in ospf6d
+
+** router zebra related bug is fixed.
+
+* Changes in zebra-0.67
+
+* Changes in lib
+
+** `service password-encryption' is added for encrypted password.
+
+* Changes in bgpd
+
+** `set as-path prepend ASPATH' is added to route-map command.
+
+** `set weight WEIGHT' is added to route-map command.
+
+** `no set ipv6 nexthop global' and `no set ipv6 nexthop local'
+command is added to route-map.
+
+** `neighbor IP_ADDR version BGP_VERSION' command's BGP_VERSION
+argument changed.
+
+Old New
+=====================
+bgp4 4
+bgp4+ 4+
+bgp4+-draft-00 4-
+=====================
+
+If you want to peer with old draft version of BGP-4+, please configure
+like below:
+
+router bgp ASN
+ neighbor PEER version 4-
+
+** Some AS path isn't correctly compared during route selection. Now
+it is fixed.
+
+* Changes in ospfd
+
+** `router zebra' is default behavior.
+
+* Changes in ospf6d
+
+** `router zebra' is default behavior.
+
+* Changes in zebra-0.66
+
+* Changes in zebra
+
+** When other daemon such as gated install routes into the kernel then
+zebra blocks. This is only occur with netlink socket. Now socket is
+set as NONBLOCKING and problem is fixed. Reported and fixed by
+Patrick Koppen <koppen@rhrk.uni-kl.de>
+
+* Changes in bgpd
+
+** Now `router zebra' is not needed to insert BGP routes into the
+kernel. It is default behavior. If you don't want to install the BGP
+routes to the kernel, please configure like below:
+
+!
+router zebra
+ no redistribute bgp
+!
+
+** redistribute connected works.
+
+** redistribute static now filter local loopback routes and link local
+network.
+
+* Changes in ripd
+
+** Some network check is added. Patch is done by Carlos Alberto
+Barcenilla <barce@frlp.utn.edu.ar>
+
+* Changes in ripngd
+
+** Sometimes ripngd install wrong nexthop into the kernel. This bug
+is fixed now.
+
+** Now `router zebra' is not needed to insert RIPng routes into the
+kernel. It is default behavior. If you don't want to install the BGP
+routes to the kernel, please configure like below:
+
+!
+router zebra
+ no redistribute ripng
+!
+
+* Changes in zebra-0.65
+
+* Changes in lib
+
+** `C-c' changes current node to ENABLE_NODE. Previously it doesn't.
+
+** In ENABLE_NODE, `exit' command close vty connection.
+
+** `service advanced-vty' enable advanced vty function. If this
+service is specified one can directly connect to ENABLE_NODE when
+enable password is not set.
+
+** `lines LINES' command is added by Stephen R. van den Berg
+<srb@cuci.nl>.
+
+* Changes in zebra
+
+** Basic Linux policy based routing table support is added by Stephen
+R. van den Berg <srb@cuci.nl>.
+
+* Changes in bgpd
+
+** route-map command is improved:
+ `match ip next-hop': New command.
+ `match metric': New command.
+ `set metric': Doc fixed.
+ `set local-preference': DEFUN added.
+
+* Changes in ripd
+
+** Check of announced network is added. Now multicast address is
+filtered. Reported by Carlos Alberto Barcenilla
+<barce@frlp.utn.edu.ar>
+
+** Check of network 127 is added. Reported by Carlos Alberto
+Barcenilla <barce@frlp.utn.edu.ar>
+
+* Changes in ripngd
+
+** Aging route bug is fixed.
+
+** `router zebra' semantics changed. ripngd automatically connect to
+zebra.
+
+* Changes in ospfd
+
+** `no router ospf' works.
+
+* Changes in ospf6d
+
+** Bug fix about network vertex.
+
+* Changes in zebra-0.64.1.
+
+This is bug fix release.
+
+* Changes in lib
+
+** Add check of sin6_scope_id in struct sockaddr_in6. For compilation
+on implementation which doesn't have sin6_scope_id. Reported by Wim
+Biemolt <Wim.Biemolt@ipv6.surfnet.nl>.
+
+* Changes in zebra
+
+** Fix bug of display BGP routes as "O" instead of "B". Reported by
+"William F. Maton" <wmaton@enterprise.ic.gc.ca> and Dave Hartzell
+<hartzell@greatplains.net>.
+
+* Changes in bgpd
+
+** `no network IPV6_NETWORK' statement and `no neighbor IP_ADDR timers
+holdtime [TIMER]' statement doesn't work. Reported by Georg Hitsch
+<georg@atnet.at>. Now both statement work.
+
+* Changes in ospfd
+
+** Last interface is not updated by ospf_if_update(). Reported by
+Dave Hartzell <hartzell@greatplains.net>.
+
+* Changes in ospf6d
+
+** Byte order of ifid is changed. Due to this change, this code will
+not work with previous version, sorry.
+
+** Fix `show ip route' route type mismatch.
+
+** Fix bug of no network IPV6_NETWORK.
+
+** Important bug fix about intra-area-prefix-lsa.
+
+* Changes in zebra-0.64.
+
+* Changes in lib
+
+** prefix-list based filtering routine is added. Currently used in
+bgpd but it will be in other daemons.
+
+* Changes in bgpd
+
+** `no router bgp' works. But network statement is not cleared. This
+should be fixed in next beta.
+
+** Route reflector related statement is added.
+
+ router bgp ASN
+ bgp cluster-id a.b.c.d
+ neighbor a.b.c.d route-reflector-client
+
+ is added.
+
+** Prefix list based filtering is added.
+
+ router bgp ASN
+ neighbor a.b.c.d prefix-list PREFIX_LIST_NAME
+
+** Prefix list based routing display works.
+
+ show ip bgp prefix-list PREFIX_LIST_NAME
+
+* Changes in ripd
+
+** Fix route metric check bug. Reported from Mr. Carlos Alberto
+Barcenilla.
+
+* Changes in ospf6d
+
+** There are many changes. If you have interested in ospf6d please
+visit ospf6d/README file.
+
+* Changes in zebra-0.63 first beta package.
+
+* Changes in lib
+
+** `copy running-config stgartup-config' command is added.
+
+** prefix length check bug is fixed. Thanks Marlos Barcenilla
+<barce@frip.utn.edu.ar>.
+
+* Changes in ospfd
+
+** DR and BDR election works.
+
+** OSPF Hello simple authentication works.
+
+* Changes in ospf6d
+
+** Now ospf6d can be compiled on both Linux and *BSD system.
+
+* Changes in zebra-19990420 snapshot
+
+** `make dist' at top directory works now.
+
+* Changes in lib
+
+** VTY has now access-class to restrict remote connection.
+Implemented by Alex Bligh <amb@gxn.net>.
+
+!
+line vty
+ access-class ACCESS-LIST-NAME
+!
+
+** `show version' command added. Implemented by Carlos Alberto
+Barcenilla <barce@frlp.utn.edu.ar>
+
+* Changes in zebra
+
+** `ip address' command on *BSD bug is fixed.
+
+** `no ip address' works now for IPv4 address.
+
+** Now `write terminal' display `ip address' configuration.
+
+* Changes in bgpd
+
+** Redistribute static works now. Please run both zebra and bgpd.
+bgpd.conf should be like this:
+
+!
+router zebra
+!
+router bgp ASN
+ redisitribute static
+!
+
+* Changes in guile
+
+** configure --enable-guile turns on zebra-guile build.
+
+** (router-bgp ASN) allocates real bgp structre.
+
+* Changes in zebra-19990416 snapshot
+
+** Set version to 0.60 for preparation of beta release.
+
+** New directory guile is added for linking with guile interpreter.
+
+* Changes in zebra
+
+** On GNU/Linux Kernel 2.2.x (with netlink support), zebra detects
+asynchronous routing updates. *BSD support is not yet finished.
+
+* Changes in bgpd
+
+** `show ip bgp regexp ASPATH_REGEX' uses CISCO like regular expression
+instead of RPSL like regular expression. I'm planing to provide RPSL
+like regular expression with `show ip bgp rpsl' or something.
+
+* Changes in lib
+
+** Press '?' at variable mandatory argument, vty prints nothing. Now
+vty outputs description about the argument. Fixed by Alex Bligh
+<amb@gxn.net>
+
+** buffer.c has some ugly bugs. Due to the bug, vty interface hangs
+when large output date exists. This bug is fixed. Reported by Alex
+Bligh <amb@gxn.net>.
+
+* Changes in ospfd
+
+** DR and BDR information is shown by `show ip ospf interface' command.
+
+* Changes in zebra-19990408 snapshot
+
+* Changes in bgpd
+
+** Old BGP-4+ specification (described in old draft) treatment bug is
+fixed. It seems that mrtd uses this format as default. So if you
+have problem peering with mrtd and want to use old draft format please
+use version statement like this.
+
+neighbor PEER_ADDRESS remote-as ASN
+neighbor PEER_ADDRESS version bgp4+-draft-00
+
+** When AS path is epmty (routes generated by bgpd), SEGV is occur
+when announce the routes to eBGP peer. Reported by
+kad@gibson.skif.net.
+
+** ip as-path access-list command is added.
+
+** neighbor PEER_ADDRESS filter-list AS_LIST [in|out] command is added.
+
+** neighbor PEER_ADDRESS timers holdtimer TIMER command is added.
+
+* Changes in all daemons
+
+** With KAME stack, terminal interface is now bind AF_INET socket
+instead of AF_INET6 one.
+
+* Changes in zebra-19990403 snapshot
+
+* Changes in bgpd
+
+** When bgpd has 'router zebra', bgpd automatically select it's router
+ID as most highest interface's IP Address.
+
+** When AS path is empty (in case of iBGP), it doesn't include any AS
+segment. This change is for announcement to gated under iBGP.
+
+* Changes in ospfd
+
+** OSPF hello packet send/receive works.
+
+* Changes in ospf6d
+
+** Yasuhiro Ohara's ospf6d codes is imported. It is under development
+and can't be compiled on any platform.
+
+* Changes in zebra-19990327 snapshot
+
+* Changes in bgpd
+
+** When BGP-4+ connection is done by IPv6 link-local address. One
+have to specify interface index for the connection. So I've added
+interface statement to the neighbor commmand. Please specify
+interface name for getting interface index like below. This statement
+only works on GNU/Linux. I'll support BSD ASAP.
+
+router bgp 7675
+ neighbor fe80::200:f8ff:fe01:5fd3 remote-as 2500
+ neighbor fe80::200:f8ff:fe01:5fd3 interface sit3
+
+** For disable BGP peering `shutdown' command is added.
+
+router bgp 7675
+ neighbor 10.0.0.1 shutdown
+
+** `description' command is added to neighbor statement.
+
+router bgp 7675
+ neighbor 10.0.0.1 description peering with Norway.
+
+** `show ip bgp regexp AS-REGEXP' works again.
+
+show ip bgp regexp AS7675
+
+will show routes which include AS7675.
+
+** When a route which is made from `network' statement is send to
+neighbor. Set it's nexthop to self. So 10.0.0.0/8 is announced to
+the peer A with source address 192.168.1.1. The routes nexthop is set
+to 192.168.1.1.
+
+* Changes in zebra
+
+** In zebra/rtread_sysctl.c, function rtm_read() may overrun allocated
+buffer when the address family is not supported and the length is big
+(i.e link address). Reported Achim Patzner <ap@bnc.net>.
+
+* Changes in ospfd
+
+** Now ospfd receive OSPF packet.
+
+* Changes in zebra-19990319 snapshot
+
+* Changes in configuration and libraries
+
+** User can disable IPv6 feature and/or pthread feature by configure
+ option.
+
+ To disable IPv6: configure --disable-ipv6
+ To disable pthread: configure --disable-pthread
+
+** User can disable specified daemon by configure option.
+
+ Don't make zebra: configure --disable-zebra
+ Don't make bgpd: configure --disable-bgpd
+ Don't make ripd: configure --disable-ripd
+ Don't make ripngd: configure --disable-ripngd
+ Don't make ospfd: configure --disable-ospfd
+ Don't make ospf6d: configure --disable-ospf6d
+
+** Sample configuration files are installed as 600 file flag.
+ Suggested by Jeroen Ruigrok/Asmodai <asmodai@wxs.nl>.
+
+** syslog logging feature is added by Peter Galbavy
+ <Peter.Galbavy@knowledge.com>
+
+** Inclusion of standard header files is reworked by Peter Galbavy
+ <Peter.Galbavy@knowledge.com>
+
+** Change description from GNU/Linux 2.1.X to GNU/Linux 2.2.X
+
+** If daemon function exists in standard C library use it.
+
+** To generate configure script we upgrade autoconf to 2.13. To
+generate Makefile.in we upgrade automake to 1.4.
+
+** doc/texinfo.tex is added to distribution.
+
+** Update ports/pkg/DESCR description.
+
+** Update doc/zebra.texi.
+
+** logfile FILENAME statement deleted. Instead of that please use log
+file FILENAME.
+
+* Changes in zebra
+
+* Changes in bgpd
+
+** Communication between zebra and bgpd works now. So if there is
+ `router zebra' line in bgpd.conf, selected route is installed
+ into kernel routing table.
+
+** Delete all routes which inserted by bgpd when bgpd dies. If you
+want to retain routes even bgpd dies please specify [-r|--retain]
+option to bgpd.
+
+** BGP announcement code is reworked. Now bgpd announce selected
+ routes to other peer.
+
+** All output bgp packet is buffered. It's written to the socket when
+ it gets ready.
+
+** Output route-map works now. You can specify output route-map by:
+
+ neighbor IP_ADDR route-map ROUTE_MAP_NAME out
+
+** New route-map command added.
+
+ set ip nexthop IP_ADDR
+ set ipv6 nexthop global IP_ADDR
+
+** Fix bug about unlock of the route_node structure.
+
+** BGP-4+ support is added. bgpd can listen and speak BGP-4+ packet
+specified in RFC2283. You can view IPv6 bgp table by: `show ipv6 bgp'.
+
+** Meny packet overflow check is added.
+
+* Changes in ripd
+
+* Changes in ripngd
+
+* Changes in ospfd
+
+** ospfd work is started by Toshiaki Takada <takada@zebra.org>. Now
+several files are included in ospfd directory.
+
+** ospf6d codes are merged from Yasuhiro Ohara <yasu@sfc.wide.ad.jp>'s
+ospfd work. Now codes are located in ospf6d directory.
+
+
+Local variables:
+mode: outline
+paragraph-separate: "[ ]*$"
+end: