这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » Linux系统之查看网络设置和连接命令详解

共1条 1/1 1 跳转至

Linux系统之查看网络设置和连接命令详解

菜鸟
2020-06-30 10:59:06     打赏

在现如今,随着IT互联网科技飞速的发展和进步,比如目前Linux系统拥有强大的开发程序,还有许多可用于查看网络设置和连接的命令。下面我们一起来看一下都有哪些常用命令吧。

ifquery命令

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

$ifquery--list

lo

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

#interfaces(5)fileusedbyifup(8)andifdown(8)

autolo

ifaceloinetloopback

autoeth0

ifaceeth0inetdhcp

ifup和ifdown命令

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

ifconfig命令

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

$ifconfigeth0

eth0Linkencap:EthernetHWaddr00:1e:4f:c8:43:fc

inetaddr:192.168.0.6Bcast:192.168.0.255Mask:255.255.255.0

inet6addr:fe80::b44b:bdb6:2527:6ae9/64Scope:Link

UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1

RXpackets:60474errors:0dropped:0overruns:0frame:0

TXpackets:33463errors:0dropped:0overruns:0carrier:0

collisions:0txqueuelen:1000

RXbytes:43922053(43.9MB)TXbytes:4000460(4.0MB)

Interrupt:21Memory: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

KernelIProutingtable

DestinationGatewayGenmaskFlagsMSSWindowirttIface

0.0.0.0192.168.0.10.0.0.0UG000eth0

169.254.0.00.0.0.0255.255.0.0U000eth0

192.168.0.00.0.0.0255.255.255.0U000eth0

上面输出中的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

##routealreadypresent?

#iprouteshow|grep-q'^169.254.0.0/16[[:space:]]'&&exit0

#

#/bin/iprouteadd169.254.0.0/16dev$IFACEmetric1000scopelink

#elif[-x/sbin/route];then

##routealreadypresent?

#/sbin/route-n|egrep-q"^169.254.0.0[[:space:]]"&&exit0

#

#/sbin/routeadd-net169.254.0.0netmask255.255.0.0dev$IFACEmetric1000

#fi

netstat-a命令

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

$netstat-at

ActiveInternetconnections(serversandestablished)

ProtoRecv-QSend-QLocalAddressForeignAddressState

tcp00*:ssh*:*LISTEN

tcp00localhost:ipp*:*LISTEN

tcp00localhost:smtp*:*LISTEN

tcp0256192.168.0.6:ssh192.168.0.32:53550ESTABLISHED

tcp600[::]:http[::]:*LISTEN

tcp600[::]:ssh[::]:*LISTEN

tcp600ip6-localhost:ipp[::]:*LISTEN

tcp600ip6-localhost:smtp[::]:*LISTEN

host命令

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

$hostworld.std.com

world.std.comhasaddress192.74.137.5

world.std.commailishandledby10smtp.theworld.com.

nslookup命令

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

$nslookupworld.std.com

Server:127.0.1.1

Address:127.0.1.1#53

Non-authoritativeanswer:

Name:world.std.com

Address:192.74.137.5

dig命令

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

$digworld.std.com

;<<>>DiG9.10.3-P4-Ubuntu<<>>world.std.com

;;globaloptions:+cmd

;;Gotanswer:

;;->>HEADER<<-opcode:QUERY,status:NOERROR,id:28679

;;flags:qrrdra;QUERY:1,ANSWER:1,AUTHORITY:0,ADDITIONAL:1

;;OPTPSEUDOSECTION:

;EDNS:version:0,flags:;udp:512

;;QUESTIONSECTION:

;world.std.com.INA

;;ANSWERSECTION:

world.std.com.78146INA192.74.137.5

;;Querytime:37msec

;;SERVER:127.0.1.1#53(127.0.1.1)

;;WHEN:MonOct0913:26:46EDT2017

;;MSGSIZErcvd:58

nmap命令

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

$nmaplocalhost

StartingNmap7.01(https://nmap.org)at2017-10-0915:01EDT

Nmapscanreportforlocalhost(127.0.0.1)

Hostisup(0.00016slatency).

Notshown:996closedports

PORTSTATESERVICE

22/tcpopenssh

25/tcpopensmtp

80/tcpopenhttp

631/tcpopenipp

Nmapdone:1IPaddress(1hostup)scannedin0.09seconds



共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]