# ndsctl
Links: [[OpenNDS]], [[Lightning Router Config]]
Also see "Using `ndsctl`": https://opennds.readthedocs.io/en/stable/ndsctl.html
### Null values in [[ndsctl]]
Enter double quotes `""` for the value, e.g. as positional arguments to `auth`
### ndsctl -h
```shell
root@OpenWrt:/etc/config# ndsctl -h
Usage: ndsctl [options] command [arguments]
options:
-s <path> Path to the socket
-h Print usage
commands:
status
View the status of opennds
clients
Display machine-readable client list
json mac|ip|token(optional)
Display client list in json format
mac|ip|token is optional, if not specified, all clients are listed
stop
Stop the running opennds
auth mac|ip|token sessiontimeout(minutes) uploadrate(kb/s) downloadrate(kb/s) uploadquota(kB) downloadquota(kB) customstring
Authenticate client with specified mac, ip or token
sessiontimeout sets the session duration. Unlimited if 0, defaults to global setting if null (double quotes).
The client will be deauthenticated once the sessiontimout period has passed.
uploadrate and downloadrate are the maximum allowed data rates. Unlimited if 0, global setting if null ("").
uploadquota and downloadquota are the maximum volumes of data allowed. Unlimited if 0, global setting if null ("").
customstring is a custom string that will be passed to BinAuth.
Example: ndsctl auth 1400 300 1500 500000 1000000 "This is a Custom String"
deauth mac|ip|token
Deauthenticate user with specified mac, ip or token
block mac
Block the given MAC address
unblock mac
Unblock the given MAC address
allow mac
Allow the given MAC address
unallow mac
Unallow the given MAC address
trust mac
Trust the given MAC address
untrust mac
Untrust the given MAC address
debuglevel n
Set debug level to n (0=silent, 1=Normal, 2=Info, 3=debug)
```