Achieve the dynamic IP domain name automatic pointing under
Linux 在linux下实现动态IP的域名自动指向
China Linux Forum Forum | reviews | cangjingge | CMPP | planMirror plan | online survey software | | warehouse on the |China Linux Forum - article meta
The home page | classified articles | meta search articles |my article | online users
Article meta
The latest article read this topic: 1704
On the last topic, read all the topics, index the next topic,next to the flat pattern tree model, and read the tree modelone by one
Add to favorites | print
Article title in Linux, dynamic IP domain name automaticallypoint to by Gan Jiehan
Respond to the commentary in this article
Posted: David. system (webmaster)
Posted date 09/04/02 12:26 PM
Gan Jiehan, 100 Wenfeng Road, Guangxi, Qinzhou
On the Internet, the user' s domain name and IP address areone-to-one correspondence. But the virtual dial-up access tothe Internet, resulting in a dynamic IP address. This has causedtrouble for computer enthusiasts who don' t have much money toapply for domain names. The previous period, due to the authorof the region' s ADSL instead of virtual dial-up, the troublealso troubled the author for a while. After many debugging,finally realized the dynamic IP address domain name automaticpointing under Linux. Now we will record it and share it withyou:
Before thehttp://www.deerf ield.com/download/dns2go/linux/index.htm isa server for a free domain name, put the dns2go in the/etc/rc.d/rc. local, the boot fixed free domain name. But ADSLto virtual dial-up way, there is no fixed IP address, startdns2go is very troublesome, first use the ifconfig command tofind the ppp0 IP, and thenmodify the IP under/etc/dns2go. conf,and then can start dns2go. It' s inconvenient to use manualoperation every time. It can not be started automaticallywithout anyone' s intervention. Write a C program to solve theproblem, in cases of all procedures are assumed installed inthe /usr/local/bin/, a program written in shell to call the Cprogram, the directory containing xnbh (shell program) , trans(Executive C program compiled) , outfile (intermediatetemporary files) , pppoe.txt (intermediate) , dns2go. conf(typical the configuration file)
The shell program for xnbh is as follows:
Adsl-start# starts the virtual dialer for adls,
The ifconfig ppp0 |grep -v "Link" >/usr/local/bin/pppoe.txt#produces the pppoe. txt file in the directory
The /usr/local/bin/trans# invokes the C program to extract theIP value in the file pppoe.txt, and then replaces the IP valuein the dns2go.conf to produce the intermediate file outfileCP/etc/dns2go. conf/etc/dns2go.confold#backup the originaldns2go. conf file
CP /usr/local/bin/outfile /etc/dns2go. conf # after replacingthe dns2go.conf file
Nohup /usr/local/bin/dns2go >/var/tmp/dns2go. log 2>&1 &#start fixed domain
After executing the second sentence in xnbh, the followingpppoe.txt is generated:
INET addr:218.65.217. 109 P-t-P: 172.0.0. 1
Mask:255.255.255.255
UP, POI NTOPOI NT, RUNNING, NOARP, MULT I CAS T, MTU: 1492, Met r i c: 1RX, packet s:26, errors:0, dropped:0, overruns:0, frame:0TX, packets:27, errors:0, dropped:0, overruns:0, carrier:0Collisions:0 txqueuelen:3
RX bytes:1400 (1.3 Kb) TX bytes:1358 (1.3 Kb)The trans. c program is as follows:
#include <stdio.h>
#include <ctype.h>
(ma i n)
{
F ILE, *fp, *bp, *out;
Int i=0;
Int j;char ip [16] ;char dip [16] ;char na [] = "address =";char inip [24] ;char readln [255] ;char readlnn [255] ;
fp = fopen ("/ usr / local / bin / pppoe.txt", "r") ;if (fgets (readln, 255, fp) ! = = null)
{ (i = 0; i < 16; i + +) ip = readln [20 + in] ;}in = 0;for (i = 0; i < 16; i + +)
{if (ip! = ' ' )
{dip = ip; printf ("ip% d =% c% n" in, ip) ; }else {j = i; printf ("j =% d", j) ; } }for (i = 0; i < = j; i + +) dip = ip;dip [j] = '\ 0' ;printf ("a =% s \ n", dip) ;f c l o s e (fp) ;strcpy (inip, na) ;printf ("inip =% s \ n", inip) ;strcat (inip, dip) ;
printf ("inip =% s \ n", inip) ;fp = fopen ("/ usr / local / bin / dns2go. conf", "r") ;out = fopen ("/ usr / local / outfile", "w") ;while ( ! feof (fp)) {if (fgets (readlnn, 255, fp) ! = = null)i f (strncmp ("addres s = aaa.bbb.ccc.ddd", readlnn, 15)) fputs(readlnn, out) ;else fputs (inip, out) ; }f c l o s e (fp) ;fclose (out) ;
}
在linux下用gcc –o trans trans.c编译通过产生文件trans,dns2go. conf的配vchgob #:
#
# simple configuration file for dns2go linux client
#
# for more information refer to the dns2go.conf manual page#
# global directives
#
# dns2go serverserver = discovery.dns2go.com
# key (required, case sensitive)key = aaaaaa - bbbbbb - ccccccc - ddddd (此项为申请的激活码)# log file (optional, default: syslog)
# log = / var / log / dns2go.txt
# send debug outputs two stdoutdebug
# number of connection attempts (optional, default: 8)# retries = 8
# rate two send heartbeats (in minutes) (optional, default: 0= automati c)
# heartbeat rate = 0
#
# domain directives
#
# fully qualified domain name (required)doma in = xxxxx.dnsgo.com (此项填写固定免费域名)
# static ip address (optional, default: external ip address)address = aaa.bbb.ccc.ddd (此项为假设ip)
# online www alias redirection: choose one of the following:# (optional, default: www. alias resolves two domain ip)# www redirect - url = http: / /. . .
# www redirect gate = 8080
# offline redirect option: choose one of the following# (optional, default: offline status page)
# offline - url = http: / /. . .
# offline - ip = 0.0.0.0
以上xnbh程序若加入/ etc / rc.d / rc. local /中则可以启动时自动启动固定免费域名,
此时你可以启动的apache, ftp, telnet等都可以用此免费域名了,出门在外的朋友可以
很方便找到自己的服务器,熟悉shell的朋友也可以用shell完成c程序的功能, 以上的
程序在redhat7.2上顺利通过.david
Article options: print, put this article in the memorandum, andwhen you have time to reply to friends, share the notificationmoderator
The title of Re: Linux under dynamic IP domain name to by [re:David. ] automatic Gansu Johanna
Respond to the commentary in this article
Posted by: zjohnc (journeyman)
Posting date 09/04/02 04:41 PM
In/etc/ppp/ip-up and/etc/ppp/ip-down Riga, dns2go and dns2go-k, you can automatically follow the new. I have used for morethan 2 months, basically no problem, sometimes can not update,
A400互联是一家成立于2020年的商家,主要推行洛杉矶服务器采用kvm架构,线路优质,延迟低,稳定性高!全场产品对标腾讯云轻量,服务器线路有有美国洛杉矶cn2_gia、香港cn2+cmi,目前推行的vps服务器均为精心挑选的优质线路机房,A400互联推出了夏季优惠洛杉矶5折、香港7折促销活动,质量可靠,价格实惠!二:优惠码洛杉矶五折优惠码:20210620香港cn2七折优惠码:0710三、优惠方...
华纳云(HNCloud Limited)是一家专业的全球数据中心基础服务提供商,总部在香港,隶属于香港联合通讯国际有限公司,拥有香港政府颁发的商业登记证明,保证用户的安全性和合规性。 华纳云是APNIC 和 ARIN 会员单位。主要提供香港和美国机房的VPS云服务器和独立服务器。商家支持支付宝、网银、Paypal付款。华纳云主要面向国内用户群,所以线路质量还是不错的,客户使用体验总体反响还是比较好...
ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...