使用常见的网络命令查看当前网络状态——Mac OS X篇
转载自:http://blog.csdn.net/zkh90644/article/details/50539948
操作系统拥有一套通用的实用程序来查明本地主机的有线或者无线链路状态和IP的连接情况。如果本机有IP连接,那么就意味着有线或者无线是正常工作的。在Mac OS X系统中,有以下几个实用的程序来确认连接状态:
ifconfig: 查找本机IP地址和网络接口。
netstat: 使用-r来找到特定网络接口的默认网关。
ping: 用来测试本机之间的端对端的IP连接。
arp: 管理本地的ARP缓存。
以下是连接状态和IP连接的例子:
打开Terminal(译者附:可以通过Spotlight或者实用工具->终端“)
输入ifconfig命令,来查找特定网络接口的IP地址。在这个例子中这个无线网络接口(en1)的地址是:192.168.128.253。
myhost:/usr/bin someuser$ ifconfig
en1: flags=8863(UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST)
inet 192.168.128.253 netmask 0xffffff00 broadcast 192.168.128.255
ether 00:17:f2:e8:ac:0a
media: autoselect status: active
supported media: autoselect输入netstat -r 来寻找实用网络接口en1 的默认网关。在本例子中en1 的默认网关地址是:192.168.128.1。
myhost:/usr/bin someone$ netstat -r
Routing tables
Internet:
Destination Gateway > Flags Refs Use Netif Expire
default 192.168.128.1 > UGSc 90 2 en1局域网的数据交互在OSI模型的第2层(即数据链路层)。主机在同一个局域网中发送数据给局域网中的用户使用的第二层的地址(即MAC地址),每一个主机都有一个动态的MAC地址转化为IP地址的列表映射到ARP表中,该表是通过ARP协议 来找到哪个MAC地址对应的是局域网中的哪个IP地址(IP地址在OSI的第三层网络层中)。ARP是十分详细的,同时为了更好的表达ARP,其中的许多内容被删除。以下是ARP的简要介绍:
每次一个主机需要发送数据到另一台主机中的时候,他都会检查本机的ARP表,如果在ARP表中存在相关的映射,那么数据就会直接发送到该IP地址的MAC地址中。如果不存在映射,为了获得接收数据的IP地址对应的MAC地址,本机的将会发送一个ARP请求广播到局域网,查看已知局域网中的所有IP地址。当对应IP地址的主机收到这个ARP请求后,将会以单播的方式发送ARP响应报文给请求方,告诉请求方自己的IP地址和自己相关联的MAC地址。当请求方收到这个ARP响应报文后,它将更新自己的ARP表同时使用它自己的MAC地址直接发送帧到目的主机上。为了防止ARP缓存的老化,主机将会频繁的发送ARP请求来更新自己的ARP缓存。
为了使用Terminal(终端) 手动的重新刷新你的ARP表,我们使用以下命令:
mycomputer:/usr/bin someuser$ arp -d -a
ping默认网关或局域网上另一台主机的IP地址来测试IP的连通性。在Mac OS X上,ping命令是连续的(译者附:不使用终端命令,ping程序在默认参数下是不会停止的)。
mycomputer:/usr/bin someuser$ ping 192.168.128.1
如果本地连接是同的并且目的主机也是在线上并且是可以达到的,你将会输出每个ICMP(Internet Control Message Protocol)回显请求来显示每个ICMP回显应答。
格式如下:
PING 192.168.128.1 (192.168.128.1): 56 data bytes
64 bytes from 192.168.128.1: icmp_seq=0 ttl=64 time=3.255 ms
64 bytes from 192.168.128.1: icmp_seq=1 ttl=64 time=0.897 ms
64 bytes from 192.168.128.1: icmp_seq=2 ttl=64 time=0.897 ms
64 bytes from 192.168.128.1: icmp_seq=3 ttl=64 time=0.905 ms
7 . 如果ICMP请求超时并被ICMP回显应答,那么最有可能的是本地主机与目标主机中间的电缆存在问题,或者目的主机太过繁忙而无法回应。在这种情况下,你可以尝试ping其他局域网中的主机。如果ping的过程中超时不存在,那么就说明本地连接是好的,同时你需要检修问题主机的故障。
情况如下
PING 192.168.128.1 (192.168.128.1): 56 data bytes
64 bytes from 192.168.128.1: icmp_seq=0 ttl=64 time=3.255 ms
64 bytes from 192.168.128.1: icmp_seq=1 ttl=64 time=0.897 ms
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
64 bytes from 192.168.128.1: icmp_seq=4 ttl=64 time=0.897 ms
64 bytes from 192.168.128.1: icmp_seq=5 ttl=64 time=0.905 ms
Request timeout for icmp_seq 6
如果你的连接是好的但是对方的防火墙拒绝了你的ICMP回显请求,那么你讲收到ICMP请求超时的消息。如果目的主机确实响应你的ARP请求,那就意味着你的本地连接是好的同时网络状态是好的。那么就应该尝试关闭目的主机的防火墙,并再次发送PING请求,或者尝试PING一个其他的主机。
PING 192.168.128.1 (192.168.128.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 5
如果目的主机没有响应ARP请求,或者目的主机不在线,你将会接收到“Host is down”这样的消息。这样你就需要尝试ping其他主机,如果还是收到Host is down”这样的消息,那么就说明你的IP地址是配置错误的或者你的上行链路是好的,但是局域网中的其他部分是有问题的。造成这个问题的可能的原因是 上行链路的管理不当,VLAN不匹配,电缆上游存在损坏。
PING 192.168.128.1 (192.168.128.1): 56 data bytes
ping: sendto: No route to host
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down- 如果你的本地连接是有问题的,那么你将会收到”No route to host“这样的消息,这种状态下你就需要确认你的适配器已启用,或者重新把茶以太电缆(网线),或者重启你的无线连接。
PING 192.168.128.1 (192.168.128.1): 56 data bytes
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
使用常见的网络命令查看当前网络状态——Mac OS X篇的更多相关文章
- Android ADB命令大全(通过ADB命令查看wifi密码、MAC地址、设备信息、操作文件、查看文件、日志信息、卸载、启动和安装APK等)
ADB很强大,记住一些ADB命令有助于提高工作效率. 获取序列号: adb get-serialno 查看连接计算机的设备: adb devices 重启机器: adb reboot 重启到bootl ...
- 使用nfsstat命令查看NFS服务器状态
转载于:http://www.cnblogs.com/jankie/archive/2011/09/03/2165851.html nfsstat命令显示关于NFS和到内核的远程过程调用(RPC)接口 ...
- Linux网络管理——Linux网络命令
3. Linux网络命令 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB&quo ...
- 在Mac OS X系统下 用dd命令将iso镜像写入u盘
一. Mac下将ISO写入U盘可使用命令行工具dd,操作如下: 1.找出U盘挂载的路径,使用如下命令:diskutil list2.将U盘unmount(将N替换为挂载路径):diskutil unm ...
- 常见网络命令之Ping命令
前言:计算机网络老师要求我们自己总结一下常见的网络命,然后上课可以上去讲一下这些命令使用,像我这么听话的好学生,肯定是照老师要求,认真的总结了一下,总结的过程中,我发现网上已经有的资源讲的都不是很详细 ...
- Linux网络管理2---(网络环境查看命令、网络测试命令)
1.网络环境查看命令 ifconfig命令 查看或临时修改网络状态的命令 可以看到IP.子网掩码……信息 关闭和启动网卡 ifdown 网卡设备名(比如: ifdown eth0):禁用该网卡设备 i ...
- iostat iotop 查看硬盘的读写、 free 查看内存的命令 、netstat 命令查看网络、tcpdump 命令
iostat 命令 查看硬盘的使用情况: iostat iostat -x iotop 命令: 若没安装先安装: yum install iotop -y free 命令,用于查看内存的使用量: fr ...
- 常见的网络命令--ping.hostname
hostname命令 作用:显示以及设置主机名 一. 显示系统主机名 第一种方式:hostname 第二种方式:cat /etc/sysconfig/ntework 使用举例: 从上面可以看到我的系 ...
- day11 ss命令 查看网络端口使用情况及对应pid centos7
[root@oldboyedu ~]# ss -lntup Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNC ...
随机推荐
- 洛谷 P2146 [NOI2015]软件包管理器
真没有想到,这竟然会是一道NOI的原题,听RQY说,这套题是北大出的,北大脑抽认为树剖很难... 只恨没有早学几年OI,只A这一道题也可以出去吹自己一A了NOI原题啊 好了,梦该醒了,我们来看题 以后 ...
- VS的IISExpress配置通过IP访问程序
打开C:\Users\用户\Documents\IISExpress\config\applicationhost.config 获取本地VS项目运行起来的端口,比如 然后在文本里搜索 24395 ...
- byte数组转float实现与byte转换其它类型时进行&运算原理
下面是将byte数组转换为float的实现 public static float getFloat(byte[] b) { int accum = 0; accum = accum|(b[0] &a ...
- 【MediaElement】WPF视频播放器【3】
一.前言 对于<MediaElement>前两章介绍了差不多了,其实好的界面还需要UI工程师的配合,比如帮忙设计下按钮的样式等等.同样视频本身也需要吸引人,不然做的再好的播放器也没用.之后 ...
- 使用SetupDI* API列举系统中的设备
原文链接地址:https://blog.csdn.net/clteng/article/details/801012?utm_source=blogxgwz8 在Windows系统中提供一组有用的函数 ...
- Linux下C高手成长过程----经典书籍推荐
http://www.cnblogs.com/shanzhizi/archive/2012/07/10/2585357.html
- PID控制算法的C语言实现五 积分分离的PID控制算法C语言实现
在普通PID控制中,引入积分环节的目的主要是为了消除静差,提高控制精度.但在过程的启动.结束或大幅度增减设定时,短时间内系统输出有很大的偏差,会造成PID运算的积分积累,致使控制量超过执行机构可能允许 ...
- HDU 4584 splay
Shaolin Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Sub ...
- 手脱Aspack变形壳1
1.载入PEID Aspack v2.12 -> www.aspack.com 2.载入OD,不管是看查壳信息还是看入口特征都跟我上一次发的一个手脱Aspack v2.12的帖子相同http:/ ...
- 堡垒机初识--paramiko模块
一.paramiko模块 Python的paramiko模块基于SSH用于连接远程服务器并执行相关的操作. 1.1 在windows上安装paramiko模块 测试环境: win10 , python ...