Dinaminio DNS registravimas

Bernt Cristian Egeland komentaras http://uavmatrix.com/viewpost/2/62/116/0/PX4-PixHawk/Setting-Up-Raspberry-Pi-A+-and-USB-3G-Modem%C2%A0

netinka, kadangi no-ip.com abonentas nemokamas tik pirmą mėnesį, be to nurodyta konfigūracija neveikia o google nurodo į nekorektišką inadtn client debian paketą. Taigi inadyn pakeyas išinstaliuojamas. apt-get remove inadyn.
Next we will install DynDns software which allows us to use a dynamic name to connect our laptop to RPI when using cellular network.
This is not required if your cell operator gives you static ip adress, but normally they dont.
So instead of finding your cell IP adress every time, we use Dynamic andress of your choice.

There are many DynDns vendors, pick one.  Im using No-ip.
Create a account and a Host name.

Lets say for this tutorial your host (dns) are myairplane.no-ip.info
Install Inadyn software into RPI which will sync your IP against your dns.
Type this syntax

 

aptget install inadyn

 

Then we need to change the config to match our account at No-Ip

/etc/inadyn.conf

If the file above do not exists, it will create one.

paste in the bellow lines and change your username and password to your needs. (same credentials to log on No-Ip site)
Type your DynDns adress as alias. ( for this tutorial we use myairplane.no-ip.info .
ina
If you are using dndns.org dont change the dyndns_system. If you e.g using no-ip.info, change the
dyndns_system to default@no-ip.com

username USERNAME

password PASSWORD

alias

dyndns_system dyndns@dyndns.org

background

update_period_sec 60

Then we need to add this to startup script, so we dont need to start inadyn manually.

Type this syntax, just before the exit 0.

vi /etc/rc.local

  1. add this line
  1. /usr/sbin/inadyn &

Reboot Rpi.

 

Vietoj dinaminio DNS naudosime kolegos Goga sukurtą skriptą, kurio funkcija periodiškai (kas 5min.) į VJserver DB įrašys IP adresą, kurį turi jėgainės kontroleris. Kodėl to reikia? ogi jėgainės kontroleris per USB 3G modemą gauna inetą su kintamu IP adresu. Skriptas užrašytas faile /etc/host2mysql faile. Jo esmė yra ifconfig komanda nuskaityti valdiklio IP adresą ir jį kartu su host identifikatoriumi, kuris šiuo atveju yra ‘vejas001’  įrašyti į nutolusią (šiuo atveju ‘defas.lt’) DB (šiuo atveju ‘VJserver’). Jo turinys:
#!/bin/bash
sudo ifconfig ppp0 |grep „inet” | awk -F „:” ‘{print $2}’| awk ‘{print „insert into hosts(host,IP) values(\x27vejas001\x27,\x27” $1 „\x27)” }’ |mysql -h defas.lt -uvejas -p********* VJserver

Periodiškai paleidinėsime šį skriptą, tad įrašome eilutę į CRONTAB’ą.

komanda crontab -e:

0,5,10,15,20,25,30,35,40,45,50,55 * * * * /etc/host2mysql >/dev/log/crontab.log 2>&1

Čia nurodytą skriptą paleidžiame kas 5 min.

VJserver DB lentelės hosts struktūra (nutolusiame serveryje):

DROP TABLE IF EXISTS `VJserver`.`hosts`;
CREATE TABLE  `VJserver`.`hosts` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(45) NOT NULL,
`IP` varchar(15) NOT NULL,
`ModDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=latin1;

 

Parašykite komentarą