ip(8) in base
Andreas Nilsson
andrnils at gmail.com
Sun Aug 16 09:21:27 UTC 2020
On Sun, Aug 16, 2020 at 11:11 AM Alexander V. Chernikov <melifaro at ipfw.ru>
wrote:
> I want to introduce ip(8) or something similar in base.
> Basically, I need some userland tool to explicitly operates on nexthops,
> nexthop groups and fib lookup algorithms.
>
> The existing tools are not well suited for the job: route(8) may be a
> candidate, but (a) it would either add another bunch of options or
> drastically change the tool by introducing [route nhop add], [route nhgroup
> add] and (b) listing is traditionally done by netstat(8).
>
> I feel like there is a need of some cli tool that provides the ability to
> easily extend it by having separate namespaces for each sub-command (hello,
> ifconfig).
>
> Naming is hard. I can, for example, use "rt" as a name to address my use
> cases.
> However, given the kernel interfaces for managing nexthops/nexhop groups
> are the same as with routes/arp/ndp, why not spending some additional time
> and support operating on routes and neighbors and name it ip?
>
> Though, that arises multiple questions.
> Are we comfortable with ip(8) as a name in general?
> If we are, what’s our take on having the compatible interface with Linux
> ip(8)?
>
> Any comments/feedback is welcome :-)
>
>
> Appendix
> List of commands I need implemented
>
> cmd [-46m] nhop create [gw XX] [iface YYY] [mtu YYY] [reject] [proxyfib Y]
> [fib X][ipv4] [ipv6]
> cmd [-46m] nhop delete nhop_id
> cmd -46m nhop list
> cmd -j nhop list # json
>
> cmd -46m nhgroup create nhops 1,2,3,4,5,6 [fib X]
> cmd -46 nhgroup create nhops 1=100,2=100,3=200,4=100 [proxyfib Y][fib X]
> cmd -46 nhroup list
> cmd -46 nhgroup delete nhgroup_id
>
> cmd -46 fib algo list
> cmd -46 fib algo set algo dpdk_lpm6 fib 0
> cmd -46 fib algo set algo auto fib 0
>
>
> /Alexander
>
>
Seems like a good cli util to have. I personally don't like the name ip, to
generic, and conflict with ip in linux. I think a somewhat more appropriate
name would be ipctl.
One might also look to naming and perhaps functionality like opensolaris
had, with dladm, ipadm and so on.
Best regards
Andreas
More information about the freebsd-net
mailing list