原文:https://dougvitale.wordpress.com/2011/11/28/troubleshooting-faulty-network-connectivity-part-1/

https://dougvitale.wordpress.com/2011/12/11/troubleshooting-faulty-network-connectivity-part-2-essential-network-commands/

注:自动翻译,许多命令也被翻译为中文,请通过上面连接查看原文。

Doug Vitale技术博客

故障网络连接故障排除,第2部分:基本网络命令

在我之前的文章中描述了故障TCP / IP连接的故障排除步骤,我提到了几个命令,如pingtracerouteipconfig,可以帮助您查明有问题的网络组件。这些命令和其他几个命令通常称为TCP / IP实用程序,因为它们是允许您在正在检查的网络上执行诊断和查询的工具。

为了补充这个由两部分组成的系列的第1部分,第2部分是TCP / IP实用程序的参考列表,它将描述每个系列的预期用途和选项。这些工具本身在命令行界面(CLI)环境中运行(或在Linux和Unix中,“shell提示”),但是正如本博客中的几个条目所示,有许多可用的图形实用程序可以让您使用TCP / IP实用程序(并以图形格式查看其输出)。但是,在本文中,我将坚持使用默认的CLI用法和功能。

请记住:学习和理解这些工具的最佳方法是练习它们。还要记住,在道德黑客攻击和网络认证考试期间,这些命令的知识通常是必不可少的。

 

在继续之前,请注意Microsoft已为Windows和Active Directory环境创建了一些您在下面找不到的网络命令

跳到:

地址解析协议

FTP

主机名

IFCONFIG

IPCONFIG

NBTSTAT

用netstat

Nslookup,Dig和Host

的pathping

Ping

路线

远程登录

Traceroute和tracert

谁是

推荐阅读

地址解析协议

使用arp命令可以查看和管理地址解析协议(ARP)缓存。换句话说,arp显示并修改ARP协议使用的IP地址到MAC地址转换表。为了arp命令是有意义和有帮助的,您需要首先了解地址解析协议的目的。当DNS在主机名和IP地址之间进行转换时,ARP会在MAC地址(第2层)和IP地址(第3层)之间进行转换。当主机尝试与同一子网上的另一台主机通信时,它必须首先知道目标主机的MAC地址。如果发送主机的ARP缓存中没有用于目标MAC地址的条目,则ARP发送广播(到子网中的所有主机),要求具有目标IP地址的主机发回其MAC地址。这些IP到MAC映射在ARP缓存中建立,arp命令允许您查看和修改。

请注意,ARP缓存是黑客的诱人目标。它可能容易受到缓存中毒攻击的影响,其中错误的条目被插入到ARP缓存中,导致受感染的主机在不知不觉中向攻击者发送数据(通常是未加密的)。

适用于Windows的Arp

Windows中的默认arp命令语法是:

arp -s inet_addr eth_addr [if_addr]
arp -d inet_addr [if_addr]
arp -a [inet_addr] [-N if_addr] [-v]

Arp命令开关(Windows)

描述

arp -aarp -g 使用ARP在所有网络接口的ARP缓存中显示IP和MAC地址。
arp -d [inet_addr]
删除ARP缓存中的所有条目,这将导致重新处理本地网络主机的ARP查询。例如,arp -d 10.57.1​​0.32
arp -N [if_addr]
显示[if_addr]指定的网络接口的ARP条目-a-g一起使用例如:arp -a -N 192.168.20.15,其中192.168.20.15是您(或您的一个)网络接口的IP地址。
arp -s 向ARP缓存添加静态(“永久”)条目。此命令是ARP欺骗攻击的对策。例如,此命令添加一个静态条目:arp -s 157.55.85.212 00-aa-00-62-c6-09
arp -v 以详细模式显示当前ARP表项。将显示环回接口上的所有无效条目和条目。arp -aarp -g一起使用
[eth_addr] 指定物理(MAC)地址。
[if_addr] 如果存在,则指定计算机上应修改地址转换表接口的Internet地址在您的计算机具有多个网络接口时很有用 如果不存在,将使用第一个适用的接口。
[Inet_addra] 指定ARP缓存中的IP地址条目。-a-g一起使用例如,命令arp -a 192.168.10.20将查询缓存以显示主机192.168的MAC地址。10.20。


↑到命令列表

适用于Linux的Arp

Linux中的默认arp命令语法如下:

