brona / iproute2mac

CLI wrapper for basic network utilites on Mac OS X inspired with iproute2 on Linux systems - ip command.
MIT License
898 stars 73 forks source link

`ip neighbour show [IP]` is not supported #35

Closed jaklan closed 2 years ago

jaklan commented 3 years ago

Hi, as in the title - there's no way to run ip n s with concrete IP, in result such scripts just fail on Mac: https://github.com/klattimer/LGWebOSRemote/blob/6678d428078bcc0f9438516c5a3351d3f6a48bc0/LGTV/auth.py#L51

brona commented 3 years ago

Thanks for reporting this one. However the feature you are describing is undocumented feature of ip.

$ ip -V
ip utility, iproute2-ss190107
$ ip neigh show help
Usage: ip neigh { add | del | change | replace }
                { ADDR [ lladdr LLADDR ] [ nud STATE ] | proxy ADDR } [ dev DEV ]
                                 [ router ] [ extern_learn ]

       ip neigh { show | flush } [ proxy ] [ to PREFIX ] [ dev DEV ] [ nud STATE ]
                                 [ vrf NAME ]

STATE := { permanent | noarp | stale | reachable | none |
           incomplete | delay | probe | failed }

According to this help, the ADDR should be allowed only for { add | del | change | replace }. It says the same here https://man7.org/linux/man-pages/man8/ip-neighbour.8.html.

We might add it to iproute2mac eventually, however in any case the script you linked shouldn't depend on undocumented parameter.

brona commented 2 years ago

Implemented in 426c5c348d1b1ee166ccb7198f34d61dad99dc34