检查Linux系统上的网络连接

Linux 系统提供了许多有用的命令来检查网络配置和连接。下面来看几个,包括 ifquery、ifup、ifdown 和 ifconfig。

Linux 上有许多可用于查看网络设置和连接的命令。在今天的文章中,我们将会通过一些非常方便的命令来看看它们是如何工作的。

ifquery 命令

一个非常有用的命令是 ifquery。这个命令应该会显示一个网络接口列表。但是,你可能只会看到类似这样的内容 - 仅显示回环接口:

$ ifquery --list  lo

如果是这种情况,那说明你的 /etc/network/interfaces 不包括除了回环接口之外的网络接口信息。在下面的例子中,假设你使用 DHCP 来分配地址,且如果你希望它更有用的话,你可以添加例子最后的两行。

# interfaces(5) file used by ifup(8) and ifdown(8)    auto lo    iface lo inet loopback    auto eth0    iface eth0 inet dhcp

ifup 和 ifdown 命令

可以使用相关的 ifup 和 ifdown 命令来打开网络连接并根据需要将其关闭,只要该文件具有所需的描述性数据即可。请记住,“if” 在这里意思是接口,这与 ifconfig 命令中的一样,而不是如果我只有一个大脑 中的 “if”。

ifconfig 命令

另外,ifconfig 命令完全不读取 /etc/network/interfaces,但是仍然提供了网络接口相当多的有用信息 —— 配置数据以及可以告诉你每个接口有多忙的数据包计数。ifconfig 命令也可用于关闭和重新启动网络接口(例如:ifconfig eth0 down)。 

$ ifconfig eth0      eth0      Link encap:Ethernet  HWaddr 00:1e:4f:c8:43:fc                inet addr:192.168.0.6  Bcast:192.168.0.255  Mask:255.255.255.0                inet6 addr: fe80::b44b:bdb6:2527:6ae9/64 Scope:Link                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                RX packets:60474 errors:0 dropped:0 overruns:0 frame:0                TX packets:33463 errors:0 dropped:0 overruns:0 carrier:0                collisions:0 txqueuelen:1000                RX bytes:43922053 (43.9 MB)  TX bytes:4000460 (4.0 MB)                Interrupt:21 Memory:fe9e0000-fea00000

输出中的 RX 和 TX 数据包计数很低。此外,没有报告错误或数据包冲突。或许可以用 uptime 命令确认此系统最近才重新启动。

上面显示的广播 (Bcast) 和网络掩码 (Mask) 地址表明系统运行在 C 类等效网络(默认)上,所以本地地址范围从 192.168.0.1 到 192.168.0.254。

netstat 命令

netstat 命令提供有关路由和网络连接的信息。netstat -rn 命令显示系统的路由表。192.168.0.1 是本地网关 (Flags=UG)。 

$ netstat -rn     Kernel IP routing table     Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface     0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 eth0     169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0     192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

上面输出中的 169.254.0.0 条目仅在你正在使用或计划使用本地链路通信时才有必要。如果不是这样的话,你可以在 /etc/network/if-up.d/avahi-autoipd 中注释掉相关的行: 

$ tail -12 /etc/network/if-up.d/avahi-autoipd      #if [ -x /bin/ip ]; then      #       # route already present?      #       ip route show | grep -q '^169.254.0.0/16[[:space:]]' && exit 0      #      #       /bin/ip route add 169.254.0.0/16 dev $IFACE metric 1000 scope link      #elif [ -x /sbin/route ]; then      #       # route already present?      #       /sbin/route -n | egrep -q "^169.254.0.0[[:space:]]" && exit 0      #      #       /sbin/route add -net 169.254.0.0 netmask 255.255.0.0 dev $IFACE metric 1000      #fi

netstat -a 命令

netstat -a 命令将显示“所有”网络连接。为了将其限制为显示正在监听和已建立的连接(通常更有用),请改用 netstat -at 命令。 

