虽然是老古董,但不妨碍它的好用程度。可能一些新手不晓得,但是和老杨一个年纪的,一定对 DOS 系统不陌生。
尽管现在大多数电脑的操作系统是Windows,但在Windows 95推出以前,占统治地位的操作系统就是DOS。
DOS 即 Disk Operating System,我们常成为是磁盘操作系统。
由于Windows系统存在着种种不稳定的因素,DOS 作为它的底层基础,就可很顺利的解决这些乱七八糟的问题。
啥是 DOS,我们网工熟啊。
Win+R,输入“cmd”,恭喜你,你就找到了你的归属地。
编辑切换为居中
添加图片注释,不超过 140 字(可选)
DOS 命令就是在这块黑色区域大显身手的。作为网工,很多 DOS 里关于网络的命令,是你日常工作中提高效率的好帮手。
再者说,你不学网络,以后想学习Linux、UNIX等操作系统,了解些简单的 DOS 命令也是很必要的。
今天老杨就来整理一波适合网工、而且好用的 DOS 命令合集,欢迎转发给你部门里的网工新人,多多学习。
01 ping
说到 DOS 的经典命令,怎么能不提耳熟能详,大名鼎鼎的 ping 命令。
ping 命令是用来检查网络是否通畅或者网络连接速度的命令,也被称为第一个必须掌握的 DOS 命令。
ping 命令的原理是啥?
你看啊,网络上的机器都有唯一确定的 IP 地址,这时候,你给目标 IP 地址发送一个数据包,对方就要返回一个同样大小的数据包。
根据返回的数据包,你可以确定目标主机的存在,可以初步判断目标主机的操作系统。
ping 命令的日常操作:
01 用于检测计算机的网络状况
输入ping http://www.baidu.com可以查询自己和百度网站之间的数据传输情况
查找自己的网关:输入ipconfig命令,例如自己的网关为 192.168.127.1,那么输入ping -t 192.168.127.1 不停的发送数据包,会得到自己网关的实时数据,ctrl+c 可以暴力停止。
输入ping -n 2 192.168.127.1得到正在 Ping 192.168.127.1 具有 32 字节的数据:
来自 192.168.127.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.127.1 的回复: 字节=32 时间<1ms TTL=64
192.168.127.1 的 Ping 统计信息:
数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 0ms,最长 = 0ms,平均 = 0ms;会发送两个数据包,并得到传输时间。
输入ping -l 64 192.168.127.1
指发送 64 字节的数据包,穿输到 192.168.127.1
输入ping -a 192.168.127.1
可以帮助你解析主机名称,例如我的名称为 LAPTOP-F92H8T1H
得到主机名称也可以输入hostname,得到 LAPTOP-F92H8T1H
02 判断计算机网络故障
网络故障的原因:TCP/IP 协议或配置出错、物理故障、中毒
ping localhost 或者 ping 255.0.0.0(网关),如果出现回复,则网络协议正常。
03ping 的其他用法
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
[-4] [-6] target_name
选项:
-t Ping 指定的主机,直到停止。
若要查看统计信息并继续操作,请键入 Ctrl+Break;
若要停止,请键入 Ctrl+C。
-a 将地址解析为主机名。
-n count 要发送的回显请求数。
-l size 发送缓冲区大小。
-f 在数据包中设置“不分段”标记(仅适用于 IPv4)。
-i TTL 生存时间。
-v TOS 服务类型(仅适用于 IPv4。该设置已被弃用,
对 IP 标头中的服务类型字段没有任何
影响)。
-r count 记录计数跃点的路由(仅适用于 IPv4)。
-s count 计数跃点的时间戳(仅适用于 IPv4)。
-j host-list 与主机列表一起使用的松散源路由(仅适用于 IPv4)。
-k host-list 与主机列表一起使用的严格源路由(仅适用于 IPv4)。
-w timeout 等待每次回复的超时时间(毫秒)。
-R 同样使用路由标头测试反向路由(仅适用于 IPv6)。
根据 RFC 5095,已弃用此路由标头。如果使用此标头,某些系统可能丢弃回显请求。
-S srcaddr 要使用的源地址。
-c compartment 路由隔离舱标识符。
-p Ping Hyper-V 网络虚拟化提供程序地址。
-4 强制使用 IPv4。
-6 强制使用 IPv6。
阅读推荐
《只会用 ping 测试网络通不通?高级网工还会这么用》 《当网络工程师用 Ping 时,Ping 在偷摸做啥事儿?》
《ping 三个不存在的 IP 地址后,你能得到……》
《一口气 Ping1000 个 IP 地址,会发生什么事情?》
02 nbtstat
该命令使用 TCP/IP 上的 NetBIOS 显示协议统计和当前 TCP/IP 连接,使用这个命令你可以得到远程主机的 NETBIOS 信息。
比如用户名、所属的工作组、网卡的 MAC 地址等。在此你就有必要了解几个基本的参数。
nbtstat 命令的常用操作:
-a 使用这个参数,只要你知道了远程主机的机器名称,就可以得到它的 NETBIOS 信息(下同)。
-A 这个参数也可以得到远程主机的 NETBIOS 信息,但需要你知道它的 IP。
-n 列出本地机器的 NETBIOS 信息。
当得到了对方的 IP 或者机器名的时候,就可以使用 nbtstat 命令来进一步得到对方的信息了,这又增加了我们入侵的保险系数。
03 netstat
这是一个用来查看网络状态的命令,操作简便功能强大。
-a 查看本地机器的所有开放端口,可以有效发现和预防木马,可以知道机器所开的服务等信息。
这里可以看出本地机器开放有 FTP 服务、Telnet 服务、邮件服务、WEB 服务等。用法:netstat -a IP。
netstat 命令的常用操作:
netstat -an 以数字形式显示地址和端口号。
netstat -ano 显示拥有的与每个连接关联的进程 ID。
netstat -ano |findstr 24548 将端口为 24548 的筛选出来。
tasklist |findstr 24548 列举任务进程。
taskkill /im 360se.exe /f 关闭 360 浏览器。
04 net
net 命令是网络命令中的重点之一,必须透彻掌握它的每一个子命令的用法,因为它的功能实在是太强大了,这简直就是 微软自带的最好的入侵工具。
net 命令的常用操作:
compmgmt查看计算机管理,点击共享,可以查看共享内容
net user /? 查看 net user 的用法
net user 查看当前的用户
net user user /add 添加一个叫做 user 的账号
net user user /delete 删除一个叫做 user 的账号
lusrmgr.msc 打开本地用户
net share disk$=e: 默认共享 e 盘,$表默认共享
05 ftp
又是一个高频熟悉的命令。网络上,其实开放的 ftp 的主机很多,其中很大一部分是匿名的,也就是说任何人都可以登陆上去。
ftp 命令的常用操作:
dir 跟 DOS 命令一样,用于查看服务器的文件,直接敲上 dir 回车,就可以看到此 ftp 服务器上的文件。
cd 进入某个文件夹。
get 下载文件到本地机器。
put 上传文件到远程服务器。这就要看远程 ftp 服务器是否给了你可写的权限了。
delete 删除远程 ftp 服务器上的文件。这也必须保证你有可写的权限。
bye/quit 退出当前连接。
06 telnet
功能强大的远程登陆命令,几乎所有的入侵者都喜欢用它,因为,只要你熟悉 DOS 命令,在成功以 administrator 身份连接了远程机器后,就可以用它来干你想干的一切。
一般电脑不会开启这个功能,因此,输入control进入控制面板,点击程序,点击启用或关闭 windows 功能,选中 telnet client。
如果网站的端口开放了如telnet http://www.baidu.com 80,那么 cmd 会跳转到一个新的 cmd 窗口;
如果该网站的端口没有开放telnet http://www.baidu.com 23显示无法打开到主机的连接。在端口 23: 连接失败
编辑切换为居中
添加图片注释,不超过 140 字(可选)
最后再补充一点,关于 cmd 的特殊字符。
如果你执行完毕一个命令,现在需要判断这个命令是否成功,可以输入 echo %errorlevel%, 如果显示 0,表示正确,如果显示 9009,表示不正确。
| 命令管字符
dir D:\\你会得到 D 盘的相关信息,现在我想要找到 D 盘里面含有 c 这个字母的文件夹,你可以输入:dir f:\\ | find “c”
dir f:\\ | findstr DIR 可以找到所以为 dir 的文件
&组合命令,当第一个命令执行失败,后面的命令会继续执行
di & dir di 命令错误但是后面命令正确,因此执行后面命令
di && dir 第一条命令执行失败后面不会执行
di || dir 当第一条命令执行错误时,后面才执行
dir &&echo success || echo no success 操作符的联用,如果 dir 成功,那么会打印 success,否则会打印 no success。