tcp/ip指令_通过ip地址计算子网掩码

tcp/ip指令_通过ip地址计算子网掩码ipconfig、ping、traceroute、tracert、netstat、arp、route_如何用ip命令查看当前网卡的ip地址是否为所更改的ip地址

1、ipconfig

ipconfig命令可用于显示当前的tcp/ip配置的设置值。这些信息一般用来检验人工的配置的tcp/ip设置是否正确。如果计算机和所在的局域网使用了动态主机配置协议dhcp,使用ipconfig命令可以了解道你的计算机是否成功地租用到了一个ip地址,如果已经租用到,则可以了解它目前得到的是什么地址,包括ip地址、子网掩码和缺省网关等网络配置信息。

ipconfig参数:

/? 显示此帮助消息      
/all         显示完整配置信息
/release 释放指定适配器的ipv4地址
/release6 释方指定适配器的ipv6地址
/renew 更新指定适配器的ipv4地址
/renew6 更新指定适配器的ipv6地址
/flushdns 清除dns解析程序缓存
/registerdns 刷新所有dhcp租用并重新注册dns名称
/showclassid 显示适配器允许的所有dhcp类id
/setclassid         修改dhcp类id
/showclassid6 显示适配器允许的所有ipv6类id
/setclassid6        修改ipv6 dncp类id
/allcompartments        显示有关所有隔离舱的信息

2、ping

ping是packet internet groper的缩写,是一种因特网探索器,用于测试网络连接量的程序。ping是工作在tcp/ip网络体系结构中应用层的一个服务命令,主要是相特定的目的主机发送icmp(internet control message protocol因特网报文控制协议)。echo请求报文,测试目的站是否可达及了解其有关状态。

输入ping /?,可以列出ping命令的一些参数:

tcp/ip指令_通过ip地址计算子网掩码

ping命令就像一个飞去来兮的玩具,运行ping命令的计算机a将触发一个特殊的ip包从本地发出,目的地是计算机b。

这个IP包轻装上阵,只携带出发地和目的地的ip地址,以及一个简单的计时器和计数器,并都设置从0开始计时和计数。

从寻找路由的角度看,这个包和普通的ip包没有任何区别。没到达一台路由器,计数器会自动+1,直到到达目的节点b。

在节点b,这个ip包被掉包,将包头中的源、目的ip地址做一个调换,其他内容不变,再将其遣返回a。

注意,这个数据包来回的路由未必一直,可以走回头路,也可以不走。如果这个ip包顺利回到起始节点a,则说明a和b之间双向路径均通畅。

如果他没有回来,那a和b之间的双向路径中,至少有一条路径是不通的。

工程师会通过连续的ping查看计数器的时间变化,并可以通过丢包情况分析整条链路的质量。ip包在网络上的长途旅行,可能会遇到各种网络情况,对不同长度的ip包而言,所遇到的待遇未必相同,有时候因为包长增大,延迟会突然增加。对于网络环境较差的,过大的ip包可能根本无法通过整个网络回到起始点。

ping本机ip地址,这样是为了检查本机的ip地址是否设置有误。

ping远程ip地址,这主要是检查本网或本机于外部的连接是否正常。

ping 127.0.0.1 127.0.0.1为回送地址,ping回送地址是为了检查本地的tcp/ip协议有没有设置好。如果本地址无法ping通,则表明本地机tcp/ip协议不能正常工作。

ping后返回信息常见的有两种:destination host unreachable和request timed out。

如果路由表中连到达目标的路由都没有,那就会出现destination host unreachable。

request timed out的意义就是超时,即你与这个ip地址的网络是不通的,主要有以下几种情况:

  1. ip地址设置错误
  2. 对方已关机,或者网络上根本不存在这个地址
  3. 对方确实存在,但设置了icmp数据包过滤(如防火墙设置)
  4. 对方与自己不在同一网段内,通过路由也无法找到对方