arp [-evn] [-H type] [-i if] -a [hostname]
arp [-v] [-i if] -d hostname [pub]
arp [-v] [-H type] [-i if] -s hostname hw_addr [temp]
arp [-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub
arp [-v] [-H type] [-i if] -Ds hostname ifa [netmask nm] pub
arp [-vnD] [-H type] [-i if] -f [filename]

ARP缓存中的每个完整条目都将标记为C(完整)标志。永久条目标记为M(perManent),发布条目具有P(发布)标记。

需要注意的是ARP在Linux的反对,因为描述这里

Arp命令开关(Linux)

描述

arp -a [hostname]所有[hostname] --
显示指定主机的条目。如果未使用[hostname]参数,则将显示所有条目。
arp -d [ip_addr]删除[ip_addr] --
删除指定主机的ARP缓存条目。arp -d *将删除缓存中的所有主机(请注意-d和*之间的空格)。
arp -Duse-device -- 使用与指定接口关联的硬件地址。
arp -e 以默认(Linux)样式显示条目。
arp -f [filename]文件[filename] -- -s选项类似,此时地址信息仅取自[filename]设置的文件数据文件的名称经常是/ etc / ethers,但这不是官方的。如果未指定[filename],则使用/ etc / ethers作为默认值。
arp -Hhw-type [type]-t [type] --
设置或读取ARP缓存时,此可选参数告诉arp应检查哪个条目类。此参数的默认值为ether(即IEEE 802.3 10Mbps以太网的硬件代码0x01)。
arp -i [int]device [int] --
选择一个接口。转储ARP缓存时,仅打印与指定接口匹配的条目。例如,arp -i eth0 -s 10.21.31.41 A321。ABCF.321A创建一个静态ARP条目,将IP地址10.21.31.41与MAC地址A321相关联。关于eth0的ABCF.321A
arp -n数字 -- 显示IP地址,而不是尝试确定域名。
arp -s [hostname] [hw_addr]设置[hostname] -- 手动为主机[hostname]创建静态ARP地址映射条目,硬件地址设置为[hw_addr]
arp -v 使用详细模式提供更多详细信息。


↑到命令列表

FTP

RFC(文件传输协议)RFC 959中指定,其名称暗示:它用于在TCP / IP网络上的主机之间传输文件。FTP的一个常见用途是将更新的Web内容上载到Web服务器。虽然它可以在命令行界面中使用,但是有一些非常流行且功能强大的FTP图形客户端。这些GUI客户端的示例包括FileZillaFireFTPWS_FTPSmartFTPWinSCP此外,现代浏览器(如Firefox或Internet Explorer)可用于从FTP服务器下载文件。

FTP遭受与telnet相同的安全相关缺陷 - 它不支持加密或强身份验证。因此,应谨慎使用FTP。建议过渡到SFTP

在连接到与FTP服务器的FTP命令,则进入交互模式,其中上提示修改从C:\$ftp>

适用于Windows的FTP

在Windows中,ftp命令遵循以下语法:

ftp [–v] [–n] [–i] [–d] [–g] [–s:[file_name]] [-a] [-A] [-w:[window_size]] [ftp_server]

FTP命令选项(Windows)

描述

ftp -a 指定绑定FTP数据连接时可以使用任何本地接口。
ftp -A 以匿名用户身份登录FTP服务器。
ftp -b:[AsyncBuffers] 覆盖默认的异步缓冲区计数3。
ftp -d 启用调试,显示FTP客户端和FTP服务器之间传递的所有命令。
ftp -g 禁用文件名通配。默认情况下,启用globbing。Globbing允许使用星号(*)和问号(?)作为本地文件或路径名中的通配符。
ftp -i 在多个文件传输期间禁用交互式提示。
ftp -n 禁止在进行初始连接时自动登录。
ftp -r:[RecvBuffers] 覆盖默认的SO_RCVBUF大小8192。
ftp -s:[文件名] 指定包含FTP命令的文本文件,以便在FTP启动后自动运行。
ftp -v 禁止显示FTP服务器响应。
ftp -w:[window_size] 指定传输缓冲区的大小(默认窗口大小为4096字节)。
ftp -x:[SendBuffer] 覆盖默认的SO_SNDBUF大小8192。
ftp /?- ? 显示帮助消息。
FTP>![命令] 在本地计算机上运行指定的命令。
FTP>?还是ftp>?[命令] 显示FTP命令的描述(与帮助相同)。
ftp> append [local_file] [remote_file] 使用当前文件类型设置将本地文件附加到远程主机上的文件。
FTP> ASCII 将文件传输类型设置为ASCII(这是默认值)。
FTP>钟 在每个文件传输命令完成后切换铃声(默认情况下禁用)。
FTP>二进制 将文件传输类型设置为二进制
FTP>再见 结束与远程主机的FTP会话并退出FTP。
ftp> cd [remote_path] 更改远程主机上的工作目录。
FTP>关闭 结束与远程服务器的FTP会话,并返回到本地主机上的命令解释程序。
FTP>调试 切换调试(默认情况下关闭)。打开调试时,将打印发送到远程主机的每个命令,前面是字符串 - - - >。
ftp> delete [remote_file] 删除远程主机上的文件。
ftp> dirftp> dir [remote_directory] ​​[local_file] 显示远程目录的文件和子目录的列表。该命令的输出可以发送到[local_file]
FTP>断开 断开与远程主机的连接,如关闭,但保留FTP提示。
ftp> get [remote_file] [local_file] 使用当前文件传输类型将远程文件复制到本地主机。
FTP>水珠 切换文件名通配(默认情况下启用)。Globbing允许在本地文件或路径名中使用通配符。
FTP>散 为每个传输的数据块切换数字符号(#)打印(默认情况下禁用)。数据块的大小为2,048字节。
ftp> helpftp> help [command] 显示FTP命令的描述(与- ?相同)。
ftp> lcd [local_directory] 更改本地主机上的工作目录。默认情况下,使用本地主机上的当前目录。
ftp> literal [参数] 逐字发送参数到远程FTP服务器。预计会有一个FTP回复代码。
ftp> lsftp> ls [remote_directory] ​​[local_file] 显示远程目录内容的缩写列表。该命令的输出可以发送到[local_file]
ftp> mdelete [remote_files] 删除远程主机上的多个文件。
ftp> mdir [remote_directories] 显示远程目录的文件和子目录的列表。
ftp> mget [remote_files] 使用当前文件传输类型将多个远程文件复制到本地主机。
ftp> mkdir [remote_directory] 创建一个远程目录。
ftp> mls [remote_directories] 显示远程目录的文件和子目录的缩写列表。
ftp> mput [local_files] 使用当前文件和子目录将多个本地文件复制到远程主机。
ftp> open {FTP_server] [port] 连接到指定的FTP服务器。
FTP>提示符 切换提示(默认情况下启用)。FTP在多个文件传输期间提示,以便您有选择地检索或存储文件;如果关闭提示,mgetmput将传输所有文件。
ftp> put [local_file_name] [remote_file_name] 使用当前文件传输类型将本地文件复制到远程主机。
FTP> PWD 显示远程主机上的当前目录。
FTP>退出 结束与远程主机的FTP会话并退出FTP。
ftp>引用[参数] 文字命令的同义词
FTP> recv的 使用当前文件传输类型将远程文件复制到本地主机(与get相同)。
ftp> remotehelpftp> remotehelp [command] 显示远程命令的帮助。
ftp> rename [file_name] [new_file_name] 重命名远程文件。
ftp> rmdir [remote_directory] 指定要删除的远程目录的名称。
ftp>发送[local_file_name] [remote_file_name] 使用当前文件传输类型将本地文件复制到远程主机(与put相同)。
FTP>状态 显示FTP连接和切换的当前状态。
FTP>跟踪 切换数据包跟踪(在运行FTP命令时显示每个数据包的路由)。
ftp> type [ascii | 二进制] 设置或显示文件传输类型。ASCII是默认值。
ftp>用户[用户名] [密码] 指定远程主机的用户。
FTP>详细 切换详细模式(默认情况下启用)。如果选中,则显示所有FTP响应; 文件传输完成后,还会显示有关传输效率的统计信息。


匿名将用户登录到名为ftp.example.company.com的FTP服务器

ftp -A ftp.example.company.com

将用户登录到名为ftp.example.company.com的FTP服务器,并运行名为commands.txt的文件中包含的FTP 命令

ftp -s:commands.txt ftp.example.company.com

↑到命令列表

FTP for Linux

在Linux中,ftp命令遵循以下语法:

ftp [-pinegvd] [host [port]]

ftp [-v] [-d] [-i] [-n] [-g] [-k realm] [-f] [-x] [-u] [-t] [host]

请注意,不同的Linux手册页显示了FTP的不同选项(参考:12),因此下面的某些选项可能不适用于您的Linux发行版。另请注意,BSD操作系统支持与Linux不同的FTP选项(参考:12)。

FTP命令选项(Linux)

描述

ftp -d 启用调试。
ftp -e 如果编译到ftp可执行文件中,则禁用命令编辑和历史记录支持否则,-e什么都不做。
ftp -f 导致凭据转发到远程主机。
ftp -g 禁用文件名通配。
ftp -i 在多个文件传输期间关闭交互式提示。
ftp -k [领域] 使用Kerberos v4身份验证时,获取域中的票证。
ftp -m 默认情况下,FTP显式绑定到数据通道的同一接口,作为被动模式下的控制通道(在多宿主客户端上很有用)。此选项禁用该行为。
ftp -n 在初始连接时限制FTP尝试自动登录。如果启用了自动登录,FTP将检查.netrc用户主目录中文件,以获取描述远程计算机上帐户的条目。如果不存在任何条目,FTP将提示输入远程计算机登录名(默认为本地计算机上的用户标识),并在必要时提示输入密码和用于登录的帐户。
ftp -p 使用被动模式进行数据传输。允许在防火墙阻止来自外部世界的连接回到客户端计算机的环境中使用FTP。要求FTP服务器支持该PASV命令。由于使用PORT传输模式的安全问题,这是所有客户端(FTP和PFTP)的默认设置该标志仅用于兼容性,不再有效。
ftp -t 启用数据包跟踪。
ftp -u 限制FTP在初始连接时尝试自动身份验证。如果启用了自动身份验证,则FTP会尝试通过发送AUTH命令对FTP服务器进行身份验证,使用本地支持的任何身份验证类型。一旦接受了认证类型,将通过发出ADAT(认证/安全数据)命令来继续认证协议此选项还会禁用自动登录。
ftp -v 详细选项,强制FTP显示来自远程服务器的所有响应,以及报告数据传输统计信息。
ftp -x 在成功进行身份验证后,客户端会立即尝试协商加密(数据和命令保护级别为“private”)。
FTP>![command [args]] 在本地计算机上调用交互式shell。如果存在参数,则第一个被认为是直接执行的命令,其余参数作为其参数。
ftp> $ [宏名] [args] 执行使用macdef命令定义的宏[宏名称]参数传递给宏unglobbed。
ftp>帐号[密码] 成功完成登录后,提供远程主机所需的补充密码以访问资源。如果不包含参数,将在非回显输入模式下提示用户输入帐户密码。
ftp> append [local_file] [remote_file] 将本地文件附加到远程主机上的文件。如果未指定[remote_file],则在被任何ntransnmap设置更改后,本地文件名将用于命名远程文件文件传输使用当前设置的类型格式模式结构
FTP> ASCII 将文件传输类型设置为网络ASCII。这是默认类型。
FTP>钟 在每个文件传输命令完成后启用铃声。
FTP>二进制 设置文件传输类型以支持二进制图像传输。
FTP>再见 终止与远程服务器的FTP会话并退出FTP。文件结尾也将终止会话并退出。
FTP>情况 mget命令期间切换远程计算机文件名大小写映射案例打开(默认为关闭)时,所有大写字母的远程计算机文件名都写在本地目录中,字母映射到小写。
FTP> CCC 终止与远程服务器的FTP会话,并返回到命令解释程序。删除任何已定义的宏。
ftp> cd [remote_directory] 将远程主机上的工作目录更改为指定的目录。
FTP> CDUP 将远程主机工作目录更改为当前远程计算机工作目录的父目录。
ftp> [mode] [file_name] 将远程主机上的权限模式[file_name]更改为[mode]。请参阅chmod上的页面以供参考。
FTP>明确 将数据传输的保护级别设置为“清除”。如果没有ADAT(身份验证/安全数据)命令成功,则这是默认保护级别。
FTP>关闭 终止与远程服务器的FTP会话并返回到命令解释程序。删除任何已定义的宏。
ftp> cprotect [protection_level] 将命令的保护级别设置为[protection_level]有效的保护水平是明确了无保护的命令,安全的命令完整性通过密码校验保护,私人的命令,保密性和完整性的加密保护。如果ADAT命令成功,则默认命令保护级别为“安全”,否则唯一可能的级别为“清除”。如果未指定级别,则打印当前级别。cprotect clear相当于ccc命令。
FTP> CR 在ASCII类型文件检索期间切换回车剥离。在ASCII类型文件传输期间,记录由回车/换行序列表示。cr打开(默认值)时,将从此序列中删除回车符以符合UNIX单行换行记录分隔符。非UNIX远程系统上的记录可能包含单个换行符; 当进行ASCII类型传输时,只有当cr关闭时,才能将这些换行符与记录分隔符区分开来
ftp> delete [remote_file] 删除远程主机上的文件。
ftp> debug [debug_value] 切换调试模式。如果指定了可选的[debug_value],则用于设置调试级别。打开调试时,ftp会打印发送到远程计算机的每个命令,前面是字符串“ - >”。
ftp> dir [remote_directory] ​​[local_file] 在目录[remote_directory]中打印目录内容列表,并可选择将输出发送到[local_file]如果启用交互式提示,FTP将提示用户验证最后一个参数确实是用于接收dir输出的目标本地文件如果未指定目录,则使用远程计算机上的当前工作目录。如果未指定本地文件,或者local-file为“ - ”,则输出到达终端。
FTP>断开 关闭选项的同义词
ftp>表格[格式] 将文件传输表单设置为[format]默认格式为“文件”。
ftp> get [remote_file_name] [local_file_name] 检索[remote_file],将其存储在本地主机上,并可选择将其重命名为提供的[local_file_name]如果未指定本地文件名,则该文件的名称与远程主机上的名称相同,但会受当前大小写ntransnmap设置的更改传输文件时使用类型形式模式结构的当前设置
FTP>水珠 切换mdeletemgetmput的文件名扩展如果通配关闭与水珠,文件名参数是从字面上并没有扩大。
FTP>散 切换传输的每个数据块的哈希符号(#)打印。数据块的大小为1024字节。
ftp> helpftp> help [command] 打印所有命令的帮助消息,或仅打印指定[命令]
ftp> idle [秒] 将远程服务器上的非活动计时器设置为[seconds]指定的数字如果省略[秒],则打印当前的不活动计时器。
ftp> lcd [目录] 更改本地主机上的工作目录。如果未指定[directory],则使用用户的主目录。
ftp> ls [remote_directory] ​​[local_file] 打印远程主机上目录内容的列表。如果未指定[remote_directory],则使用当前工作目录。此命令的输出可以发送到[local_file]而不是标准输出。
ftp> macdef [macro_name] 定义一个宏。后续行存储为宏[macro_name] ; 空行(文件中的连续换行符或从终端返回的回车符)终止宏输入模式。所有已定义的宏中限制为16个宏和4096个字符。宏保持定义直到收盘执行命令。宏处理器将'$'和'\'解释为特殊字符。后跟数字(或数字)的'$'将被宏调用命令行上的相应参数替换。'$'后跟一个'i'表示执行宏将被循环的宏处理器。在第一次传递'$ i'被宏调用命令行上的第一个参数替换,在第二次传递时它被第二个参数替换,依此类推。后跟任何字符的'\'将被该字符替换。使用'\'来防止'$'的特殊处理。
ftp> mdelete [remote_files] 删除远程主机上的文件。
ftp> mdir [remote_files] [local_file] 在指定的目录中打印目录内容列表,并可选择将输出发送到[local_file]
ftp> mget [remote_files] [remote_files]中指定的每个文件名执行get有关文件名扩展的详细信息,请参阅glob然后将根据大小写ntransnmap设置处理生成的文件名文件被传输到本地工作目录,可以用lcd更改可以使用'!'创建新的本地目录 mkdir [目录]
ftp> mkdir [directory_name] 在远程主机上创建目录。
ftp> mls [remote_files] [local_file] nlist类似但可以指定多个远程文件,并且必须指定[local_file]如果启用交互式提示,FTP将提示用户验证最后一个参数确实是用于接收mls输出的目标本地文件
ftp> mode [mode_name] 将文件传输模式设置为[mode_name]默认模式为“流”模式。
ftp> modtime [file_name] 显示远程主机上指定的文件的上次修改时间。
ftp> mput [local_files] 对指定的每个文件执行put命令。有关文件名扩展的详细信息,请参阅glob然后将根据ntransnmap设置处理生成的文件名
ftp>更新[file_name] 获取只有在远程文件的修改时间是文件最近更不是本地主机上的文件。如果本地主机上不存在该文件,则认为远程文件较新。否则,此命令与get相同
ftp> nlist [remote_directory] ​​[local_file] 打印远程主机上目录中的文件列表。如果未指定[remote_directory],则使用当前工作目录。如果启用交互式提示,FTP将提示用户验证最后一个参数确实是用于接收nlist输出的目标本地文件如果未指定本地文件,或者local-file为“ - ”,则将输出发送到终端。
ftp> nmap [inpattern outpattern] 设置或取消设置文件名映射机制。如果未指定参数,则取消设置文件名映射机制。如果指定了参数,则在mput命令期间映射远程文件名,放置没有指定远程目标文件名的情况下发出的命令。如果指定了参数,则在mget命令期间映射本地文件名,并在没有指定本地目标文件名的情况下发出get命令。连接到具有不同文件命名约定或惯例的非UNIX远程计算机时,此命令很有用。映射遵循[inpattern和outpattern]设置的模式是传入文件名的模板(可能已根据ntrans处理案例设置)。变量模板是通过在[inpattern]中包含序列'$ 1','$ 2',...,'$ 9'来完成的使用'\'来阻止对'$'字符的这种特殊处理。所有其他字符都按字面处理,并用于确定nmap [inpattern]变量值。例如,给定inpattern $ 1. $ 2和远程文件名mydata.data,$ 1的值为'mydata',$ 2的值为'data'。outpattern确定生成的映射文件名。序列'$ 1','$ 2',...,'$ 9'被替换为inpattern模板产生的任何值。序列'$ 0'将替换为原始文件名。另外,如果seq1不是空字符串,则序列'[seq1,seq2]'被[seq1]替换; 否则它被seq2取代。例如,命令nmap $ 1. $ 2. $ 3 [$ 1,$ 2]。[$ 2,file]将为输入文件名和“ myfile.data.old ”,“ myfile.file ” 生成输出文件名“ myfile.data ” 输入文件名输入文件名为“myfile.myfile” 空格可以包含在outpattern中,如示例中所示:myfile.datamyfilemyfilenmap $ 1 sed“s / * $ //”> $ 1'使用'\'字符可以防止对'$','[','['和',''字符进行特殊处理。
ftp> ntrans [inchars [outchars]] 设置或取消设置文件名字符转换机制。如果未指定参数,则取消设置文件名字符转换机制。如果指定了参数,则在mput命令期间转换远程文件名中的字符,放置没有指定远程目标文件名的情况下发出的命令。如果指定的参数,在字符本地文件名在翻译MGET命令,并获得无指定的本地目标文件名发出的命令。连接到具有不同文件命名约定或惯例的非UNIX远程计算机时,此命令很有用。文件名中与[inchars]中的字符匹配的字符[outchars]中的相应字符替换如果[inchars]中角色的位置长于[outchars]的长度,则从文件名中删除该角色。
ftp> open [host] [port] 建立与指定FTP服务器的连接。可以提供可选的端口号,在这种情况下,FTP将尝试联系该端口的FTP服务器。如果启用了自动验证选项(默认),则FTP将尝试通过AUTH使用本地支持的任何验证类型发送命令来验证FTP服务器一旦接受了身份验证类型,将通过发出ADAT命令继续执行身份验证协议如果启用了自动登录选项(默认),FTP还将尝试自动将用户登录到FTP服务器。
ftp> open [host] [port] [-forward] ftp> open相同,但如果指定-forward选项,则FTP会将用户Kerberos票证的副本转发到远程主机。
FTP>被动 关闭被动数据传输模式。在被动模式下,客户端通过连接到数据端口来启动数据连接。从不允许传入连接的防火墙后面进行操作通常需要被动模式,但如果连接到不支持被动操作的FTP服务器,可能需要禁用被动模式。
FTP>私 将数据传输的保护级别设置为“私有”。数据传输是通过加密保护的机密性和完整性。如果没有ADAT命令成功,那么唯一可能的级别是“清除”。
FTP>提示符 切换交互式提示。在多个文件传输期间发生交互式提示,以允许用户有选择地检索或存储文件。如果关闭提示(默认打开),任何mgetmput都将传输所有文件,任何mdelete都将删除所有文件。
ftp> protect [protection_level] 将数据传输的保护级别设置为[protection_level]对于不受保护的数据传输,有效保护级别是“清除的”,对于由加密校验和保护的数据传输完整性是“安全的”,对于由加密保护的数据传输机密性和完整性是“私有的”。如果没有ADAT command成功,则唯一可能的级别是“清除”。如果未指定级别,则打印当前级别。默认保护级别为“清除”。
ftp> proxy [ftp_command] 在辅助控制连接上执行FTP命令。此命令允许同时连接到两个远程FTP服务器,以便在两个服务器之间传输文件。打开第一个代理命令以建立辅助控制连接。输入命令代理?查看辅助连接上可执行的其他FTP命令。以下命令在代理开头时表现不同open在自动登录过程中不会定义新宏,close将不会删除现有宏定义,getmget来自主机的主控制连接到主机的次要控制连接上传输文件,并mput的,并追加从辅助控制连接到主机的主控制连接上在主机传输文件。第三方文件传输取决于PASV服务器在辅助控制连接上对FTP协议命令的支持
ftp> put [local_file_name] [remote_file_name] 在远程主机上存储本地文件。如果未指定[remote_file_name],则在命名远程文件时根据任何ntransnmap设置处理后使用本地文件名文件传输使用当前设置的类型格式模式结构
FTP> PWD 显示远程主机上的当前工作目录。
FTP>退出 ftp> bye的同义词
ftp> quote [arg1] [arg2] [...] 指定的参数将逐字发送到远程FTP服务器。
ftp> recv [remote_file_name] [local_file_name] ftp> get的同义词
ftp> reget [remote_file] [local_file] Reget的作用类似于get,除了如果[local_file]存在且小于[remote_file][local_file]被假定为[remote_file]的部分传输副本,并且从明显的失败点继续传输。当通过易于断开连接的网络传输非常大的文件时,此命令很有用。
ftp> remotehelpftp> remotehelp [command_name] 请求来自远程FTP服务器的帮助。如果指定了[command_name],它也会提供给服务器。
ftp> remotestatus [file_name] 没有[file_name]显示远程主机的状态。如果[文件名]被指定,示出的状态[文件名]在远程主机上。
ftp>重命名[from] [to] 将远程主机上的文件[from]重命名为[to]中指定的名称
FTP>复位 清除回复队列。此命令将命令/应答顺序与远程FTP服务器重新同步。远程服务器违反FTP协议后可能需要重新同步。
ftp> restart [marker] 获取放置指示标记后立即重新启动(?)在UNIX系统上,[marker]通常是文件中的字节偏移量。
ftp> rmdir [directory_name] 删除远程主机上的目录。
FTP>与runique 使用唯一文件名切换在本地主机上存储文件。如果文件已存在,其名称等于getmget命令的目标本地文件名,则会在名称后附加“.1”。如果结果名称与另一个现有文件匹配,则会在原始名称后附加“.2”。如果此过程继续到“.99”,则会打印一条错误消息,并且不会进行传输。将报告生成的唯一文件名。请注意,runique不会影响从shell命令生成的本地文件(请参阅下文)。默认值为off。
FTP>安全 将数据传输的保护级别设置为“安全”。数据传输受加密校验和的完整性保护。如果没有ADAT命令成功,那么唯一可能的级别是“清除”。
ftp>发送[local_file] [remote_file] ftp> put的同义词
FTP>发送端口 切换PORT命令的使用默认情况下,FTP将PORT在为每个数据传输建立连接时尝试使用命令。使用PORT命令可以防止执行多个文件传输时出现延迟。如果PORT命令失败,FTP将使用默认数据端口。当使用的PORT命令被禁止,不试图将进行使用PORT的命令为每个数据传送。这对某些忽略PORT命令的FTP实现很有用,但错误地表明它们已被接受。
ftp> site [arg1] [arg2] 指定的参数将作为SITE命令逐字发送到远程FTP服务器
ftp> size [file_name] 显示远程主机上[file_name]的大小
FTP>状态 显示当前的FTP状态。
ftp> struct [structure_name] 将文件传输结构设置为[structure_name]默认情况下,使用“流”结构。
FTP> sunique 在唯一文件名下切换远程主机上的文件存储。远程FTP服务器必须支持FTP协议STOU命令才能成功完成。远程服务器将报告唯一的名称。默认值为off。
FTP>系统 显示远程主机上运行的操作系统的类型。
FTP> TENEX 将文件传输类型设置为与TENEX计算机通信所需的类型
FTP>跟踪 切换数据包跟踪。
ftp> type [type] 将文件传输类型设置为[type]如果未指定类型,则打印当前类型。默认类型是网络ASCII
ftp>用户[用户名] [密码] [帐号] 标识远程FTP服务器的用户。如果未指定密码且服务器需要密码,FTP将提示用户(在禁用本地回显之后)。如果未指定帐户字段,并且FTP服务器需要该帐户字段,则系统将提示用户输入该字段。如果指定了帐户字段,则在登录序列完成后,如果远程服务器不需要登录,则会将帐户命令中继到远程服务器。除非在禁用“自动登录”的情况下调用FTP,否则此过程为在初始连接到FTP服务器时自动完成。
FTP>详细 切换详细模式。在详细模式下,FTP服务器的所有响应都将显示给用户。此外,当文件传输完成时,报告有关传输效率的统计信息。默认情况下,详细信息已启用。
FTP>? 帮助的同义词


↑到命令列表

主机名

如果您不确定正在使用的计算机的主机名,hostname命令将显示它。在Linux和Unix中,您可以使用主机名来配置主机名和相关选项。

Windows的主机名

主机名命令(Windows)

描述

主机名 打印当前主机的名称,其中名称是完整计算机名称的主机名部分。

Linux的主机名

Linux中hostname命令语法如下:

hostname [-v] [-a] [-d] [-f] [-A] [-i] [-I] [--all-ip-addresses] [--long] [-s] [-y]
hostname [-v] [-b] [-F filename] [--file filename] [hostname]
hostname [-v] [-h] [-V]

主机名命令开关(Linux)

描述

主机名[主机名] 设置主机名。
主机名-a别名 -- 显示主机的别名(如果使用)。
主机名-A全-fqdns-- 显示机器的所有FQDN此选项枚举所有已配置网络接口上的所有已配置网络地址,并将其转换为DNS域名。将跳过无法转换的地址(即因为它们没有适当的反向DNS条目)。
主机名-b启动 -- 始终设置主机名; 这允许-F指定的文件不存在或为空,在这种情况下,如果尚未设置默认主机名localhost,则将使用它。
主机名-d -- 显示DNS域名。
主机名-ffqdnlong -- -- 显示完全限定的域名。
主机名-F [文件]文件[文件] -- 咨询[file]获取主机名。
主机名-h帮助 -- 显示帮助消息。
主机名-i--ip-addresses 显示主机IP地址。
主机名-Iall-ip-addresses -- 显示主机的所有网络地址。此选项枚举除环回接口和IPv6链路本地地址之外的所有网络接口上的所有已配置地址。与选项-i不同,此选项不依赖于名称解析。
主机名-s -- 修剪显示输出中的域信息。
主机名-v详细 -- 详细模式
主机名-V版本 -- 显示版本信息,然后退出。
主机名-yyp-nis [域名] -- 显示NIS域名或使用[域名]设置新的NIS域名


↑到命令列表

IFCONFIG

使用ifconfig命令可显示并配置在Linux和Unix主机的网络接口(如IP地址,子网掩码和默认网关)的参数。它的Windows对应物是ipconfig如果不带参数使用,ifconfig将显示所有网络接口(例如NIC,无线适配器和环回)的当前配置。接口名称从零开始编号:eth0,eth1,wlan0,wlan1等。

Ifconfig选项(仅限Linux)

标准ifconfig命令语法如下:

ifconfig [interface or address_family type] options | address ...

请注意,使用ifconfig在Linux的反对,因为描述这里

Ifconfig命令切换

描述

使用ifconfig
显示所有网络接口的详细信息。
ifconfig [interface]
接口的名称。这通常是一个驱动程序名称后跟一个单元号; 例如,第一个以太网接口的eth0Eth0通常是PC的主要网络接口卡(NIC)。
ifconfig [address_family]
为了能够解释各种协议使用的不同命名方案,[address_family]用于解码和显示所有协议地址。当前支持的地址族包括inet(TCP / IP,默认),inet6(IPv6),ax25(AMPR分组无线电),ddp(Appletalk阶段2),ipx(Novell IPX)和netrom(AMPR分组无线电)。
ifconfig [interface] add [address / prefixlength] 将IPv6地址添加到[interface]。
ifconfig [interface] address [address] 将指定的IP [地址]分配给指定的[接口]。
ifconfig [interface] allmulti-allmulti 启用或禁用全组播模式如果选中,则接口将接收网络上的所有组播数据包。这启用或禁用将传入帧发送到内核的网络层。
ifconfig [interface] arp-arp 启用或禁用此[接口]上ARP协议的使用
ifconfig [interface] broadcast [address] 指定用于广播传输的地址。默认情况下,子网的广播地址是子网地址主机部分中所有1的IP地址(即/ 24子网的abc255)。
ifconfig [interface] del [address / prefixlength] [interface]中删除IPv6地址
ifconfig [interface] down 禁用[interface]
ifconfig [interface] hw [class] [address] 如果设备驱动程序支持此操作,则设置此[接口]的硬件(MAC)地址关键字后面必须跟硬件类的名称和硬件地址的可打印ASCII等效项。目前支持的硬件类包括ether(以太网),ax25(AMPR AX.25),ARCnetnetrom(AMPR NET / ROM)。
ifconfig [interface] io_addr [address] 设置启动[地址]I / O空间此设备。
ifconfig [interface] irq [地址] 设置网络接口使用的中断线
ifconfig [interface] mem_start [address] 设置接口共享内存的起始地址
ifconfig [interface] media [type] 设置物理端口或介质类型。[type]的示例10baseT10base2AUI[类型]的值自动将告诉接口驱动程序,以自动确定的媒体类型(驱动程序支持该命令而异)。
ifconfig [interface] mtu [n] 将接口的最大传输单位(MTU设置[n]
ifconfig [interface] multicast 在接口上设置多播标志(通常不需要,因为驱动程序自己正确设置标志)。
ifconfig [interface] netmask [mask_address]
设置此接口的IP子网掩码。此值默认为标准的A,B或C类子网掩码(基于接口IP地址),但可以使用此命令进行更改。
ifconfig [interface] pointopoint-pointopoint
在此接口上启用或禁用点对点模式
ifconfig [interface] promisc-promisc
在接口上启用或禁用混杂模式
ifconfig [interface] txquelen [n] 设置接口上的传输队列长度对于具有高延迟的连接(即拨号调制解调器,ISDN等),建议使用较小的值。
ifconfig [interface] tunnel [address] 创建一个简单的Internet转换(IPv6-inIPv4)设备,该设备通过隧道传送到提供的IPv4 [地址]
ifconfig [interface] up 激活(启用)接口。


例如,此命令设置eth0的IP地址,子网掩码和广播地址:

ifconfig eth0 192.168.10.25 netmask 255.255.255.0 broadcast 192.168.10.255

↑到命令列表

IPCONFIG

Ipconfig可以显示当前的TCP / IP网络配置值,更新或释放动态主机配置协议(DHCP)分配的租约,以及显示,注册或刷新域名系统(DNS)名称。它的Linux / Unix对应物是ifconfig

Ipconfig选项(仅限Windows)

ipconfig命令切换

描述

IPCONFIG 显示活动网络接口的详细信息。
ipconfig / all 显示活动和非活动网络接口的更多详细信息,包括MAC地址,DHCP服务器IP地址,DNS服务器地址,WINS服务器地址以及是否启用NetBIOS Over TCP / IP。
ipconfig / allcompartments/ allcompartments / all 显示有关所有网络隔离专区的信息或详细信息(全部)
ipconfig / displaydns 显示DNS客户端解析程序缓存的内容,其中包括从本地Hosts文件预加载的条目和任何最近获取的名称查询的资源记录arp -a相似
ipconfig / flushdns 刷新(删除)DNS客户端解析程序缓存的内容arp -d相似
ipconfig / registerdns 启动对计算机上配置的DNS名称和IP地址的动态注册。
ipconfig / release/ release6 [adapter]
释放(删除)所有网络接口的动态(来自DHCP)IPv4或IPv6参数(如果未指定特定的适配器名称。例如,ipconfig / release LO *仅释放以'Lo'开头的那些接口)。
ipconfig / renew/ renew6 [adapter] 启动与DHCP服务器的通信,并更新所有或某些网络接口的动态IPv4或IPv6参数。例如,ipconfig / renew LO *更新以'Lo'开头的所有接口。
ipconfig / setclassid/ setclassid6 [adapter]
修改DHCP或DHCPv6类ID。类可以是供应商定义的或用户定义的,并且在某些客户端需要不同的默认网关或DNS服务器参数时由DHCP管理员实现。
ipconfig / showclassid/ showclassid6 [adapter] 显示DHCP或DHCPv6类ID。


↑到命令列表

NBTSTAT

Nbtstat是一个Windows工具,用于解决TCP / IP名称解析问题上的NetBIOS问题。TCP / IP上的NetBIOS是一种网络协议,允许依赖NetBIOS协议的传统计算机应用程序在现代TCP / IP网络上使用。因此,现在您的网络中不太可能使用TCP / IP上的NetBIOS。

Nbtstat可以检查当前NetBIOS over TCP / IP(NetBT)连接的状态,查看和更新​​NetBIOS名称缓存,并确定使用Windows Internet名称服务(WINS)注册的名称。如果您有兴趣,可以在TechNet上描述nbtstat输出

不要将此命令与netstat混淆

Nbtstat选项(仅限Windows)

标准的nbtstat命令语法是:

nbtstat [ [-a RemoteName] [-A IP address] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [interval] ]

nbtstat命令开关

描述

nbtstat -a [远程名称]
返回指定计算机名称的地址卡的NetBIOS名称表和MAC地址。
nbtstat -A [远程IP地址]
在给定目标的IP地址时,列出与nbtstat -a相同的信息
nbtstat -c 显示NetBIOS名称缓存的内容,NetBIOS名称表及其已解析的IP地址。
nbtstat -n 显示本地计算机的NetBIOS名称表。“已注册”状态表示该名称是通过广播或WINS服务器注册的。
nbtstat -r 列出通过广播和WINS解析的名称。
nbtstat -R 清除并重新加载远程缓存名称表。
nbtstat -RR 释放然后刷新在WINS服务器上注册的本地计算机的NetBIOS名称。
nbtstat -s 显示NetBIOS客户端和服务器会话,尝试将目标IP地址转换为名称。
nbtstat -S 显示NetBIOS客户端和服务器会话,仅按目标IP地址列出远程计算机。
[间隔] 重新显示所选统计信息,暂停每个显示之间的[间隔]秒。按Ctrl + C可停止重新显示统计信息。


↑到命令列表

用netstat

netstat的命令显示在其上执行该计算机上的TCP / IP协议的统计信息和活动连接。当你怀疑有可能是你的电脑未经授权的连接(例如,当一个可能的Netstat是特别有用的恶意软件已经出现感染)。二为流行的图形观众的netstatTCPEyeCurrPorts

Netstat可用于检测可能影响主机的SYN泛洪。如果运行netstat命令(如netstat -n -p TCP)并且在SYN_RECV状态下看到许多连接,则表示发生了一些异常。

不要将此命令与nbtstat混淆

Netstat for Windows

Windows中的标准netstat命令语法是:

netstat [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]

Netstat命令开关(Windows)

描述

netstat的 显示所有出站TCP / IP连接的活动连接。
netstat -a 显示更全面的活动连接列表以及计算机正在侦听端口(包括UDP)。
netstat -b 显示创建每个连接或侦听端口所涉及的可执行文件。
netstat -e 显示以太网相关统计信息。
netstat -f 显示外部地址的完全限定域名(FQDN)。使用此选项,您可以检查您的PC是否连接到可疑网站。
netstat -n 显示活动的TCP连接; 地址和端口号以数字表示; 没有尝试确定主机名。
netstat -o 显示与每个连接关联的拥有进程ID(PID)。您可以使用Windows任务管理器查找PID。
netstat -p [proto]
仅显示某个协议的连接详细信息,其中[proto]可以是TCP,UDP,TCPv6或UDPv6。使用附加-s选项,[proto]可以是IP,IPv6,ICMP,ICMPv6,TCP,TCPv6,UDP或UDPv6。
netstat -r 显示主机的路由表
netstat -s 显示每个协议的统计信息。缺省情况下,显示IP,IPv6,ICMP,ICMPv6,TCP,TCPv6,UDP和UDPv6的统计信息; -p选项可用于指定默认的子集。
netstat -t 显示当前连接卸载状态
[间隔] 指定显示新统计信息之前等待的时间长度(以秒为单位)。


↑到命令列表

Netstat for Linux

需要注意的是netstat的是在Linux中过时了,说明这里

Netstat命令开关(Linux)

描述

netstat -a全部-- 显示侦听和非侦听套接字
netstat -A [家庭]协议= [家庭] --
指定要为其显示连接的地址系列。[family]是逗号分隔的地址族关键字列表,如inet,unix,ipx,ax25,netromddp这与使用--inet,--unix(-x),--ipx,--ax25,--netrom--ddp选项具有相同的效果
netstat -c或者--连续的 配置netstat每秒刷新显示的信息直到停止。
netstat -C 从路由缓存中打印路由信息。
netstat -e--extend 显示更高级别的细节。可以输入两次(作为--ee)以获得最大细节。
netstat -F 从转发信息数据库(FIB打印路由信息
netstat -g-- 显示IPv4和IPv6的组播组成员信息。
netstat -iinterface = [name] -- 显示所有网络接口或指定[名称]的表。
netstat -l -- 仅显示侦听套接字(默认情况下netstat省略)。
netstat -M--伪装 显示伪装连接列表(通过网络地址转换更改的连接)。
netstat -n数字-- 显示数字地址,而不是尝试确定符号主机,端口或用户名(跳过DNS转换)。
netstat --数字主机 显示数字主机地址,但不影响端口或用户名的分辨率。
netstat --数字端口 显示数字端口号但不影响主机或用户名的分辨率。
netstat --数字用户 显示数字用户ID,但不影响主机或端口名称的分辨率。
netstat -N--符号 显示符号主机,端口或用户名,而不是数字表示。Netstat默认执行此操作。
netstat -o--定时器 包括与网络计时器相关的信息。
netstat -p--程序 显示进程ID(PID)和每个套接字所属程序的名称。
netstat -rroute -- 显示内核路由表。
netstat -s统计信息 -- 显示每个协议的摘要统计信息。
netstat -ttcp-- 过滤结果仅显示TCP。
netstat -Tnotrim -- 停止修剪长地址。
netstat -uudp-- 过滤结果仅显示UDP。
netstat -vverbose -- 产生详细输出。
netstat -w--raw 过滤结果显示原始套接字
netstat -Z上下文 -- 如果启用SELinux,打印SELinux上下文。在运行SELinux的主机上,所有进程和文件都以表示安全相关信息的方式进行标记。此信息称为SELinux上下文。


一些常见的netstat命令是:

netstat -natp

netstat -t -listening

netstat -ntu

netstat -anpnetstat -anb在Windows上)

netstat -ntulp

netstat -rne

netstat -anp | grep [port_number]

使用上面的表格可以找出每个命令的作用。

↑到命令列表

Nslookup,Dig和Host

NSlookup(“名称服务器查找”)是一个DNS查询工具。这意味着nslookup通过查询DNS服务器来检查DNS记录,域主机别名,域主机服务和操作系统信息。Nslookup还可用于执行DNS区域传输,在道德黑客攻击期间执行网络足迹时非常有用。它有两种模式:交互式和非交互式。交互模式查询DNS服务器以获取有关各种主机和域的详细信息 非交互模式仅打印主机或域的名称和请求的信息。

虽然在Windows和Linux / Unix上默认仍然可用,但nslookup已被弃用,不鼓励进一步使用。它已经被它的后继者,dig(Domain Information Groper)和主机实用程序所取代nslookup不同,它们在Windows上本机不可用,必须手动安装。Windows PowerShell中有一个主机命令,但这是不同的。您可以安装的Windows版本主机由BIND提取他们的Windows可用这里

Dig基本上是nslookup的改进版本主机可以快速查找DNS服务器信息,用于查找1)给定域名的IP地址和2)给定IP地址的域名。

适用于Windows的Nslookup

Nslookup命令开关(Windows)

描述

C:\> NSLOOKUP 进入互动模式; 提示从C:>更改为>。
C:\> nslookup - [DNSserver] 使用特定DNS服务器进入交互模式。
C:\> nslookup [主机名IP地址] 查询DNS以获取特定主机的IP地址,反之亦然。
C:\> NSLOOKUP [主机名名称IP地址] [的dnsserver] 使用特定DNS服务器查询DNS以获取特定主机的IP地址(反之亦然)。
C:> nslookup -type = [type] 查询特定类型的DNS记录,其中[type]可以是:A,ANY,CNAME,GID,HINFO,MB,MG,MINFO,MR,MX,NS,PTR,SOA,TXT,UID,UINFO,WKS。DNS记录类型在此处此处描述
C:> nslookup -type = MX [ example.com ] 查询域example.com的电子邮件记录
>退出 退出交互模式(返回非交互模式)。
>手指 连接当前计算机上的finger服务器。
>帮助 显示子命令的简短摘要。
> ls [ example.com ] 列出DNS域的信息。
> ls -a [ example.com ] 列出规范名称和别名。
> ls -d [ example.com ] 列出example.com的所有DNS记录可用于在连接到DNS区域的SOA时启动区域传输。可以在服务器的DNS属性中阻止这些传输。
> ls -t [type] [ example.com ] 列出给定RFC记录[类型]的记录(例如,A,CNAME,MX,NS,PTR等)
> lserver 将默认服务器更改为指定的DNS域。
>根 将默认服务器更改为DNS域名空间根目录的服务器。
>服务器 将默认服务器更改为指定的DNS域。
>集 更改影响查找功能的配置设置。
>全部设定 打印配置设置的当前值。
> set class = X. 更改查询类该类指定信息的协议组。
>设置[否] d2 打开或关闭详尽的调试模式。打印每个数据包的所有字段。
>设置[no] debug 打开或关闭调试模式。
>设置[no] defname 将默认DNS域名附加到单个组件查找请求。单个组件是不包含句点的组件。
> set domain = NAME 将默认DNS域名更改为指定的名称。
>设置忽略 忽略数据包截断错误。
>设置ixfrver = X. 用于IXFR传输请求的当前版本。
>设置[no] msxfr 使用MS快速区域传输。
>设置端口 将默认的TCP / UDP DNS名称服务器端口更改为指定的值。
> set querytype = X. 更改查询资源记录类型
>设置[no] recurse 告诉DNS名称服务器查询其他服务器是否没有该信息。
>设置重试= X. 设置重的要数X
> set root = NAME 更改用于查询的根服务器的名称。
>设置[否]搜索 将DNS域名搜索列表中的DNS域名附加到请求,直到收到答复。当set和lookup请求包含至少一个句点但不以尾随句点结束时,这适用。
> set srchlist = N1 [/ N2 / ... / N6] 将默认DNS域名更改为N1和搜索列表。
>设置超时 = X. 更改等待回复请求的初始秒数。
> set type = X. 更改查询资源记录类型
>集 指定在向服务器发送请求时使用或不使用虚拟电路。
>设置视图 对先前的ls子命令或命令的输出进行排序和列出
>视图 对先前的ls子命令或命令的输出进行排序和列出


↑到命令列表

适用于Linux的Nslookup

Linux中的默认nslookup命令语法是:

nslookup [-option] [name | -] [server]

Nslookup命令开关(Linux)

描述

$ nslookup
进入互动模式; 提示从$更改为>。
$ nslookup [主机名IP地址] 查询DNS以获取特定主机的IP地址,反之亦然。
>退出 退出nslookup
>主机[服务器] 如果指定,使用当前默认服务器或使用服务器查找主机的信息如果host是Internet地址且查询类型为APTR,则返回主机的名称。如果host是名称且没有尾随句点,则使用搜索列表来限定名称。
>服务器[域]或lserver [域] 将默认服务器更改为[domain] ; lserver使用初始服务器查找有关的信息[domain],而服务器使用当前的默认服务器。如果找不到权威答案,则返回可能具有答案的服务器的名称。
>集 此命令用于更改影响查找的状态信息。
>全部设定 打印要设置的常用选项的当前值还会打印有关当前默认服务器和主机的信息。
> set class = [value] 将查询类更改为[value]。
> set class = IN 将查询类更改为Internet类。
> set class = CH 将查询类更改为Chaos类
> set class = HS 将查询类更改为Hesiod类
> set class = ANY 将查询类更改为通配符。
>设置调试nodebug 搜索时打开或关闭完整响应数据包和任何中间响应数据包的显示。
(默认= nodebug;缩写= [no] deb)
>设置d2nod2 打开或关闭调试模式。这将显示有关nslookup正在执行的操作的更多信息
(默认= nod2)
> set domain = [name] 将搜索列表设置为[名称] 
>设置搜索鼻子 如果查找请求包含至少一个句点但不以尾随句点结束,则将域搜索列表中的域名附加到请求,直到收到答案。
(默认=搜索)
> set port = [value] 将默认TCP / UDP名称服务器端口更改为[值]
(默认= 53;缩写= po)
> set querytype = [value] 更改信息查询的类型。
(默认= A记录;缩写= q,ty)
> set type = [value] 更改信息查询的类型。
(默认= A记录;缩写= q,ty)
>设置递归不递归 告诉DNS服务器查询其他服务器是否没有该信息。
(默认= recurse;缩写= [no] rec)
>设置重试= [数字] 设置要尝试的重试次数[次数]
> set timeout = [number] 更改等待回复数秒的初始超时间隔。
>设置vcnovc 在向服务器发送请求时始终使用虚拟电路。
(默认= novc)
>设置失败无效 如果DNS服务器以此类响应响应SERVFAIL或引用(nofail)或终止查询(失败),则尝试下一个名称服务器。
(默认= nofail)。


↑到命令列表

你适用于Windows和Linux

标准dig命令语法如下:

dig [@server] [options] [name] [type] [class] [+queryopt...]

挖掘命令开关

描述

显示DNS 根服务器和主机DNS服务器的IP地址。
@[服务器] 要查询的DNS服务器的名称或IP地址。如果没有[服务器] 提供了参数,dig咨询/ etc / resolv.conf并查询那里列出的DNS服务器。响应的DNS服务器的回复显示在命令输出中。
[name] 要查询的域名。
[类型] 指示需要哪种类型的查询,例如ANY,A,MX,SIG等。 如果未提供[type]参数,dig将执行A记录的查找。
dig -b [地址] 将DNS查询的源IP地址设置为[address]这必须是主机网络接口之一或“0.0.0.0”或“::”上的有效地址。可以通过附加“#<port>”来指定可选端口。
你-c [班级] 设置查询[class](在上面nslookup for Linux选项中描述)。默认为IN(Internet)。
dig -f [filename] 配置dig以处理指定文件中的查找请求列表。
你-h 打印dig的命令行参数和选项的简短摘要
dig-k [TSIG_key_file] 使用事务签名(TSIG签署dig发送的DNS查询及其响应
挖-m 启用内存使用调试。
你-p [portnumber] 配置的端口号查询。当然,DNS的默认端口为53。
dig -q [name] 将查询名称设置为指定[name]参数值。
你-t [类型] 设置要执行的查询[类型]默认为A.
你-x [addr] 用于反向查找(IP地址到主机名,而不是反之亦然)。
dig -y [hmac:] name:key] 通过在命令行上指定TSIG密钥本身来签署DNS查询。hmac是TSIG的类型,默认HMAC-MD5,[name]是TSIG密钥的名称,[key]是实际密钥。密钥是base-64编码的字符串,通常由dnssec-keygen生成
挖+ aaflag+ noa flag 一种用于同义词+ [无] aaonly
挖+ aaonly+ noaaonly 设置或删除查询中的“aa”标志。
你+额外+无附加条件 显示或不显示回复的附加部分。默认是显示它。
挖+旗+旗
设置或删除查询中的AD(经过身份验证的数据)位这要求DNS服务器根据服务器的安全策略返回是否所有答案和权限部分都已被验证为安全。AD = 1表示所有记录都已经过验证,并且答案不是来自OPT-OUT范围。AD = 0表示答案的某些部分是不安全或未经验证的。
挖+全部+全部
设置或清除所有显示标志。
挖掘+回答+ noanswer 显示或不显示回复的答案部分。默认是显示它。
挖掘+权威+无权 显示或不显示回复的权限部分。默认是显示它。
你+ bestfort+ nobleffort 尝试显示格式错误的邮件内容。默认设置是不显示格式错误的答案。
dig + bufsize = [B] 将使用EDNS0通告的UDP消息缓冲区大小设置为[B]字节。该缓冲区的最大和最小大小分别为65535和0。超出此范围的值会适当地向上或向下舍入。除零以外的值将导致发送EDNS查询。
dig + edns =#+节点 指定要查询的EDN​​S版本。有效值为0到255.设置EDNS版本将导致发送EDNS查询。+ noedns清除了记忆中的EDNS版本。
dig + cdflag+ nocdflag
设置或删除查询中的CD(禁用检查)位这要求服务器不执行响应的DNSSEC验证。
dig + cl+ nocl 打印记录时显示或不显示CLASS。
dig + cmd+ nocmd 切换或取消在输出中打印初始注释,以标识dig的版本和已应用的查询选项。默认情况下会打印此评论。
挖掘+评论+ nocomments 切换或取消输出中注释行的显示。默认是打印注释。
dig + defname+ nodefname 不推荐使用; 被视为+ [no]搜索的同义词
挖掘+域名= [somename] 将搜索列表设置为包含单个域[somename],就像在/ etc / resolv.conf中的domain指令中指定的那样,并启用搜索列表处理,就像给出了+ search选项一样。
dig + dnssec+ nodnssec 通过在查询的附加部分中的OPT记录设置DNSSEC OK位(DO)来请求发送或不发送DNSSEC记录
挖掘+失败+ nofail 如果您收到SERVFAIL,请尝试或不尝试下一个服务器。默认情况下不尝试下一个与正常存根解析器行为相反的服务器。
挖掘+识别+ noidentify
显示或不显示启用+ short选项时提供答案的IP地址和端口号如果请求短格式答案,则默认不显示提供答案的服务器的源地址和端口号。
挖+忽略+ noignore 忽略或不忽略UDP响应中的截断,而不是使用TCP重试。默认情况下,执行TCP重试。
挖+多线多线 打印或不打印具有人类可读注释的详细多行格式的SOA记录等记录。默认是在一行上打印每条记录,以便于机器解析挖掘输出。
挖+ ndots = [D] 将名称中必须出现的点数设置为[D],以使其被视为绝对值。默认值是使用/ etc / resolv.conf中的ndots语句定义的值,如果不存在ndots语句,则为1。具有较少点的名称将被解释为相对名称,并将在/ etc / resolv.conf中的search或domain指令中列出的域中进行搜索
dig + nsid+ nonsid
发送查询时包括或排除EDNS名称服务器ID请求。
挖掘+ nssearch+ nonssearch
设置此选项后,dig尝试1)找到包含要查找的名称的区域的权威名称服务器,以及2)显示每个名称服务器对该区域具有的SOA记录。
挖+ onesoa+ noonesoa
执行AXFR时仅打印一个(启动)SOA记录默认设置是打印起始和结束SOA记录。
dig + qr+ noqr
在发送时打印或不打印查询。默认情况下,不会打印查询。
挖掘+问题+问题
返回答案时打印或不打印查询的问题部分。默认设置是将问题部分打印为注释。
挖掘+重试= [T] 将重置UDP查询到服务器的次数设置为[T]而不是默认值2.与+尝试不同,这不包括初始查询。
挖掘+搜索+ nosearch
使用或不使用resolv.conf中 searchlist或domain指令定义的搜索列表(如果有)。默认情况下不使用搜索列表。
挖+短+ noshort
提供或不提供简洁(简短)的答案。默认设置是以详细形式打印答案。
挖掘+ showsearch+ noshowsearch 执行或不执行显示中间结果的搜索。
挖掘+ sigchase+ nosigchase
追逐或不追逐DNSSEC签名链。需要使用-DDIG_SIGCHASE编译dig。
挖掘+统计+ nostats
此查询选项可切换或取消监视统计信息的打印; 即,在进行查询时,回复的大小,等等。默认行为是打印查询统计信息。
dig + tcp+ notcp
查询名称服务器时使用或不使用TCP。除非请求AXFR(完整)或IXFR(增量)查询,否则默认行为是使用UDP ,在这种情况下使用TCP连接。
你+时间= [T] 将查询的超时设置为[T]秒。默认超时为5秒。尝试将[T]设置为小于1将导致应用1秒的查询超时。
挖+ ttlid+ nottlid
打印记录时显示或不显示TTL。
你+自上而下+ notopdown
追逐DNSSEC签名链时,执行或不执行自上而下的验证需要使用-DDIG_SIGCHASE编译dig。
挖掘+追踪+ notrace
从正在查找的名称的根名称服务器切换或取消跟踪委派路径的跟踪。默认情况下禁用跟踪。启用跟踪时,dig会进行迭代查询以解析要查找的名称。它将跟随根服务器的引用,显示用于解析查找的每个服务器的答案
挖掘+尝试= [T] 将尝试UDP查询到服务器的次数设置为[T]而不是默认值3.如果[T]小于或等于零,则尝试次数将自动向上舍入为1。
你+ trusted-key = #### 指定包含要与+ sigchase一起使用的可信密钥的文件每个DNSKEY记录必须在它自己的行上。如果未指定,dig在当前目录中查找/ etc / trusted-key.key,然后查找trusted-key.key需要挖掘与-DDIG_SIGCHASE进行编译。
dig + vc+ novc
查询名称服务器时使用或不使用TCP。提供+ [no] tcp的替代语法是为了向后兼容。“vc”代表虚电路。


以下是使用dig的一些示例命令

仅显示域的IP地址:

dig http://www.kernel.org +short

显示域的电子邮件服务器:

dig kernel.org MX +noall

显示domains.txt中列出的所有域的所有可用数据

dig -f domains.txt ALL +noall +answer

尝试从指定的域转移区域:

dig kernel.org AXFR

↑到命令列表

适用于Windows和Linux的主机

标准主机命令语法如下:

host [-aCdlnrsTwv] [-c class] [-N ndots] [-R number] [-t type] [-W wait] [-m flag] [-4] [-6] {name} [server]

主机命令切换

描述

主持人-a 相当于设置-v选项并要求主机查询[type] ANY。
主机-c [类] 指定DNS查询类(在上面nslookup for Linux选项中描述)。默认为IN(Internet)。
主持人-C [zone_name] 尝试从该区域的所有列出的权威名称服务器显示[zone_name]的SOA记录名称服务器列表由为区域找到的NS记录定义。
主机-d-v 启用详细输出。
主持人-i 指定IPv6地址的反向查找应使用RFC 1886中定义的IP6.INT域默认是使用IP6.ARPA。
主机-l [zone_name] 启用列表模式,使主机[zone_name]执行区域传输将区域打印传输出NS,PTR和地址记录(A / AAAA)。如果与-a结合使用,将打印所有记录。
主机-m [zone_name] 用于设置内存使用情况调试标志[record][usage][trace]
主机-N [名称] 设置必须在名称中的点数,以使其被视为绝对值。默认值是使用/ etc / resolv.conf中ndots语句定义的值,如果不存在ndots语句,则为具有较少点的名称将被解释为相对名称,并将/ etc / resolv.conf中的searchdomain指令中列出的域中进行搜索
主机-r [名称] 指定非递归查询。设置此选项会清除主机发出的查询中的RD(所需的递归)位这应该意味着接收查询的名称服务器不会尝试解析[name]-r选项使主机通过使非递归查询并期望获得答案,那些通常转介到其他DNS服务器查询,以模仿DNS服务器的行为。
主机-R [编号] 更改查找的UDP重试次数。
主机-s 用于设置内存使用情况调试标志[record][usage][trace]
主机-t [类型] 选择DNS查询类型,其中[type]可以是CNAME,NS,SOA,SIG,KEY,AXFR等。如果未指定查询[type],则host会自动选择适当的查询类型。默认情况下,它会查找A,AAAA和MX记录,但如果给出-C选项,则会对SOA记录进行查询,如果[name]是点分十进制IPv4地址或冒号分隔的IPv6地址,主机将查询PTR记录。
主持人-T 在查询DNS服务器时使主机使用TCP连接。
主持人-w 配置主机有效地等待回复。
主持人-W [等待] 使主机等待[等待]秒。
主持人-4 强制主机仅使用IPv4查询传输。
主持人-6 强制主机仅使用IPv6查询传输。


↑到命令列表

PathPing的

PathPing是一个Windows实用程序,它结合了pingtracert的功能PathPing在一段时间内到达目的地的路径上向每个路由器(跳)发送数据包,然后计算丢失的数据包和每个跳的性能统计信息。与tracert一样,PathPing可以识别有问题的网络主机。目的地可以通过DNS名称或IP地址指定。

您可以在此处从TechRepublic下载整洁的小型PathPing桌面小工具(适用于Windows Vista或7)您必须将PathPing.zip文件重命名为PathPing.gadget。

Windows 7显然不再支持两个PathPing开关:-R(RSVP测试)和-T(第二层标签)。

路径选项(仅限Windows)

标准PathPing命令语法是:

pathping [-g host-list] [-h max_hops] [-i address] [-n] [-p period] [-q num_queries] [-w timeout] [-4] [-6] target_name

PathPing命令切换

描述

路径-g 沿主机列表的源路由松散。
路径-h [编号]
搜索目标的最大跳数[number]
路径-i [地址]
使用指定的源[地址]
路径-n 不要将地址解析为主机名。
pathping -p [毫秒] ping之间等待[毫秒]
路径-q [编号]
每跳查询的[数量]
路径-w [毫秒]
每个回复等待超时[毫秒]
路径-4 强制使用IPv4。
路径-6 强制使用IPv4。


↑到命令列表

Ping

所述(数据包互联网探索)指令可以说是最有用的网络故障排除实用程序; 它绝对是最简单和最常用的。Ping测试IP网络上主机的在线状态,并测量从源主机发送到目标主机并返回的数据包的总往返时间(以毫秒为单位)。Ping通过发送Internet控制消息协议(ICMP)数据包(通常)来完成此操作。ICMP是一种与IP协同工作以提供错误检查和报告功能的协议。Ping将ICMP 回送请求发送到远程主机。如果主机能够响应,它将回复echo回复

当您ping目标名称时,回复将告诉您主机的IP地址,发送的字节数,往返时间以及数据包的生存时间(TTL)。当您ping目标IP地址时,它会响应除主机名之外的所有内容(除非您提供-a开关)。Ping不只是测试连接 - 它还可以验证TCP / IP是否已正确安装以及DNS名称解析是否正常工作(请参阅此博客文章的第1部分)。

标准ICMP ping不使用端口号或使用TCP或UDP; ICMP是第3层(网络层)协议。TCP和UDP在第4层(传输层)运行。

命令可以在各种服务攻击,如拒绝的被滥用死亡之PingSmurf攻击,和平安的洪水但是,ICMP提供的功能不仅仅是启用ping请求和回复。ICMP在其他几种方面对于正确的IP功能(例如MTU发现,无法访问的通知等)非常重要,因此不建议完全禁用它。

Ping for Windows

在Windows中,ping命令遵循以下标准语法:

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] [-4] [-6] target_name

Ping命令开关(Windows)

描述

ping -a 指定对目标IP地址执行反向名称解析。
ping -f 指定发送Echo Request消息时,IP标头中的“Do not Fragment”标志设置为1(仅在IPv4上可用)。
ping -i [TTL] 指定发送的Echo Request消息的IP头中的TTL字段的值。默认值是主机的默认TTL值。最大[TTL]为255。
ping -j [hostlist] 指定Echo Request消息使用IP头中的Loose Source Route选项与[HostList]中指定的中间目标集合(仅在IPv4上可用)。对于松散的源路由,连续的中间目标可以由一个或多个路由器分隔。主机列表中的最大地址或名称数为9.主机列表是由空格分隔的一系列IP地址(点分十进制表示法)。
ping -k [hostlist] 指定Echo Request消息使用IP头中的Strict Source Route选项与[HostList]中指定的中间目标集合(仅在IPv4上可用)。通过严格的源路由,下一个中间目的地必须可以直接到达(它必须是路由器接口上的邻居)。主机列表中的最大地址或名称数为9.主机列表是由空格分隔的一系列IP地址(点分十进制表示法)。
ping -l [size] 指定发送的Echo Request消息中数据字段的长度(以字节为单位)。默认大小为32.最大大小为65,527。
ping -n [count] 指定发送的Echo Request消息的数量。默认值为4。
ping -r [count] 指定IP头中的Record Route选项用于记录Echo Request消息和相应的Echo Reply消息所采用的路径(仅在IPv4上可用)。路径中的每个跃点都使用“记录路由”选项中的条目。如果可能,请指定[count]等于或大于源和目标之间的跃点数。[count]必须至少为1,最多为9。
ping -R 指定跟踪往返路径(仅限IPv6)。
ping -s [count] 指定IP标头中的Internet Timestamp选项用于记录Echo Request消息的到达时间以及每个跃点的相应Echo Reply消息。[count]必须至少为1且最大为4.这是链路本地目标地址所必需的。
ping -S [SrcAddr]
指定要使用的源地址(仅限IPv6)。
ping -t 指定ping继续向目标发送Echo Request消息,直到被中断为止。要中断和显示统计信息,请按CTRL + BREAK。要中断并退出ping,请按CTRL + C.
ping -v [ToS] 指定发送的Echo Request消息的IP头中的服务类型 [ToS]字段的值(仅在IPv4上可用)。默认值为0. [ToS]指定为0到255之间的十进制值。
ping -w [超时] 指定等待与要接收的给定Echo Request消息对应的Echo Reply消息的时间量(以毫秒为单位)。如果在超时内未收到Echo Reply消息,则会显示“请求超时”错误消息。默认[超时]为4000(4秒)。
ping -4 指定IPv4用于ping。使用IPv4地址标识目标主机不需要此参数。只需要按名称标识目标主机。
ping -6 指定IPv6用于ping。使用IPv6地址标识目标主机不需要此参数。只需要按名称标识目标主机。


↑到命令列表

Ping for Linux

Ping命令开关(Linux)

描述

ping -a
听得见。
ping -A 自适应ping(interpacket间隔适应往返时间)。
ping -b
用于ping广播地址。
ping -B 不允许ping更改探测的源地址。该地址绑定到ping启动时选择的地址
ping -c [count] [截止日期] 发送[count] ECHO_REQUEST数据包后停止使用[deadline]选项,ping等待[count] ECHO_REPLY数据包,直到超时到期。
ping -d 在正在使用的套接字上设置SO_DEBUG选项。本质上,Linux内核不使用此套接字选项。
ping -D 在每行之前打印时间戳(Unix时间+微秒,如在gettimeofday中)。
ping -f 对于发送的每个ECHO_REQUEST,打印一个句点(。),而对于收到的每个ECHO_REPLY,打印一个退格。这样可以快速显示丢弃的数据包数量。
ping -F 仅适用于ping6在ECHO_REQUEST数据包上分配和设置20位流标签。如果值为零,则内核分配随机流标签。
ping -i [interval] 发送每个数据包之间等待[interval]秒。默认是在每个数据包正常之间等待一秒,或者不在泛洪模式下等待(-f)。
ping -I [界面] 将源地址设置为指定的接口,无论是数字IP地址还是设备名称。ping IPv6链路本地地址时,此选项是必需的。
ping -l [preload] 发送[预加载]数据包,不等待回复。只有超级用户可以选择超过3 [预加载]
ping -L 抑制组播数据包的环回(仅当ping目的地是组播地址时才适用)。
ping -m 使用[mark]标记出去的数据包。
ping -M [提示] 选择路径MTU发现策略[提示]可以是(禁止碎裂,甚至当地的一个),希望(做PMTU发现,片段局部当分组大小为大),或不要(不设置DF标志)。
ping -n 仅指定数字输出。不会尝试查找IP地址的符号名称。
ping - > N. 发送ICMPv6节点信息查询(RFC 4620),而不是Echo Request。
ping -p [pattern] 指定最多16个填充字节(十六进制)以填写您发送的数据包。例如,-p ff将导致发送的数据包被所有的数据包填充。
ping -q 安静的输出。除命令启动时的摘要行和完成时,不显示任何内容。
ping -Q [tos] 设置ICMP数据报中与服务质量相关的位。[Tos]可以是十进制数或十六进制数。
ping -r 绕过正常的路由表并直接发送到连接接口上的主机。如果主机不在直接连接的网络上,则会返回错误。
ping -R 记录路线。包含ECHO_REQUEST数据包中的RECORD_ROUTE选项,并在返回的数据包上显示路由缓冲区。请注意,IP标头仅足以容纳9条此类路由。许多主机忽略或放弃此选项。
ping -s [packet_size] 指定要发送的数据字节数。默认值为56,当与8字节的ICMP头数据组合时,转换为64个ICMP数据字节。
ping -S [sndbuf] 设置套接字发送缓冲区。如果未指定,则选择缓冲不超过一个数据包。
ping -t [TTL] 将IP TTL设置为[TTL]秒。
ping -T [timestamp] [opt] 设置特殊的IP时间戳选项。[Timestamp]选项可以是tsonly(仅时间戳),tsandaddr(时间戳和地址)或tsprespec host1 ...
ping -U 打印完整的用户到用户延迟(旧行为)。
ping -v 详细命令输出。
ping -V 显示版本和退出。
ping -w [截止日期] 指定ping退出之前的截止时间(或超时),以秒为单位,无论已发送或接收了多少数据包。
ping -W [超时] 等待响应的时间,以秒为单位。该选项仅影响任何响应的超时,否则ping等待两个RTT


↑到命令列表

路线

Route可以操作和查看计算机的路由表。换句话说,它允许您在路由表中添加或删除条目。

适用于Windows的路由

在Windows中,route命令遵循以下语法:

route [-f] [-p] [-4 or -6][Command [Destination] [mask] [Gateway] [<metric]] [if]]