$ netstat -at      Active Internet connections (servers and established)      Proto Recv-Q Send-Q Local Address           Foreign Address         State      tcp        0      0 *:ssh                   *:*                     LISTEN      tcp        0      0 localhost:ipp           *:*                     LISTEN      tcp        0      0 localhost:smtp          *:*                     LISTEN      tcp        0    256 192.168.0.6:ssh         192.168.0.32:53550      ESTABLISHED      tcp6       0      0 [::]:http               [::]:*                  LISTEN      tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      tcp6       0      0 ip6-localhost:ipp       [::]:*                  LISTEN      tcp6       0      0 ip6-localhost:smtp      [::]:*                  LISTEN

host 命令

host 命令就像 nslookup 一样,用来查询远程系统的 IP 地址,但是还提供系统的邮箱处理地址。 

$ host world.std.com      world.std.com has address 192.74.137.5      world.std.com mail is handled by 10 smtp.theworld.com.

nslookup 命令

nslookup 还提供系统中(本例中是本地系统)提供 DNS 查询服务的信息。 

$ nslookup world.std.com      Server:         127.0.1.1      Address:        127.0.1.1#53      Non-authoritative answer:      Name:   world.std.com      Address: 192.74.137.5

dig 命令

dig 命令提供了很多有关连接到远程系统的信息 - 包括与我们通信的名称服务器以及查询需要多长时间进行响应,并经常用于故障排除。 

$ dig world.std.com      ; <<>> DiG 9.10.3-P4-Ubuntu <<>> world.std.com      ;; global options: +cmd      ;; Got answer:      ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28679      ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1      ;; OPT PSEUDOSECTION:      ; EDNS: version: 0, flags:; udp: 512      ;; QUESTION SECTION:      ;world.std.com.                 IN      A      ;; ANSWER SECTION:      world.std.com.          78146   IN      A       192.74.137.5      ;; Query time: 37 msec      ;; SERVER: 127.0.1.1#53(127.0.1.1)      ;; WHEN: Mon Oct 09 13:26:46 EDT 2017      ;; MSG SIZE  rcvd: 58

nmap 命令

nmap 经常用于探查远程系统,但是同样也用于报告本地系统提供的服务。在下面的输出中,我们可以看到登录可以使用 ssh、smtp 用于电子邮箱、web 站点也是启用的,并且 ipp 打印服务正在运行。 