destination host unreachable主要在以下4中情形出现:

  1. 网线没有插到网卡上
  2. 子网掩码设置错误
  3. dhcp故障。局域网使用dhcp动态分配ip地址时,dhcp出现故障或者失败。dhcp失效或者出现故障时,客户机无法分配到ip地址,系统只有自设ip地址,而ip地址的自动设置往往会分配到不同的子网,因此会出现“destination host unreachable”。
  4. 路由表返回错误信息。这种情况一般是在destination host unreachable前面加上ip地址,说明本地计算机与外部网络连接没有问题,但与某台主机连接存在问题。

3、traceroute

互联网中,信息的传送是通过网中许多段的传输介质和设备(路由器、交换机、服务器、网关等)从一端到达另一端。每一个连接在internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的ip地址。通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分所走的路由是相同的。traceroute通过发送小的数据包到目的设备直到其返回,来测量起需要多长时间。一条路径上的每个设备traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如果有的话)及其ip地址。

traceroute是追踪路径的命令。在英文里,trace是追踪、追寻的意思。既然是追踪、追寻,就熬有所反馈,而traceroute的特点,就是一步一回头。tracert命令用来显示数据包到达目标主机所经过的路径,并显示到达每个节点的时间。命令功能同ping类似,但她所获取的信息要比ping命令详细的多,他把数据包苏走的全部路径、节点的ip以及花费的时间都显示出来。

在浩瀚的互联网里,从同一台计算机出发,到达同一个目的地的所有ip包,未必走相同的路ing,但是在大多数时候,确实还是走通一条路径。这就是traceroute存在的意义。当我们用一个traceroute检测包探测a到b的整条路经,那么实际的数据包一般也会走这条路路径。

traceroute命令的实际用途:

试想,庞大的网络发生故障,节点a到节点z的道路很不通畅,但是并非完全不同,我们需要知道,a到z,ip包走的哪条路。如果我们通过traceroute获知,路径是abcdz,那么可以判断出,ab、bc、cd、dz,以及ba、cb、dc、zd这8条路径,至少有一条是不顺畅的,接下来就可以借助多种方式判断究竟是那条路径发生了拥塞。这有利于快速排查故障,让整个网路通畅起来。

另外,需要说明的是traceroute也有不同的叫法,在unix系统中,我们称之为traceroute,而在windows系统中为tracert,默认情况下,tracrt是向目的地址发出icmp请求回显数据包,而traceroute是向目的地址的某个端口(大于30000)发送udp数据包。两者用于探索的数据类型不同。但他们也有一个共同点,都是通过设置发送报的ttl的值从1开始、逐次增1的方法来探测。

假如我们身处某个大公司的网络中,而这个公司的网络很混乱,路由器接着路由器,连成一串。如果这时你发现你的win7系统的电脑无法上网,那么多个路由器,相信你找那台出现问题的路由器会找到你崩溃。这个时候tracert命令就可以排上用场了,我们可以直接发送命令:tracert baidu.com,回显中会显示你连接网络所经过的每台路由器,你只需要记住回显数据在那个ip地址处停下来了,那么这台路由器就是有问题的路由器。

tcp/ip指令_通过ip地址计算子网掩码

4、netstat

netstat命令有助于了解网络的整体使用情况
命令格式:netstat -r -s -n -a
参数含义:
-r:显示本机路由表的内容
-s:显示每个协议的使用状态(包括tcp协议、udp协议、ip协议)
-n:以数字表格形式显示地址和端口
-a:显示所有主机的端口号
netstat -a -n可以显示当前正在活动的网络连接的详细信息,如采用的协议类型、当前主机与源端相连主机的ip地址以及他们之间的连接状态,其中包括以数字形式现实的tcp和udp连接的端口号。如果端口被封了,相应的程序就不能运行了,例如封了3076端口后,你用迅雷就不能下载了。

tcp/ip指令_通过ip地址计算子网掩码

5、arp