路由命令开关(Windows)

描述

路线-f 清除所有网关条目的路由表。如果与其中一个命令一起使用,则在运行命令之前清除表。
路线-p
与ADD命令一起使用时,使路径在系统的引导之间保持不变。默认情况下,重新启动系统时不会保留路由。
路线-4
强制使用IPv4。
路线-6
强制使用IPv6。
路线ADD 添加路线。
路线改变 修改现有路线。
路线DELETE 删除路线。
路线PRINT 打印路线


添加到目的地10.41.0.0的持久路由,子网掩码为255.255.0.0,下一跳地址为10.27.0.1:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

↑到命令列表

Linux的路线

Linux中的标准路由命令语法如下:

route [options] [add or del] [-net or -host] address [modifiers]

请注意,路线已被弃用,描述在这里

路由命令开关(Linux)

描述

路线 显示主机的路由表。
route -A [family] [add] or route --[family] [add]
使用adddel指定的地址族有效系列是inet(DARPA Internet),inet6(IPv6),ax25(AMPRAX.25),netrom(AMPR NET / ROM),ipx(Novell IPX),ddp(Appletalk DDP)和x25(CCITT X.25) 。
道路-C缓存 -- 在内核的路由缓存而不是转发信息库(FIB)路由表上运行。
route -e-ee 使用netstat -r格式显示路由表。-ee将生成一个包含路由表中所有参数的非常长的行。
路线-Ffib -- 在内核的转发信息库(FIB)路由表上运行(默认行为)。
路线-h帮助 -- 打印帮助信息。
路线-n 显示数字IP地址和旁路主机名称解析。
route -vverbose -- 启用详细命令输出。
路线-V版本 -- 支持net-toolsroute命令的版本。
route adddel 在路由表中添加或删除路由。
route [add or del] dev [interface] 将路由与特定设备关联。如果dev [interface]是命令行中的最后一个选项,则可以省略单词dev
路线[添加删除] [默认]我[我] 通过指定的网关路由数据包。
route [add or del] -host 指定目标是主机(不是网络)。
路线[add or del] -irtt [I] 将此路由上TCP连接的初始往返时间(IRTT)设置为[I]毫秒(1-12000)。这通常仅用于AX.25网络。如果省略,则使用RFC 1122默认值300ms。
route [add or del] -net 指定目标是网络(不是主机)。
route [add or del] [-host或-net] netmask [mask] 设置子网[掩码]
route [add or del] metric [n] 将路由表中的度量标准字段(由路由守护程序使用)设置为[n]的值
route [adddel] mod,dynrestore 安装动态或修改的路线。这些标志用于诊断目的,通常仅通过路由守护进程设置。
路线[添加del] mss [bytes] 将此路由上的连接的TCP最大段大小(MSS)设置为指定[字节数]
route [adddel] reject 安装阻塞路由,这将强制路由查找失败。这用于在使用默认路由之前屏蔽网络。这不是为了提供防火墙功能。
route [add or del] window [W] 将此路由上的连接TCP窗口大小设置[W]字节的值这通常仅用于AX.25网络,并且驱动程序无法处理背对背帧。


