Skip to content

Instantly share code, notes, and snippets.

@jukrb0x
Last active September 16, 2020 14:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jukrb0x/db06bb7d42da7aec6ab627aa9827fccd to your computer and use it in GitHub Desktop.
Save jukrb0x/db06bb7d42da7aec6ab627aa9827fccd to your computer and use it in GitHub Desktop.
caferacer wifi DHCP problem - quick way to fix it

问题描述

兰总店里的路由DHCP有点毛病,似乎IP分配后很快就会过期导致无法上网。如何解决呢。

  • 解决兰总
  • 解决咖啡店
  • 用流量
  • Renew DHCP release

解决方案

image

如果手动点击按钮刷新的话会很累,那我们来写一个crontab执行shell吧

sh代码:

if=$(route -n get 0.0.0.0 2>/dev/null | awk '/interface: / {print $2}')
echo $if
echo 设备的sudo密码 | sudo -S ipconfig set $if DHCP
echo '\nOK'
ifconfig en0

呃需要特别说明的是en0是我的电脑的无线网卡,ifconfig en0是为了确认ip地址,第一行的代码是为了获取网卡到变量$if

替代脚本:

echo 设备的sudo密码 | sudo -S ipconfig set en0 DHCP
echo \nOK
# get ip addr
ifconfig | grep inet | grep -v inet6 | grep -v 127

设置terminal的环境变量(我的是zsh,所以在~/.zshrc):

alias caferacer='/sh文件/路径/123.sh'

crontab(每分钟执行一次):

* * * * * caferacer

有些问题还没弄完:

crontab执行的话会有一些command error

crontab不行的话可以考虑写一个python来执行文件,没那么多屁事。

(待解决)

echo password | sudo -S ipconfig set en0 DHCP
echo '\nOK'
# get ip addr
ifconfig | grep inet | grep -v inet6 | grep -v 127
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment