自动链接无线网络
需求:我在家/在公司都想用raspberry pi,但是两边其实都没有专用的显示器/键盘/鼠标,平时所以操作都是ssh连上去做的
问题来了,我在家时自动连家里的wifi,没问题,那么我去到公司时怎么办?或者到了某个地方,虽然有不加密的无线网络,但是如何让raspberry pi自动连接上去呢
解决:
google一番后,找到这篇文章http://manual.aptosid.com/en/inet-setup-en.htm
照着做就完成了。
后续问题:
虽然可以直接连上去,但是我还是不知到连上去后,raspberry pi的ip啊,即使ping raspberrypi,貌似ping出来的ip也不对啊(应该是192.168.x.x,却得到172.136.x.x)……这样怎么办呢? 你可以在interface中指定ip的 不断ifconfig,如果发现ip变化,就发email通知自己
回 fzhang74 的帖子
fzhang74:不断ifconfig,如果发现ip变化,就发email通知自己 (2012-08-08 11:02) images/back.gif公司事dhcp,固定ip怕会引起不必要的麻烦
还是试试看发mail好了 我也有类似的需求,不同的是我用的是有线网自动获取IP的,按上面的同好们的思路我的做法如下:先写一个小程序可以登录到指定邮件服务器发EMAIL(这样的做法可避免被当成垃圾邮件过滤掉),然后再在开机时运行调用它来发送IP地址到指定邮箱,成功通过EMAIL取得IP发。具体步骤如下:
nano /home/pi/mailit.py输入以下内容
#!/usr/bin/env python
import smtplib
from email.mime.text import MIMEText
import sys
mailto_list=]
mail_host="smtp.163.com"
mail_user="用户名"
mail_pass="密码"
mail_postfix="163.com"
def send_mail(to_list,sub,content):
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
msg = MIMEText(content)
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
s = smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me, to_list, msg.as_string())
s.close()
return True
except Exception, e:
print str(e)
return False
if __name__ == '__main__':
if send_mail(mailto_list,"IP is "+sys.argv,sys.argv):
print "OK"
else:
print "ERROR"
把mailit.py设为可执行:chmod +x mailit.py
在/etc/rc.local文件内加一行以下内容
/home/pi/mailit.py `ifconfig eth0 | grep 'inet addr:'| cut -d: -f2 | awk '{ print $1}'` www@beebuu.com注:mailit.py中使用的邮件服务器及用户名密码请修改成你自己的,上一行中的eth0是PI的网卡,可按实际修改为无线网卡的名字wlan0;www@beebuu.com是我的邮箱,也请自行修改。
回 beebuu 的帖子
beebuu:我也有类似的需求,不同的是我用的是有线网自动获取IP的,按上面的同好们的思路我的做法如下:先写一个小程序可以登录到指定邮件服务器发EMAIL(这样的做法可避免被当成垃圾邮件过滤掉),然后再在开机时运行调用它来发送IP地址到指定邮箱,成功通过EMAIL取得IP发。具体步骤如下: .. (2012-08-08 23:30) images/back.gif哦,收下了 这个完全不用这么麻烦, wpasupplicant.conf里面加网络就可以了。 在路由器上把mac和IP地址绑定就ok啦。 http://hi.baidu.com/wyyyh/item/212412941f77e88a59146128
页:
[1]