这些示例应阐明route命令的语法

添加正常的环回条目,使用网络掩码255.0.0.0(A类网络,从目标地址确定)并与“lo”设备关联(假设此设备先前已使用ifconfig正确设置):

route add -net 127.0.0.0

通过“eth0”添加到网络192.56.76.x的路由。这里不需要C类网络掩码修饰符,因为192. *是C类IP地址。这里可以省略“dev”这个词:

route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0

添加默认路由(如果没有其他路由匹配,将使用该路由)。对于接口eth0,使用此路由的所有数据包将通过192.168.100.1进行网关这里可以省略“dev”一词。

route add default gw 192.168.100.1 dev eth0

↑到命令列表

远程登录

Telnet是一种网络协议,允许远程主机上的连接和用户会话。它被称为“终端模拟器”,因为它允许您在远程主机上工作,就像您坐在它前面并使用它的显示器,键盘和鼠标一样。计算机终端被定义为“用于将数据输入计算机或计算系统并从计算机或计算系统显示数据的电子或机电硬件设备。”上述输入和输出设备创建终端环境,telnet允许您模仿另一台计算机上的环境(在远程主机上也称为“获取shell”)。

任何值得他信赖的信息安全专业人员都会告诉您不建议使用telnet,因为所有登录,密码和命令都以明文形式传输。攻击者可能会窃听telnet会话并获取其他用户的凭据和敏感数据。安全外壳(SSH)协议已经有效地替换的telnet; 但是,在封闭的受限网络中,攻击者无法执行数据包嗅探,可以使用telnet。您仍然应该努力进行telnet并将其替换为SSH,因为它是一个非常重要且有用的协议。

