『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 227|回复: 6

[技术探讨] #ROS7 自动发送外网IP地址到邮箱

[复制链接]

10

主题

112

帖子

573

积分

高级会员

Rank: 4

积分
573
金钱
461
HASS币
0
发表于 2024-5-6 13:02:28 | 显示全部楼层 |阅读模式
#ROS7 连接上外网后自动将外网IP地址发送到邮箱,DDNS不能用的时候也不怕了


#自动发送外网IP地址到邮箱
#上网接口名称
:local pppoe "pppoe-out1"
#设备名称
:local name "GHS-ROS"
#SMTP服务器
:local smtp "smtp.163.com"
#SMTP端口
:local smtpport "25"
#收件人账号
:local toemail "[email protected]"
#寄件人账号
:local myuser "[email protected]"
#寄件人密码
:local mypassword "123456"
#发送Email的主题
:local themes "ROS Email Assistant"
#发送内容
:local Contents "IP Address: "
:delay 3
#Email设置
/tool e-mail set server=$smtp port=$smtpport tls=no from=$myuser user=$myuser password=$mypassword
#获取接口IP地址
:local getip [ /ip address get [/ip address find interface=$pppoe] address ]
:global IPAddress [:pick $getip 0 [:find $getip "/" ] ]
#获取system版本
:global ROSVersion ("RouterOS Version: v" . [/system package get 1 version] )
#获取当前日期时间
:global Date ("Date:"[/system clock get date ])
:global Time ("Time:"[/system clock get time ])
#发送Email设置
/tool e-mail send to=$toemail subject=$themes body=("$name\n$Contents$IPAddress\n$ROSVersion\n$Date\n$Time")
#日志提醒
:log warning "外网地址已发送至($toemail)"
:log warning ("外网IP = " ."$IPAddress")


# by RouterOS 7.14.3
/system script
/system script
add dont-require-permissions=no name=ChangeIP_to_SendEmail owner=admin policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":local pppoe "pppoe-out1"\r\
    \n:local name "XXX-ROS"\r\
    \n:local smtp "smtp.163.com"\r\
    \n:local smtpport "25"\r\
    \n:local toemail "[email protected]"\r\
    \n:local myuser "[email protected]"\r\
    \n:local mypassword "123456"\r\
    \n:local themes "ROS Email Assistant"\r\
    \n:local Contents "IP Address: "\r\
    \n:delay 3\r\
    \n/tool e-mail set server=\$smtp port=\$smtpport tls=no from=\$myuser user=\$myuser password=\$mypassword\r\
    \n:local getip [ /ip address get [/ip address find interface=\$pppoe] address ]\r\
    \n:global IPAddress [:pick \$getip 0 [:find \$getip "/" ] ]\r\
    \n:global ROSVersion ("RouterOS Version: v" . [/system package get 1 version] )\r\
    \n:global Date ("Date:"[/system clock get date ])\r\
    \n:global Time ("Time:"[/system clock get time ])\r\
    \n/tool e-mail send to=\$toemail subject=\$themes body=("\$name\\n\$Contents\$IPAddress\\n\$ROSVersion\\n\$Date\\n\$Time")\r\
    \n:log warning "\CD\E2\CD\F8\B5\D8\D6\B7\D2\D1\B7\A2\CB\CD\D6\C1(\$toemail)"\r\
    \n:log warning ("\CD\E2\CD\F8IP = " ."\$IPAddress")"


/ppp profile
add change-tcp-mss=yes name="ChangeIP to SendEmail" on-up="delay 3s\r\
    \n:execute "ChangeIP_to_SendEmail"\r\
    \ndelay 3s\r\
    \n:execute "oray"\r\
    \n"

/interface pppoe-client
add add-default-route=yes disabled=no interface=ether1 name=pppoe-out1 profile=\
    "ChangeIP to SendEmail" use-peer-dns=yes user=123456


回复

使用道具 举报

4

主题

260

帖子

2667

积分

论坛积极会员

积分
2667
金钱
2407
HASS币
0
发表于 2024-5-6 14:07:50 | 显示全部楼层
实用,确实/ip cloud功能有时候会得不到正确ip
回复

使用道具 举报

3

主题

87

帖子

506

积分

高级会员

Rank: 4

积分
506
金钱
419
HASS币
0
发表于 2024-5-6 16:21:18 | 显示全部楼层
如何食用呢
回复

使用道具 举报

5

主题

182

帖子

783

积分

高级会员

Rank: 4

积分
783
金钱
601
HASS币
0
发表于 2024-5-6 16:35:06 | 显示全部楼层
看不懂啊大佬,不会用
回复

使用道具 举报

0

主题

129

帖子

992

积分

高级会员

Rank: 4

积分
992
金钱
863
HASS币
0
发表于 2024-5-6 16:35:43 | 显示全部楼层
不错,多一个选择,怎么用呢?
回复

使用道具 举报

2

主题

16

帖子

66

积分

注册会员

Rank: 2

积分
66
金钱
50
HASS币
0
发表于 2024-5-6 18:40:57 | 显示全部楼层
很牛啊大佬,这个咋用啊
回复

使用道具 举报

10

主题

112

帖子

573

积分

高级会员

Rank: 4

积分
573
金钱
461
HASS币
0
 楼主| 发表于 2024-5-7 11:16:25 | 显示全部楼层
这是用在MikroTik路由器 ROS7系统版本上面的脚本
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-19 13:10 , Processed in 0.441561 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表