⑴ 如何通过脚本开机自动添加dns
windows的IP设置就有两种,静态IP和动态IP,如果你设置静态IP的话,DNS一并设置好之后,是不会变的,没有必要通过开机脚本这种方式来添加。如果你设置动态IP的话,DNS也是动态获取的,也无法通过手工来指定,更无从谈起通过开机脚本来添加DNS了。
⑵ 网吧怎样批量更改IP里的DNS
你是不是觉得每次网吧更换系统都很麻烦呢。所以想到这点晚上加了一个通宵的班做了一个自动修改计算机信息的脚本。希望给出意见
1,配置文件的名字不可以改动为:start.ini
1-7行的顺序不要改动。。
配置文件的内容格式如下
实在太无聊了。现在来跟大家仔细说说吧
电脑名称=A '这里呢是改成你计算机名的前面一个字母。
'有的网吧是分区来设置IP的这样的就高重新改下脚本就可以达到这个目的了
子网掩码=255.255.255.0
默认网关=192.168.0.1
首选 DNS=202.96.128.86
备用 DNS=202.96.128.166
内部网络号=00000000
路油 MAc=00-0F-E2-55-55-B6
这上面的七行大家都可以根据自己的配置和地区来改.
'注意内部网络号的话因该是一样的所以应该不用改
MAX=00,19,e0,70,3e,b7 ip=192.168.0.175
MAX=00,19,e0,75,3e,b8 ip=192.168.0.178
MAX=00,19,e0,70,34,b8 ip=192.168.0.177
MAX=00,19,50,70,3e,b8 ip=192.168.0.174
MAX=00,19,e0,50,3e,b8 ip=192.168.0.173
MAX=00,19,e0,70,3e,b8 ip=192.168.0.172
MAX=00,19,40,70,3e,b8 ip=192.168.0.171
MAX=00,19,e0,50,37,b8 ip=192.168.0.170
MAX=00,49,e0,70,4e,b8 ip=192.168.0.174
MAX=00,19,e0,70,3e,b8 ip=192.168.0.175
MAX=40,19,e0,40,3e,b8 ip=192.168.0.179
这里的IP注意一定要按照排序来写.中间有个空格大家别给丢了
'把上面保存为start.ini在加上你整个网吧的MAC地址及IP地址
'把下面保存为*.vbs放在ini配置文件同一目录。
On Error Resume next '防止错误.如果有错误继续执行下一条
dim macname,nfile,reip,mright
Dim nf,macs,fso,mins,WshShell
Dim arrDNSServers,colComputers
Dim ARP,GatewayIP,IPXV,myipname
Dim mnetmask,MDNS1,NDNS2'定义变量方便我们存放对象或是得到的返回值.也可以不定义,
'是养成习惯比叫好,因为脚本语言终究不是较高级的语言如果你以后想学别的语言的话
'都要严格按照每种语言的规定来定义常量,变量等
Set fso=CreateObject("scripting.filesystemobject") '引用一个文件系统类并且赋值的方式给变量FSO
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") '引用WMI命名空间CIMV2,一旦引用了
'WMI名空间那个我们就可以使用空间里面存放的各种类,关于WMI的详细资料请大家在论坛里下载
Set colNetAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE") '这个是使用WQL
'查询语句来查询你想查询的相关类的属性并把返回值以一个对象的形式赋给一个变量.这样我们
'就可以用FOR循环来检测我们想要的属性或方法了.WQL查询有好多种,最常有的有异步,半步等,
'在这里就不把话题拉开啦.只要你们知道就行了
'上面这句WQL的大体意思就是 查询网卡等的相关属性都在这个类里.这一个类就有几十种属性,
'没种属性都是不同的功能,我们就不每种都去说了
Set colComputers = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem") 'WQL查询返回一个系统用户等相关属性给一个对象变量
Set objNetworkSettings = objWMIService.Get("Win32_NetworkAdapterConfiguration")'WQL查询
Set WshShell = WScript.CreateObject("WScript.Shell")' 引用一个SHELL
Set objquery=objWMIService.execquery _
("select * from Win32_NetworkAdapterConfiguration where index=8") 'WQL查询
For Each objarray In objquery
macs=objarray.MACAddress '这里就是枚举出NetworkAdapter....类的网卡属性,还有别的很多属性
'大家有兴趣的自己在论坛下工具一个一个的看.没个属性都说得很清楚的
Next
macname=Replace(macs,":","-")'将得到本机的网卡地址中的[:]替换成[-],
'因为我本得到的格式为00:19:e5:b6:f4:2e这样的格式
If fso.fileexists(".\start.ini")<>true Then MsgBox "配置文件不存在" '检测配制文件是否存在
Set nf=fso.opentextfile(".\start.ini",1) '打开配制文件
If Err.number<>0 Then MsgBox "打开出错":wscript.quit(1) '如果出现错误就提示,退出
Do While nf.AtEndOfStream<>True '当文件指针不是文件尾,因为我们文本是N多行和N多列组成的
'所以我们要用一个循环来读取里面的信息,打开文件的时候文件指针都是默认指向文件的第一行一列
'如果打开一个文件AtEndOfStream返回的是false的话呢表示这个这个指针不在文件尾如果返回TRUE
'那么指针指向文件结尾..如果一个文本是空的话你打开的时候AtEndOfStream的返回值因该总是tRUE
nfile=UCase(nf.readline()) '一行一行读入,为大写
mins=InStr(nfile,macname) '检测是否有网卡地址的存在
If mins=0 Or mins="" Or mins=Null Then '判断是否读到了网卡地址,如果=0 或是空又或是NULL
minstr=InstrRev(nfile,"=") '检测读入的一行里面的=在这行最后出现的地方,不包括=返回一个数字
mright=Right(nfile,Len(nfile)-minstr) 'lan返回一整行的个数.在减去我们刚搜索的及↑面这条
i=i+1 '将I设置为一个循环记数器.将我们所循环的次数存在I里面,
Select Case i '下面的是一个判断语句,当i的值是下面其中的一个对应的话就执行相应的操作
Case 1 '电脑名称
ocsname=mright
Case 2 '子网掩码
mnetmask=mright
strSubnetMask = Array(mright)
Case 3 '默认网关
GatewayIP=mright
strGateway = Array(GatewayIP)
Case 4 '首选DNS
MDNS1=mright
Case 5 '备用DNS
NDNS2=mright
Case 6 '内部网络号
IPXV=mright
If IPXV="" Then IPXV="00000000"
Case 7 '路油绑定的MAC地址
ARP=mright
Case else
End Select '结束查询语句select
arrDNSServers=Array(MDNS1,NDNS2) 'DNS '将DNS存放在一个数组里面方便等下设置DNS
'的函数调用
else '这里值得注意的是 IF语句...记得看清楚哪个IF是个那个是一对
minstr=InstrRev(nfile,"=")
mright=Right(nfile,Len(nfile)-minstr)
myipname=mright'IP地址
strIPAddress = Array(myipname)
qname=InstrRev(mright,".")
ipright=Right(mright,Len(mright)-qname) '读去IP的后面数字来做电脑名注意这里,如果你想IP等于192.168.0.2
'计算机名要等于 A001的话这里就减去1也就是myipname=mright-1
If ipright<10 Then '判断如果读得的数小去于10 就在前面加两个00
mipname="00" & ipright
ElseIf ipright<100 Th
en'判断如果读得的数小去于100 就在前面加一个00
mipname="0" & ipright
ElseIf ipright>100 Or ipright <255 Then'判断如果读得的数大于100或等于<255不加
mipname=ipright '这里是读得的计算机名
End If
End If
If mipname<>"" Then '判断有没读到IP数据 '如果有执行变量
setcsname=ocsname & mipname '最后得到的电脑名称 也就是START.INI读到的前蕞加上IP的后面一个数值
End if
Loop
'这里是弹出开始
mybox=MsgBox("信息将改变如以下,是否执行修改呢?" _
&vbcrlf&"更改后的电脑名称为 :"&setcsname&vbcrlf _
&"更改后的 IP 地址为 :" &myipname&vbcrlf&"更改后的子网掩码为 :" _
&mnetmask&vbcrlf&"更改后的默认网关为 :" _
&Space(1)&GatewayIP&vbcrlf&"更改后的首选 DNS为 :" &MDNS1&vbcrlf _
&"更改后的备选 DNS为:"&NDNS2&vbcrlf&"更改后内部网络号为 :"&Space(2)&IPXV&vbcrlf _
&"物理网卡地址为 :" &ARP &vbcrlf&Space(6)&"将要绑定的ARP地址为 :" _
&vbcrlf&Space(2)&GatewayIP _
&" "&ARP,vbyesno,"‘迈思技术论坛之脚本技术交流’")
'弹出到这里结束
If mybox=6 Then
'如过你不想弹出提示的话你就直接把mybox和IF删除就可以了,但是如果你觉得还不够你可以加代码
myres colNetAdapters,colComputers,objNetworkSettings, _
WshShell,setcsname,arrDNSServers,strIPAddress, _
strSubnetMask,strGateway,IPXV,ARP,GatewayIP,myipname,macname '这里是给函数传递实际参数,
'就是把我们上面所读到的文本我们想要的部分,按照函数的参数规定传递给函数,,这里的函数规定就是
'好像你上网的时候要设置IP,而且IP也不能随便设置,,
Else
wscript.quit(1)
End if
下面才是真正的主题,下面就是这个自定义函数来设置各项操作,把得到的参数做你想得到的功能,
Function myres(colNetAdapterss,colComputerss,objNetworkSettingss, _
WshShells,setcsnames,arrDNSServerss,strIPAddresss, _
strSubnetMasks,strGateways,IPXVs,ARPs,GatewayIPs,myipnames,macss)
'这里我把对象也以参数的形式传递给这个函数,在函数内部来执行WQL返回的一个对象,,
For Each objComputer in colComputerss
objComputer.rename setcsnames
'上面是计算机名字
For Each objNetAdapter in colNetAdapterss
errDNS=objNetAdapter.SetDNSServerSearchOrder(arrDNSServerss)'设置DNS
errEnable = objNetAdapter.EnableStatic(strIPAddresss, strSubnetMasks)'设置IP
errGateways = objNetAdapter.SetGateways(strGateways, strGatewaymetric)'默认网关
Next
Next
objNetworkSettingss.SetIPXVirtualNetworkNumber(IPXVs)'设置内部网络号的
WShshells.run "cmd /c arp -d && arp -s " & GatewayIPs _ '这些都是绑定ARP如果不要可以删掉
& Chr(32)& ARPs,0,True:WShshells.run "cmd /c arp -s " _
&myipnames & Chr(32) &macss,0,True '这里是路油ARP绑定.你只要在ATART.INI写上路油的MAC地址就可以了
End function
⑶ 编写Linux系统DNS主、从域名脚本,要求主域名要正反向都可以解析,当主
domain-name-servers配置项设置dns服务器optiondomain-name-servers1.1.1.1,2.2.2.2;
⑷ 求大神弄个修改《宽带连接》的TCP/IPv4 dns地址的批处理或VBS脚本!
@echo off
netsh interface ip set dnsservers name="宽带连接" source=static address=192.168.0.1 mask=255.255.255.0
⑸ [VBS脚本]关于自动填写IP地址,子网掩码,网关,DNS!
把下面这一段取消,
Dim Num
Num=Inputbox ("程序员:youngye"+chr(10)&chr(13)+"QQ:355430413"+chr(10)&chr(13)+"必须是小于200以下的数字"+chr(10)&chr(13)+"请输入机器号","杨铄工作室")
dim Name
if Num<10 then
Name="XD00"
else
if Num<100 then
Name="XD0"
else
Name="XD"
end if
end if
改写成
Name=XD00
就可以了。
⑹ 求win8设置IP地址和DNS脚本
微软键+R----->CMD
cd\
con ipdns.bat
netsh interface ip set address name="本地连接" static 192.168.0.252 255.255.255.0 192.168.0.1 1
netsh interface ip add address name="本地连接" static 192.168.11.252 255.255.255.0 192.168.11.1 1
netsh interface ip set dns "本地连接" static 202.106.0.20
Ctrl+z
_____________________________________________
如果你的网络名称不是“本地连接” 改为相应的就行。 11.252那个地址,如果不想设网关可以去掉后面的192.168.11.1那个网关。
可以将ipdns.bat拷到桌面上。每次运行就双击这个批处理就行了。
⑺ [求助]个修改dns的批处理
然后运行这个批处理就启到了更改DNS的效果注意上面的文本文件只是一个脚本,不要把它和下面的批处理混淆起来,是两个文件不要把上面的文本文件保存为BAT批处理文件
⑻ linux下dns负载均衡的脚本怎么写
答:
linux下的DNS一般是由bind来实现的,现在的版本应该是bind 10,具体的配置网上有很多,你可以看看!
⑼ 关于内网DNS设置
安装DNS服务
开始—〉设置—〉控制面板—〉添加/删除程序—〉添加/删除Windows组件—〉“网络服务”—〉选择“域名服务系统(DNS)”—〉按确定进行安装
创建DNS正相解析区域
开始—〉程序—〉管理工具—〉选择DNS,打开DNS控制台—〉右击“正相搜索区域”—〉选择“新建区域”—〉选择“标准主要区域”(或“Active Directory 集成区域”或“标准辅助区域”)--〉输入域名“abc.com” —〉输入要保存的区域的文件名“abc.com.dns”— 〉按完成,完成创建
创建主机记录等:
右击“abc.com”—〉“新建主机” —〉在名称处输入“www”,在“IP地址”处输入“192.168.0.3”,—〉按“添加主机”完成
创建DNS反向解析区域
开始—〉程序—〉管理工具—〉选择DNS,打开DNS控制台—〉右击“反向搜索区域”—〉选择“新建区域”—〉选择“标准主要区域”—〉输入用来标示区域的“网络ID”—〉输入要保存的区域的文件名“0.168.192.in-addr.arpa.dns”—〉按完成,完成创建
创建指针PTR:
右击“192.168.1.x.subnet”—〉选择“新建指针”—〉在“主机IP号”中输入2—〉在“主机名”中输入ftp—按 “确定”完成添加
启用DNS循环复用功能
如www.abc.com对应于多个IP地址时DNS每次解析的顺序都不同
右击选择“DNS服务器”—〉属性—〉高级—〉选择“启用循环”(round robin)--〉选择“启用netmask 排序”—〉按“ 确定”返回
注:如所有的IP和域名服务器在同一子网时需要取消“启用netmask排序”,才能实现循环复用功能。即启用循环时 ,当主机的IP和dns在同一个子网时将始终排在最前面,当都在一个子网时就不进行循环,只有去除了“启用netmask排序” 时才能实现循环复用。
DNS服务器会优先把与自己的网络ID相同的记录返回给客户端
创建标准辅助区域,实现DNS区域复制
在另一台DNS服务器上,右击“正向搜索区域”—〉选择“新建区域”—〉选择“标准辅助区域”—〉输入“abc.com”—〉输入主域名服务器的IP地址—〉选择“完成”
可手工要求同步:
在辅域名服务器上右击“abc.com”的域—〉选择“从主服务器传输”
并且可以设置允许传输的域名服务器:
在主域名服务器上右击“abc.com”的域—〉选择“属性”—〉选择“区域复制”—〉在“允许复制”前打勾,并选择允许复制的主机(到所有服务器、只有在“名称服务器”选项卡中列出的服务器、只允许到下列服务器)
完成服务器类型的转换:
右击区域—〉选择 “属性”—〉选择“类型”的“更改”按钮—〉选择要更改的区域类 型—〉按“确定”
实现DNS唯高速缓存服务器
创建一个没有任何区域的DNS服务器—〉右击DNS服务器—〉选择“属性”—〉选择“转 发器”中的“启用转发器”—〉输入转发器的IP地址—〉按“确定”完成
清除“唯高速缓存”中的cache内容:
右击“DNS服务器”—〉选择“清除缓存”
或者选择“DNS服务器”—〉在菜单中选择“查看”,高级—〉右击“缓存的查找”—〉选择“清除缓存”
(客户端清空DNS缓存—)ipconfig /flushdns)
DNS的委派(子域的转向)
在原域名服务器上建立“subdomain.abc.com”的主机—〉右击abc.com的域,选择“新建委派”—〉将subdomain.abc.com的域代理给subdomain.abc.com的主机—〉在subdomain.abc.com上建立“正向标准区域”subdomain.abc.com—〉添加相关主机记录
设置 DNS区域的动态更新
右击选择DNS上区域—〉选择“属性”—〉选择“常规”中的“允许动态更新”,选是— 〉然后按 “确定”—〉在本机的DHCP服务器中—〉右击选择DHCP服务器—〉选择“属性”—〉选择“DNS”—〉选择“为不支持动态更新的DNS客户启用更新”—〉在客户端使用ipconfig /registerdns来更新域名的注册信息
注意客户端需要将完整的计算机名改成myhost.abc.com
配置DNS客户端
在客户端计算机上打开tcp/ip属性对话框,在dns服务器地址栏输入dns服务器的ip地址
手工配置最多可配置12个 DNS服务器 .