$ nmap localhost     Starting Nmap 7.01 ( https://nmap.org ) at 2017-10-09 15:01 EDT     Nmap scan report for localhost (127.0.0.1)     Host is up (0.00016s latency).     Not shown: 996 closed ports     PORT    STATE SERVICE     22/tcp  open  ssh     25/tcp  open  smtp     80/tcp  open  http     631/tcp open  ipp     Nmap done: 1 IP address (1 host up) scanned in 0.09 seconds

Linux 系统提供了很多有用的命令用于查看网络配置和连接。如果你都探索完了,请记住 apropos network 或许会让你了解更多。

更多文章可以关注我的网站与博客,天游tianyounb.com博悦平台pay1024.com天游娱乐tianyoupt.com里面都看得到我的文章,谢谢大家的支持~

时间: 2024-09-16 21:27:52

检查Linux系统上的网络连接的相关文章

Linux系统上安装MRTG来监控网络流量

Multi Router Traffic Grapher------MRTG是一个监控网络链路流量负载的工具软件,通过snmp协议得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载. SNMP(imple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理.随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体

Linux系统上架设一台高容量的POP3服务器

POP3(Post Office Protocol 3)即邮局协议的第3个版本,它规定怎样将个人计算机连接到互联网上的邮件服务器和下载电子邮件的电子协议.它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的.本文将介绍如何使用开源软件Procmail和Qpopper,在Linux系统上配置一台可供大量用户使用的POP3服务器. 1.下载Procmail和

如何在 Linux 系统上安装 Suricata 入侵检测系统

如何在 Linux 系统上安装 Suricata 入侵检测系统 随着安全威胁的不断发生,入侵检测系统(IDS)在如今的数据中心环境中显得尤为必要.然而,随着越来越多的服务器将他们的网卡升级到10GB/40GB以太网,对如此线路上的硬件进行计算密集型的入侵检测越来越困难.其中一种提升入侵检测系统性能的途径是多线程入侵检测系统,它将 CPU 密集型的深度包检测工作并行的分配给多个并发任务来完成.这样的并行检测可以充分利用多核硬件的优势来轻松提升入侵检测系统的吞吐量.在这方面有两个知名的开源项目,分别

由安装两块网卡的linux系统中引起网络不通想到的

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://chenguang.blog.51cto.com/350944/69543 由安装两块网卡的linux系统中引起网络不通想到的    一天,小王突然急匆匆的来找我,他说:"我在机子上刚装的redhat怎么老也ping不通服务器,我网卡的驱动都安装了,ping 自己的两块网卡的IP都能通,可就时访问不了服务器.我输入[url]http://172.31.0.101[/url]就提示

inux系统-Centos6.4 网络连接问题

问题描述 Centos6.4 网络连接问题 各位大哥,小弟在win7系统上面安装了一个centos6.4版本的Linux系统,网线也连接好了,但是网络连接的那个图标一直是个叉叉,我知道需要进行配置,但是最起码这个连接正常(不是叉叉)的情况下才可以备注的吧. 小弟一直想办法解决,但是目前仍然没有解决,请求高手帮忙看看是什么问题,小弟,在此,先谢谢 了. PS:小弟,新手,菜鸟,可能问题很简单,不要笑话小弟了 解决方案 看下虚拟机的网络设置怎么配置的,网卡驱动有没有装 解决方案二: 别的机器去下个对

虑拟机 securecrt-虑拟机(linux系统)上传文件的问题

问题描述 虑拟机(linux系统)上传文件的问题 分别用SecureCRT和WinSCP这个两软件,从主机往虑拟机上传文件,用的ssh协议,虑拟机的网络连接方式为桥接,虑拟机所有的相关服务均启动.本机上传怎么也传不上去,可用同事的机子连上之后传东西就可以传上,有遇到过这种情况的给解释下怎么回事! 解决方案 可以通过sftp来传输文件

[翻译]现代Linux系统上的栈溢出攻击【转】

转自:http://www.codeweblog.com/%E7%BF%BB%E8%AF%91-%E7%8E%B0%E4%BB%A3linux%E7%B3%BB%E7%BB%9F%E4%B8%8A%E7%9A%84%E6%A0%88%E6%BA%A2%E5%87%BA%E6%94%BB%E5%87%BB/ 现代Linux系统上的栈溢出攻击 2012.12.21 - 06:56 - jip 预备知识: 对C语言和 X86_64 汇编语言有基本的了解 ++++++++++++++++++++++++

我们在Windows 8系统中无线网络连接的设置方法

第一步.首先单击托盘中的网络图标,在弹出的右侧网络边栏中查看飞行模式是否开启,如果开启则需要关闭它.然后在Wi-Fi中找到私有的无线网络SSID(无线网络广播名称),单击"连接". 第二步.然后,在白色方框中输入该私有无线网络的安全密钥,如果感觉输入错误,可以单击右侧的眼睛图标查看输入的内容,确认无误后单击"下一步". 第三步.如果网络安全密钥输入正确,此时计算机已经能够通过无线网络连接到因特网了,即可开始使用.当然,无线网络连接还有最后一步,是否启用电脑之间的共享

Win7系统下出现网络连接受限的解决方法

  我们新世纪的年轻人已经完全离不开电脑.手机.网络,手机还好,离开了无线网络还有流量但我们的电脑,没有无线网络,除非连接有线宽带,否则电脑将无用武之地.很多时候我们发现明明我们身边有无线网络,电脑也能够连接上,密码输入也没有出错,可是连接网络的图标上却出现感叹号标志,说明网络连接受限.这对于需要网络的用户来说,无疑是个麻烦的问题,除非是专业网络修理用户是无法立刻解决这个问题的,下面小编就为大家介绍Win7网络连接受限的应对措施. Win7系统下出现网络连接受限的解决方法 方法一:返回到桌面位置