(‘设计用于DHCP服务器故障排除的DHCP客户端’,)
dora-dhcp-client的Python项目详细描述
DORA DHCP客户端
版本0.1.2
设计用于故障排除的Python命令行DHCP客户端。提供一个接口,用于将定制的DHCP数据包发送到DHCP服务器并检查响应。在
安装
Python
直接用Python3.8运行,使用pip安装:
pip install dora-dhcp-client
替代安装
交替安装并作为Docker映像运行。在
sudo curl -L --fail https://raw.githubusercontent.com/vfrazao-ns1/dora_dhcp_client/master/run.sh -o /usr/local/bin/dora sudo chmod +x /usr/local/bin/dora
要求
- Python 3.8.0或更高版本
- Docker(可选)
注意:这已经在Ubuntu18.04和WindowsWSL上测试过了。可以也可以不可以在其他平台上工作。
基本用途
检查端口68(如果设置了中继字段,则端口67)当前是否绑定到另一个程序(例如使用:sudo netstat -tulpn
)。如果有任何东西绑定到这些端口,必须首先杀死它们,并阻止它们重新启动。在
运行带有-h
/--help
标志的dora.py
以查看所有可用选项:
注意:多拉。皮伊必须能够绑定到端口68(在某些情况下是67)才能正常工作。这可能需要使用sudo
。这可能还需要停止已绑定到这些端口的任何服务(例如systemd networkd)。
运行dora.py
而不提供任何选项,只会绑定到任意接口并发送广播UDP包。在
-i
允许选择要绑定到的接口(例如,“eth0”)
-a
允许在client identifier选项和chaddr字段中设置MAC地址
-d
打印非常低级的调试语句,并包括任何Python回溯
-u
设置DHCP数据包中的单播标志
-s
指定要将数据包发送到的单播地址,-u
标志应该被选中,但不需要选择
-r
设置包的giaddr字段
-v
设置输出的详细级别。没有v
标志意味着客户机将只报告获得租约的成功或失败。一个单独的v
标志(-v
)将很好地打印出人类可读的DHCPACK包形式。这将显示DHCP服务器发送给我们的一组选项。两个v
标志(-vv
)将精确打印租约握手中的所有四个数据包(DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、DHCPACK)。三个v
标志将打印前面声明的所有内容,并将启用调试输出(与设置-d
标志相同)。在
-p
设置客户端端口(默认值:68)
--target_port
设置服务器端口(默认值:67)
-@
是一个方便的标志,它设置单播标志,将giaddr字段设置为当前计算机的IP,并将单播数据包发送到指定的服务器
注意DHCP RFC 2131将客户机端口设置为68,服务器端口设置为67,这些选项设置了不同的客户端或服务器端口,这些选项不适用于符合RFC的服务器
- 项目
标签: