我有一个 shell 脚本,它应该为我创建一个接入点以供进一步使用。在其他人告诉我我应该使用 hostapad 之类的东西之前,请克制自己不要这样做。我需要使用这个,因为它是一个学校项目。脚本如下
ifeth=" "
ipeth=" "
masketh=" "
ifwifi=" "
ipwifi=" "
maskwifi=" "
router= " "
ssid= " "
然后停止网络管理器,以太网设置
ifconfig $ifeth down
ifconfig $ifeth up
ifconfig $ifeth $ipeth netmask $masketh
无线网络设置
iwconfig $ifwifi down
iwconfig $ifwifi essid $ssid mode managed channel auto txpower auto ap auto
ifconfig $ifwifi up
iwconfig $ifwifi rate auto
ifconfig $ifwifi $ipwifi netmask $maskwifi
exit 0
如果有人能提供任何关于如何实现这一点的见解,我将不胜感激。此外,任何额外的细节或解释都会受到欢迎和赞赏。此外,我还没有设置密码,因为我的目标是让它启动并运行。之后可以对其进行自定义。最后一件事,在引号之间是我的局部变量,所以没有必要在这里也把它们放进去。需要说明的是,我使用的是 ubuntu 16.04
抱歉这么久没来。周末去拜访了我的祖父母。根据您的建议,如果有更多信息需要添加,我将继续编辑此内容。无论如何,以下是脚本的输出。
+ ifeth=enp0s25
+ ipeth=10.10.10.101
+ masketh=255.255.255.0
+ ifwifi=wlp16s0
+ ipwifi=10.20.30.1
+ maskwifi=255.255.255.0
+ router=ruter1
+ ssid=universitate
+ /etc/init.d/network-manager stop
[ ok ] Stopping network-manager (via systemctl): network-manager.service.
+ ifconfig enp0s25 down
+ ifconfig enp0s25 up
+ ifconfig enp0s25 10.10.10.101 netmask 255.255.255.0
+ ifconfig wlp16s0 down
+ iwconfig wlp16s0 essid universitate mode Managed channel auto txpower auto
ap auto
+ ifconfig wlp16s0 up
+ iw wlp16s0 set bitrates legacy-2.4 54
+ iwconfig wlp16s0 rate auto
+ ifconfig wlp16s0 10.20.30.1 netmask 255.255.255.0
+ exit 0
至于它应该做什么,我希望它能成为一个接入点,我可以用它通过另一台设备(例如我的手机)连接到互联网。我想要一个接入点而不是热点,因为我需要记录通过它进行的所有活动。此外,正如这里所见,我的变量很简单(不需要使用“”),并且没有任何错误(或者至少我看不到任何错误)。问题是这个接入点根本没有出现在任何地方,即使用另一台笔记本电脑扫描网络似乎也找不到它。非常感谢您到目前为止的想法!