我想使用 php 静态分配我的 Arch linux 的 IP 地址。我想通过使用网络掩码、接口、广播、地址和网关来更改 IP。用户将值放入 html 页面中。 html 页面将数据发布到 PHP 页面。我想使用这些数据更改IP。何做这个?请帮我解决这个问题。
可以使用文件吗?
我正在考虑使用文件直接写入 rc.conf !!...这会起作用吗?如何??..我用 apache 和 php 启动了我的 arch linux ..非常感谢您的帮助。
答案1
如果您想永久更改 IP,则需要修改 中的值rc.conf
。修改后需要重启network
服务。您可以通过两种方式做到这一点:
/etc/rc.d/network restart
或者
rc.d restart network
要修改rc.conf
和重新启动服务,您需要 root 权限。由于以 root 身份运行 apache 并不是一个好主意,因此我建议创建一些使用 sudo 启动的包装器来重新启动服务并修改rc.conf
.
PHP 脚本 -> 启动 shell 脚本sudo ./modify-network IP NETMASK GW
其 Sudo 条目的格式应为:
www ALL=(root) NOPASSWD: /path/to/modify-network
请记住在 PHP 脚本中过滤您的输入。检查IP号码是否是真实的IP而不是rc.conf
注入;)就像192.168.0.100"\nDAEMONS=(!apache)
。
并记住在更改后将用户重定向到新地址(当用户按下“更改 IP”按钮、发布数据、执行一些 JavaScriptsleep 1
和window.location.href = 'http://NEW_IP/';
您还可以使用 SELinux 为该解决方案添加更多安全性...