据推测,页面列出了您可以连接并练习的免费telnet服务器。

通过运行telnet连接到主机上的开放端口,您可以查看显示哪些服务正在这些特定端口上应答的横幅。许多电子邮件,FTP和Web服务器将使用其电子邮件,FTP和Web软件(如Exchange,IIS等)的名称和版本来响应telnet连接请求。如果要获取Web服务器的标题,请键入:

telnet <IPaddress> 80
HEAD/HTTP/1.0

默认情况下,Windows Vista,7或2008上未安装Telnet。要了解如何在这些操作系统上运行telnet,请使用TechNet上的说明

Telnet for Windows

Windows中的标准telnet命令语法是:

telnet [-a][-eescape_char][-flog_file][-luser_name][-tterm]host [port]

(其中host指定要与其创建telnet连接的主机的NetBIOS名称,完全限定的域名或IP地址,port指定要在其上创建telnet连接TCP端口。默认的telnet端口为23)。

Telnet命令开关(Windows)

描述

telnet [ servername] [portnumber] 启动telnet客户端并尝试[portnumber]启动与[servername]的会话如果未提供[portnumber],则使用默认端口23。
telnet -a
指示telnet.exe使用当前登录到客户端的用户的凭据登录主机。
telnet -e [escape_char] 指定转义字符,显示telnet命令提示符。默认转义字符是Ctrl +]。
telnet -f [log_file] 创建客户端日志文件并打开当前会话的客户端日志记录。[LOG_FILE]参数必须由路径和文件名。
telnet -l [user_name] 指示telnet.exe使用[user_name]中指定的用户帐户登录主机[user_name]中指定的用户帐户必须具有主机上的Telnet登录权限。
telnet -t [term] 指定终端类型。默认终端类型是ANSI。其他有效的终端类型包括VT52,VT100和VTNT。
关闭c 关闭现有的Telnet连接。
显示 使用显示命令来查看当前设置Telnet客户端。显示命令列出当前运行参数。如果您在telnet会话中(连接到telnet服务器),要修改参数,请按CTRL +]。这逃脱了telnet会话。(要返回Telnet会话,请按ENTER键。)
显示WILL AUTH 启用NTLM身份验证。
显示WONT AUTH 表示已禁用NTLM身份验证,并且将以纯文本格式发送用户标识和密码。
显示WILL TERM TYPE  
显示WONT TERM TYPE  
显示LOCALECHO关闭  
显示LOCALECHO关闭  
输入 转到已连接的会话(如果存在)。
开放o 与主机或远程服务器建立Telnet连接。例如,telnet.org 44将尝试使用端口44 将您的计算机连接到telnet.org
退出q 退出telnet。
发送 将命令发送到telnet服务器。
发送ao 中止输出命令。
发送ayt “你在吗?”命令。
发送brk 发送中断信号。
发送esc 发送当前转义字符。
发送ip 中断当前流程。
发送同步 执行telnet同步操作。
设置连接的终端类型,打开本地回显,将身份验证设置为NTLM,设置转义字符,并设置日志记录。
设置bsasdel 退格将作为删除发送。
设置crlf 设置换行模式; 导致RETURN键发送回车和换行的组合:0x0D,0x0A。关闭时,它仅发送回车符0x0D。
设置delasbs 删除将作为退格发送。
设置转义[字符] 指定将从telnet会话模式切换到telnet命令模式[character]在telnet命令模式下,按ENTER返回到telnet会话模式。
设置localecho 打开本地回声。键入的所有字符都将显示在本地控制台上。远程Telnet服务器通常会发送每个键入的字符,因此设置此选项可能会导致为每个键入的字符显示重复的字符。
设置日志文件[名称] 指定为此会话写入telnet日志的文件[名称]如果未指定文件的路径,则会在当前目录中创建该路径。指定日志文件也会打开日志记录。日志文件必须位于本地计算机上。
设置记录 打开此会话的日志记录。如果未设置日志文件,则会显示错误消息。
设置模式{console | 流} 将操作模式从控制台模式更改为流模式。将模式设置为流将关闭ANSI或其他尝试控制光标放置或清除屏幕的转义命令。将模式设置为控制台会导致Telnet服务器包含ANSI或其他转义命令,以控制x行和y列的固定窗口内的游标定位。当您不希望Telnet客户端模拟终端时,流模式很有用。发送输出就像没有带有x行和y列的终端窗口一样。启用控制台模式时,某些使用telnet进行文件传输的应用程序无法正常工作。
设置ntlm 打开NTLM身份验证。
设定期限{ansi | vt100 | vt52 | VTNT} 指定您希望telnet客户端模拟的终端类型。如果您正在运行普通的命令行应用程序,则应使用VT100终端类型。
状态 确定运行telnet客户端的计算机是否已连接。
未设置 关闭先前使用set命令设置的选项


