Sau khi lục loại mình lấy được 1 đoạn shell và 1 đoạn pert dùng để check external ip, nếu ip thay đổi thì gửi mail thông báo.
Sau khi install và thực thi thì console echo ra gửi mail thành công? nhưng thực tế mình check ko nhận được email nào ( trong inbox lẫn spam/junk)
Code:
[root@NATlinux Documents]# ./updateip.sh
new IP = 113.14.22.12
Mail sent
Anh em check mình thử bị lỗi chô nào? mình ko thấy log chỗ nào báo lỗi cả thanks
Đây là đoạn code:
Code:
#!/usr/bin/perl
$IP_FILE = "/root/Documents/oldip";
my $newip = `wget www.whatismyip.com/automation/n09230945.asp -O - -q`;
my $oldip = getoldip();
my $send_to = "To: robert.gibson.unlimited\@live.com\n";
my $reply_to = "Reply-to: test\@gmail.com\n";
my $from = "From: test\@gmail.com\n";
my $subject = "Subject: IP Address: $newip\n";
my $content = "<h1>$newip</h1>";
if($newip ne $oldip)
{
writenewip($newip);
unless(open (MAIL, "|/usr/sbin/sendmail robert.gibson.unlimited\@live.com\n"))
{
print "error.\n";
warn "Error starting sendmail: $!";
}
else{
print MAIL $from;
print MAIL $reply_to;
print MAIL $subject;
print MAIL $send_to;
print MAIL "Content-type: text/html\n\n";
print MAIL $content;
close(MAIL) || warn "Error closing mail: $!";
print "Mail sent\n";
}
}
sub writenewip
{
my($newip) = @_;
print ("new IP = $newip\n");
open IPFILE, ">$IP_FILE";
print IPFILE "$newip\n";
close IPFILE;
}
sub getoldip
{
open IPFILE, "$IP_FILE";
my($line) = 0;
while ( <IPFILE> )
{
chomp;
$line = $_;
}
close IPFILE;
return($line);
}