地址转换协议arp是ip层的协议,像武侠影视剧中可以吸人内力的吸星大法一样,可以得到对方的东西。在局域网中,网络中实际传输的是帧,帧里面是有目标主机的mac地址的。一个主机和另一个主机进行直接(或通过交换机)通信,必须要知道目标主机的mac地址。但是这个目标mac地址是如何获得的呢?它就是通过地址解析协议arp获得的。arp协议的基本功能就是通过目标设备的ip地址,查询目标设备的mac地址,以保证通信的顺利进行。arp协议在局域网中呼叫所有主机,谁是指定ip就返回自己的mac地址。
常用的arp命令有三种:
(1)arp -a : 显示所有的arp表项
(2)arp -s : 在arp缓存中添加一条记录。如:arp -s 126.13.156.2 02-e0-fc-fe-01-b9
(3)arp -d : 在arp缓存中删除一条记录。如:arp -d 126.13.156.2

tcp/ip指令_通过ip地址计算子网掩码

6、ipconfig

ipconfig用于显示当前的tcp/ip配置的设置值,可以让我们了解计算机当前ip地址、子网掩码和缺省网关。实际上是进行测试和故障分析的必要项目。
输入ipconfig,显示每个已经配置了的接口的ip地址、子网掩码和缺省网关。
如果要显示更详细信息,包括本地网卡的物理地址mac,一个很简单的方法是使用ipconfig /all或者ipconfig -all命令。
ipconfig命令的用处在于查看当前的网络环境。例如,你想设置一下路由器,但是却不知道路由器的ip地址是什么,那么这是就可以输入ipconfig命令并回车,回显中的default gateway显示的就是你的路由器ip地址了。当然,ipconfig在检查网络问题的时候也十分有用,当你发现无法上网的时候,你也可以输入命令,查看ipaddress,后面的ip地址,如果能正常获取到ip,那说明是路由器的问题,如果ip地址无法获取到,那就是网线或者网卡的问题。

tcp/ip指令_通过ip地址计算子网掩码

7、route

route命令是在本地ip路由表中显示和修改条目,手动配置静态路由表,常用的route命令有三种。
(1)route print 显示ip路由表的完整内容。
要显示ip路由表的完整内容:route print。
要显示ip路由表中以119.开始的路由:route print 119.*。
(2)、route add增加一条路有记录(重启后丢失)。
route -p add 永久地增加一条路由记录(重启后不丢失)。
要添加默认网关地址为192.168.12.1的默认路由:
route add 0.0.0.0 mask 0.0.0.0 192.168.12.1
要添加目标为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
要添加目标为10.41.0.0,子网掩码为255.255.0.0,下一个跃点地址为10.27.0.1的永久路由:
route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1
要添加目标为10.41.0.0,子网掩码为255.255.0.0,下一个跃点地址为10.27.0.1,跃点数为7的路由:
route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7
要设定一个到目的网络209.98.32.33的路由,期间要经过5个路由器网段,首先要经过本地网路上的一个路由器,ip为202.96.123.5,子网掩码为255.255.255.224,那么我们应该输入以下命令:
route add 209.98.32.33 mask 255.255.255.224 202.96.123.5 metric 5
(3)、route delete删除一条路由记录。
要删除目标为10.41.0.0,子网掩码为255.255.0.0的路由:
route delete 10.41.0.0 mask 255.255.0.0
要删除ip路由表中以10.开始的所有路由:
route delete 10.*

tcp/ip指令_通过ip地址计算子网掩码

8、flushdns
有时候大家可能会遇到这样的情况,电脑突然上不了网,或者存在某些网站打不开的情况,但别的网站又可以打开。对于这种情况很多是dns缓存延迟导致。解决办法需要清除dns缓存,最常用的方式就是使用清除dns缓存命令完成。
清除dns缓存命令:ipconfig/flushdns
这样我们就成功地完成了dns缓存清理了,其实很简单,当我们电脑无法上网,或者dns出错的时候都可以尝试下清理dns缓存试试。
另外大家还可以在以上命令框中,输入ipconfig /displaydns这个命令,来查看一下本机已经缓存了哪些dns信息。

tcp/ip指令_通过ip地址计算子网掩码

注:本篇引自《一本读懂tcp/ip》

今天的文章tcp/ip指令_通过ip地址计算子网掩码分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/84337.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注