↑到命令列表

用于Linux的Telnet

Linux中的标准telnet命令语法是:

telnet [-l user] [-a] host-name [port]
telnet [-8EFKLacdfrx] [-X authtype] [-b hostalias] [-e escapechar] [-k realm] [-l user] [-n tracefile] [host [port]]

Telnet命令开关(Linux)

描述

远程登录 进入telnet命令模式(提示变为telnet>)。
telnet -a 尝试自动登录远程主机。
telnet -b [hostalias] 使用bind将本地套接字绑定到别名地址(请参阅ifconfig --别名)或绑定不同于connect选择的接口的地址
telnet -c 禁用读取用户的.telnetrc文件。.telnetrc文件包含telnet会话的设置信息。它是主目录中的隐藏文件,必须由登录用户读取。
telnet -d 在套接字级别启用调试。
telnet -e [escape_char] 将初始telnet转义字符设置为[escapechar]如果省略[escapechar],则不会有转义字符。
telnet -E 停止将任何字符识别为转义字符。
telnet -f 如果正在使用Kerberos V5身份验证,则允许将本地凭据转发到远程主机。
telnet -F 如果正在使用Kerberos V5身份验证,则允许将本地凭据转发到远程主机,包括已转发到本地环境的任何凭据。
telnet -k [realm] 如果正在使用Kerberos身份验证,则telnet会在realm [realm]中获取远程主机的票证而不是远程主机的域。
telnet -K 阻止自动登录远程主机。
telnet -l [用户] 连接到远程主机时,如果远程主机了解ENVIRON选项,则[user]将作为变量USER的值发送。此选项隐含-a选项,也可以与open命令一起使用
telnet -L 指定输出上的8位数据路径。这会导致在输出时协商BINARY选项。
telnet -n [trace_file] 打开[trace_file]以记录跟踪信息。
telnet -r 指定与rlogin类似的用户界面在此模式下,转义字符设置为波形符(〜)字符,除非通过-e选项进行修改
telnet -x 如果可能,启用数据流加密。
telnet -X [auth_type]
禁用[auth_type]类型的身份验证。
telnet>关闭 结束会话并关闭当前连接。
telnet>显示 显示telnet操作参数。
telnet>关于 更改环境变量。可能性包括:

