# Changelog
## [0.21.0] - 2026-04-18
### Breaking changes
- Use netlink-packet-route 0.30. (7bfbbf5)
- Deprecated `NeighbourAddRequest::link_local_address()`, please use
`NeighbourAddRequest::link_layer_address()`. (7bfbbf5)
### New features
- link: add vxcan support. (cd212b8)
### Bug fixes
- addr: only assign broadcast when subnet over /31. (7c16a2d)
## [0.20.0] - 2026-01-01
### Breaking changes
- Please check breaking changes in netlink-packet-route 0.28.0 and 0.27.0.
- Use netlink-packet-route 0.28.0. (0486ff7)
- Change `LinkBond` to align with rust-netlink-route 0.27.0. (563f95d)
### New features
- link: Support specifying arbitrary LinkMessage for `RTM_DELLINK`. (d4d5a4b)
- link: Support changing VLAN filter of bridge itself. (1f8b7da)
- link: Support changing bridge VLAN filtering. (e520140)
- link: Add `LinkBridgePort` for modifying bridge port properties. (86dd67d)
- link: Expand LinkBridge to support all bridge options. (c85d988)
- link: Add support for `netkit` devices. (2f18ca4)
- link: Add `LinkHandle::change()` to changing existing interface. (2d1a6cc)
### Bug fixes
- link bridge: Fix typo of document. (a994f72)
## [0.19.0] - 2025-12-09
### Breaking changes
- Please check breaking changes of netlink-packet-route 0.19.0
### New features
- vlan: Add wrapper for setting VLAN protocol and flags. (50fbcb3)
- Add function on RouteMessageBuilder for setting route mark. (c0edfbf)
- Support creating multicast netlink connection. (84dfe67)
### Bug fixes
- Swap 'futures' dependency for 'futures-util' and 'futures-channel'. (26eda64)
## [0.18.1] - 2025-09-09
### Breaking changes
- N/A
### New features
- route: Support defining ECMP weight. (7fcba62)
- route: Support defining ECMP flags. (18c4331)
- route: allow IPv6 gateway in IPv4 route. (e1784a3)
### Bug fixes
- N/A
## [0.18.0] - 2025-08-27
### Breaking changes
- Please check `netlink-packet-route` 0.25.0 breaking changes.
- Please check `netlink-packet-core` 0.8.0 breaking changes.
- Please check `netlink-proto` 0.12.0 breaking changes.
- Removed `rtnetlink::packet_utils`. (9373d77)
### New features
- ip: Introduced `AddressMessageBuilder`. (1fe2569)
- macsec: Introduced `LinkMacSec`. (b9dd9d9)
- Allow the user to specify their own socket. (6547f22)
- Allow `TrafficGetFilterRequest` to get ingress or egress filters. (45f9206)
### Bug fixes
- Replace `impl TryStream` with `impl Stream`. (513e8c3)
- Fix android build. (3e270c6)
- Should not set `NLM_F_EXCL` when deleting alt-name. (7dd58dd)
## [0.17.0] - 2025-05-29
### Breaking changes
- Please check `netlink-packet-route` 0.24.0 breaking changes.
### New features
- route: Implement support for the ONLINK flag. (30aa30f)
- route: Support for MPLS routes and nexthop label stacks. (e7e7344)
- route: Support for multipath routes. (0236751)
### Bug fixes
- N/A
## [0.16.0] - 2025-03-10
### Breaking changes
- N/A
### New features
- Add support of tc filter del command. (51cfceb)
### Bug fixes
- Fix error on decoding empty `IFLA_VFINFO_LIST`. (581b4ac)
## [0.15.0] - 2025-03-10
### Breaking changes
- Deprecated `LinkAddRequest::xfrmtun()` in the favor of
`LinkAddRequest::xfrmtun_link`. (de62338)
- Changed `RouteGetRequest::new()` to use `RouteMessageBuilder`. (9be24c6)
- Changed `LinkAddRequest()` and `LinkSetRequest` to use
`LinkMessageBuilder`. (230a729)
### New features
- Support specifying link when crating xfrm interface. (de62338)
- Support creating VRF link. (6863102)
- Introducing `RouteAddRequest` for building netlink message for adding
routes. (b5e0cb6, 24bf04f)
- Reexport `netlink-*` packages. (a4d2611)
- impl Debug, Clone for all requests and handles. (515471f)
### Bug fixes
- N/A
## [0.14.1] - 2024-02-01
### Breaking changes
- N/A
### New features
- FreeBSD support. (eb04e60)
- Support specifying MAC address in `LinkAddRequest`. (d76171c)
- Support creating wireguard link in `LinkAddRequest`. (24982ec)
- Support setting priority in `RouteAddRequest`. (c840e78)
### Bug fixes
- Fixing docs of AddressGetRequest::set_address_filter. (006a348)
## [0.14.0] - 2023-12-05
### Breaking changes
- Many `VxlanAddRequest` functions changed from u8 to bool. (ba4825a)
- Deprecated `LinkSetRequest::master()` in the favor of
`LinkSetRequest::controller()`. (ba4825a)
- Deprecated `LinkSetRequest::nomaster()` in the favor of
`LinkSetRequest::nocontroller()`. (ba4825a)
- Many `NeighbourAddRequest` functions changed from u8/u16 to enum. (ba4825a)
- Many `TrafficFilterNewRequest` functions changed from u8/u16 to enum.
(ba4825a)
### New features
- Rule: function to set fw_mark when adding rule. (dabef43)
### Bug fixes
- N/A
## [0.13.1] - 2023-07-18
### Breaking changes
- Deprecated `BondAddRequest::active_slave()` in the favor of
`BondAddRequest::active_port()`. (9b67c97, bf6dbf0)
- Deprecated `BondAddRequest::all_slaves_active()` in the favor of
`BondAddRequest::all_ports_active()`. (9b67c97, bf6dbf0)
### New features
- Support bond port setting. (7afe563)
- Support VLAN QOS setting. (78a58db)
### Bug fixes
- N/A
## [0.13.0] - 2023-07-10
### Breaking changes
- `TrafficFilterNewRequest::u32()` changed to return `Result`. (b7f8c73)
- `TrafficFilterNewRequest::redirect() changed to return `Result`. (b7f8c73)
- Deprecated `RouteAddRequest::table` in the favor of
`RouteAddRequest::table_id` in order to support table ID bigger than 255.
(0a8eddd)
### New features
- Support route table ID bigger than 255. (0a8eddd)
- Support creating xfrm tunnel. (5252908)
### Bug fixes
- Removed assers. (e6bcf3e)
## [0.12.0] - 2023-01-29
### Breaking changes
- Removed these reexports. (2d58a54)
* `rtnetlink::packet`
* `rtnetlink::proto`
* `rtnetlink::sys`
### New features
- Allow adding macvtap on a link. (ad1207f)
- Support setting priority when adding rules. (b771ffd)
### Bug fixes
- Fix ip_monitor example. (b12f061)