define
:定义环境变量。
export:标记自动导出的环境变量。
list:列出当前环境变量。
send:发送环境变量。
undefine:取消定义环境变量。
unexport:不标记环境变量以进行自动导出。
:打印帮助信息。
telnet>注销 强制注销远程用户并关闭连接。
telnet>时尚[时尚] 尝试进入行模式或字符模式,其中[mode]是以下之一:

character:禁用LINEMODE选项(或禁用过时的逐行模式)。
line:启用LINEMODE选项(或启用过时的逐行模式)。这两个需要启用LINEMODE选项。
isig:启用信号捕获。
-isig:禁用信号捕获。
编辑:启用角色编辑。
-edit:禁用字符编辑。
softtabs:启用标签扩展。
-softtabs:禁用字符编辑
litecho:启用文字字符回显。
-litecho:禁用文字字符回显。
:打印帮助信息。
telnet>打开[port]
连接到主机。
telnet>退出 退出telnet。
telnet>发送 传输如下定义的特殊字符。

abort:发送Telnet'Abort Process'。
ao
:发送Telnet Abort输出。
ayt:发送Telnet“Are You There”。
brk:发送Telnet Break。
ec:发送Telnet擦除字符。
el:发送Telnet Erase Line。
eof:发送Telnet文件结束字符。
eor:发送Telnet'记录结束'。
escape:发送当前转义字符。
ga:发送Telnet“Go Ahead”序列。
getstatus:发送STATUS请求。
ip:发送Telnet中断进程。
nop:发送Telnet'无操作'。
susp:发送Telnet'暂停进程'。
同步:执行Telnet“同步操作”。
:显示发送选项。
telnet>设置 如下所述设置操作参数。

debug
:启用调试。
echo:用于切换本地回显开/关的字符。
escape:转义回telnet命令模式的字符。
netdata:允许打印十六进制网络数据(调试)。
options:允许查看选项处理(调试)。
prettydump:使“netdata”输出为用户可读格式(调试)。
rlogin:rlogin转义字符。
termdata:启用(调试)十六进制终端数据的切换打印。
tracefile:要写入跟踪信息的文件。
:显示帮助信息。

下面需要“localchars”被切换“真”: 

eof:导致EOF的角色。
flushoutput:导致中止输出的字符。
中断:导致中断进程的字符。
退出:导致中止进程的字符。

以下是在linemode中进行本地编辑:

autoflush
:发送中断字符时可以刷新输出。
autosynch
:启用紧急模式下的中断字符自动发送。
CRLF:使得能够发送回车作为远程登录<CR> <LF> 
crmod:使接收到的回车的映射。
抹去:用于擦除字符的字符。
forw1:备用行尾字符。
forw2:备用行尾字符。
inbinary:允许接收二进制数据。
kill:用于擦除一行的字符。
lnext:下一个用于文字的字符。
localchars:允许本地识别某些控制字符。
outbinary:允许发送二进制数据。
转载:用于行重印的字符。
start:用于XON的字符。
stop:用于XOFF的字符。
skiprc:启用不读取〜/ .telnetrc文件。
停赛:导致暂停进程的字符。
worderase:用于删除单词的字符。
telnet> slc 改变特殊字符的状态如下:

检查
:验证远程特殊字符定义。
export:使用本地特殊字符定义。
import:使用远程特殊字符定义。
:打印帮助信息。
telnet>状态 打印连接状态信息。
telnet>切换 切换操作参数如下:

autoflush:发送中断字符时切换输出的刷新。
autosynch:在紧急模式下切换自动发送中断字符。
二进制:切换二进制数据的发送和接收。
crlf:切换发送回车为telnet <CR> <LF>。
crmod:收到回车的切换映射。
debug:切换调试。
inbinary:切换接收二进制数据。
localchars:切换某些控制字符的本地识别。
netdata:十六进制网络数据的切换打印(调试)。
选项:切换查看选项处理(调试)。
outbinary:切换二进制数据的发送。
prettydump:将“netdata”的输出切换为用户可读格式(调试)。
skiprc:toggle不读〜/ .telnetrc文件。
termdata:切换(调试)十六进制终端数据的切换打印。
telnet>未设置 取消操作参数; telnet> set相反
telnet> z 暂停telnet会话。
telnet>! 调用子shell。
telnet>? 打印帮助信息。


↑到命令列表

Traceroute和Tracert

TracerouteWindows中的tracert)是一种网络诊断工具,用于显示数据包的路径(路径)并测量其在IP网络上的传输延迟。Traceroute通过增加TTL来工作发送的每个连续数据包的值。第一组数据包的跳数限制值为1,因此它们不会被第一个路由器转发。下一组的跳数限制值为2,因此第二个路由器将发送错误回复。这将一直持续到目标主机收到数据包并返回ICMP Echo Reply消息。换句话说,每个数据包上的TTL值在每个跃点到达后递增1。然后数据包返回,确保响应从该跳显式返回(它的名称和IP地址也会显示)。Traceroute使用返回的ICMP消息生成数据包已遍历的路由器列表。沿路径返回的每个路由器的时间戳值是每个数据包以毫秒为单位测量的延迟(延迟)值。

跟踪路由/ tracert的工具将超时(由星号在命令输出表示),当它遇到防火墙或包过滤路由器。

Linux和Unix中的Traceroute默认使用UDP,而Windows中的tracert使用ICMP。

如果您想尝试traceroute / tracert的图形前端,可以尝试MTR和WinMTR

Tracert选项(仅限Windows)

标准tracert命令语法是:

tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

Tracert命令切换

描述

tracert [目的地] 跟踪指向[destination]的主机或IP地址的路径
tracert -d 阻止tracert尝试将中间路由器的IP地址解析为其名称(这可以加快tracert结果的显示)。
tracert -h [MaxHops] 指定搜索目标(目标)的路径中的最大跃点数。默认值为30跳。
tracert -j [HostList] 指定Echo Request消息使用IP头中的Loose Source Route选项和[HostList]中指定的中间目标集合对于松散的源路由,连续的中间目标可以由一个或多个路由器分隔。主机列表中的最大地址或名称数为9. [HostList]是一系列以空格分隔的IP地址(点分十进制表示法)。
tracert -w [timeout] 指定等待接收给定Echo Request消息对应的ICMP Time Exceeded或Echo Reply消息的时间量(以毫秒为单位)。如果未在超时范围内收到,则会显示星号(*)。默认超时为4000(4秒)。
tracert -R 跟踪往返路径(仅限IPv6)。
tracert -S [srcaddr] 要使用的源地址(仅限IPv6)。
tracert -4 强制使用IPv4。
tracert -6 强制使用IPv6。


↑到命令列表

Traceroute选项(仅限Linux)

Traceroute命令切换

描述

traceroute -A 在路由注册表中执行自治系统(AS)路径查找,并在相应的地址之后直接打印结果。
traceroute --回来了 当它看起来与正向方向不同时打印向后跳数。假设远程跃点发送的答复数据包的初始TTL设置为64,128或255(这似乎是一种常见做法),这个数字是猜测的它以'-NUM'的形式打印为负值。
traceroute -d 启用套接字级调试(Linux内核支持时)。
traceroute -e 显示ICMP扩展(RFC 4884)。一般形式是CLASS / TYPE,后跟十六进制转储。
traceroute -f [N] 将初始TTL设置为[N]跳。
traceroute -F 设置'do not fragment'位。
traceroute --fwmark = [mark] 为传出数据包设置防火墙[标记](自Linux内核版本2.6.25起)。此处描述防火墙标记
traceroute -g [gw_addr] 告诉tracerouteIP源路由选项添加到传出数据包,告知网络通过指定的[gw_addr]路由数据包(出于安全原因,大多数路由器禁用源路由)。通常,允许几个网关(逗号分隔)。
traceroute --帮助 打印帮助信息。
traceroute -i [interface] 指定traceroute通过其发送数据包[接口]缺省情况下,根据路由表选择接口。
traceroute -I [rawdgram]
使用ICMP ECHO进行UDP的探测。选项是[raw]套接字或[dgram] ICMP套接字。
traceroute -m [max_ttl] 指定最大跳数(即最大TTL值)。默认值为30。
traceroute -M [方法] 使用指定的[method]进行traceroute操作。默认的传统UDP方法名称为default ; ICMP(-I)和TCP(-T)分别具有名称icmptcp特定于方法的选项可以通过-O传递
追踪--男人 发现沿被跟踪路径的最大传输单元(MTU)。意味着-F-N 1
traceroute -n 显示数字IP地址并绕过主机名解析尝试。
traceroute -N [num_probes] 指定同时发送的探测包的数量。同时发送多个探测可以加速traceroute默认值为16.请注意,如果使用ICMP探测器,则某些路由器和主机可以使用ICMP速率限制。
traceroute -O [选项] 指定一些特定于方法的[选项]几个选项用逗号分隔(或者在命令行中使用几个-O)。
traceroute -p [port] 将目标基本UDP端口号设置为[port] ; 默认值为33434.对于ICMP跟踪,指定初始ICMP序列值(按每个探测增加)。对于TCP,仅指定要连接的(常量)目标端口。
traceroute -P [proto] 使用指定协议的原始数据包进行跟踪路由。默认协议是253(RFC 3692)。
traceroute -q [num_queries] 设置每跳的探测包数。默认值为3。
traceroute -r 绕过正常的路由表并直接发送到连接网络上的主机。如果主机不在直接连接的网络上,则会返回错误。此选项可用于通过没有路由的接口ping本地主机。
traceroute raw -P [proto] 发送协议[proto]的原始数据包(不使用特定于协议的标头,仅使用IP标头)。意味着-N 1
traceroute -s [src_addr] 指定传出traceroute数据包的备用源地址
traceroute --sport = [port] 选择要使用的源端口。意味着-N 1
traceroute -t​​ [ToS] 设置服务类型 [ToS]和优先级值(十进制0-255)。有用的值是16(低延迟)和8(高吞吐量)。对于IPv6,-t设置流量控制值。
traceroute -T [opt] 使用TCP协议进行traceroute探测。可用选项包括:synackfinrstpshurgececwr如果这些选项对您没有意义,您应该阅读我在Nmap上的文章
traceroute -T ecn 使用TCP标志ECECWR发送SYN数据包(用于显式拥塞通知,RFC 3168)。
traceroute -T flags = [num] 将TCP标头中的flags字段设置为[num]
traceroute -T info 到达目标主机时,打印最终TCP回复的TCP标志。确定应用程序是否正在侦听端口。
traceroute -T mss = [num] 使用[num]的值作为最大段 TCP标头选项(当SYN时)。
traceroute -T sack,timestamps,window_scaling 在传出探测包中使用相应的TCP头选项。
traceroute -T sysctl 使用上面的TCP标头选项和ECN的当前sysctl(/ proc / sys / net / *)设置。如果未指定其他内容,则始终默认设置。
traceroute tcpconn 简单地使用connect调用初始实现TCP方法,该调用执行完整的TCP会话。不建议正常使用,因为目标应用程序总是受到影响。
traceroute -U 使用具有恒定目标端口的UDP数据报(默认为53,DNS)。与-T(TCP)选项一样,这也可以绕过防火墙。
traceroute -UL coverage = [num]
使用UDP Lite数据报作为探测器(具有恒定的目标端口,53),其中[num]确定发送的校验和覆盖范围。请参阅此处以供参考。
traceroute -V 打印traceroute的版本
traceroute -w [wait_time] 设置等待探测响应的时间(以秒为单位)(默认值为5秒)。
traceroute -z [sendwait] 设置探测之间的最小时间间隔(默认值为0)。如果该值大于10,则它指定以毫秒为单位的数字,否则为秒数。当某些路由器对ICMP消息使用速率限制时很有用。
traceroute -4或-6 明确强制IPv4或IPv6。默认情况下,程序将尝试解析给定的名称,并自动选择适当的协议。如果解析主机名同时返回IPv4和IPv6地址,则traceroute将使用IPv4。


↑到命令列表

谁是

whois是一个域名查询工具。它提供的有关域名的一些信息包括:注册地址,技术和DNS联系人,联系电子邮件地址,联系电话号码以及域名注册的到期日期。

域名注册的命令通常从面向网络查询网站执行的,如所描述这里但是,您也可以从命令行界面运行whoisWhois在Linux和Unix中很容易获得(可能以jwhois的形式提供),但必须在Windows上手动安装。请注意,linux.it的Marco d'Itri发布whois版本使用与标准whois / jwhois非常不同的选项

Whois for Windows

Whois命令开关(Windows)

描述

whois [domainname] [whois.server] 使用指定whois服务器[domainname]执行whois查询


↑到命令列表

Whois for Linux

Whois命令开关(Linux)

描述

whois -araw -- 禁用重新格式化查询。
whois -c [file]config = [file] -- 使用[file]作为配置文件而不是jwhois.conf
whois -ddisable-cache -- 禁用从缓存读取(和写入)。
whois -f强制查找 -- 即使当前对象可从缓存中获得,也强制对主机进行查询。
whois -h [host]host = [host] -- 覆盖配置文件中的所有主机并直接查询[host]
--帮忙 打印帮助信息。
whois -idisplay-redirections -- 显示重定向中的每个步骤(默认为仅显示最后一个答案)。
whois -n-no-redirect 禁用从一个服务器到另一个服务器的重定向。
whois -p [port]port = [port] [host] --
指定查询主机时要使用的端口号。例如,whois --port = 9103 10.20.30.31强制对该主机的端口9103进行测试
whois -rrwhois -- 强制查询使用rwhois协议而不是HTTP或whois
whois --rwhois-display = [显示] 要求接收rwhois服务器以在指定的[display]中显示结果,而不是默认转储显示。
whois --rwhois-limit = [limit] 要求接收rwhois服务器以限制他们对[limit]匹配的响应
whois -sno-whois服务器 -- 禁用对whois-servers.net的内置支持
whois -vverbose -- 运行时输出详细的调试信息。您可以通过向jwhois提供几个详细命令来增加详细程度,例如-vv
whois --版本 显示whois的版本,作者和许可信息


↑到命令列表

推荐阅读

如果您发现本文的内容有用并希望进一步扩展您的知识,请考虑使用以下链接购买相关书籍。谢谢!

亚马逊上的TCP / IP插图 TCP / IP Illustrated TCP / IP协议套件亚马逊上的TCP / IP协议套件

亚马逊上的TCP / IP指南 TCP / IP指南 教你自己TCP / IP在亚马逊上24小时自学TCP / IP

亚马逊上的TCP / IP网络管理 TCP / IP网络管理 TCP / IP指南亚马逊上的TCP / IP指南