一、查看以及测试网络

查看及测试网络配置是管理Linux网络服务的第一步,本节将学习Linux系统中的网络查看以及测试命令。其中讲解的大多数命令以普通用户权限就可以完成操作,但是普通用户在执行“www.qixoo.qixoo.com/Sbin/”目录下的命令时需要指定命令文件的绝对路径。

(一)查看网络配置

  1. 使用ifconfig命令-查看网络接口地址

    主机的网络接口卡(网卡)通常称为“网络接口”。在Linux系统中,使用ifconfig命令可以查看网络接口的地址配置信息。

  • 查看活动的网络接口设备

    当ifconfig命令不带任何参数和选项时,将显示当前主机中已启用(活动)的网络接口信息。例如,直接执行ifconfig命令后可以看到eth0、lo这两个网络接口信息。(以下截图均在Red hat Enterprise Linux 7上执行,与其他版本略有不同)

在上述输出结果中,eno16777736对应为第一块物理网卡,lo对应为虚拟的回环接口。virbro为虚拟网卡。

  • eno16777736:第一块以太网的名称。

  • lo:“回环”网络接口,“lo”是“loopback”的缩写,它并不代表真正的网络接口,而是一个虚拟的网络接口,其IP地址默认是“127.0.0.1”。回环地址通常是仅用于对本机的网络测试。

  • virbr0:“virbr0”为虚拟网卡。

  • 查看指定的网络接口信息

当只需要查看其中的某一个网络接口信息的信息时,可以使用网络接口的名称作为ifconfig命令的参数(不论该网卡是否处于激活状态)。例如,执行“ifconfig eno16777736”命令后可以只查看网卡eno16777736的配置信息。

从上述命令显示的结果中,可以获知eno16777736网卡的一些基本信息,如下所述。

  • ether:表示网络接口的物理地址(MAC地址),如“00:0c:29:11:47:04”。网络接口的物理地址通常不能更改,是网卡在生产时确定的全球唯一的硬件地址。

  • Inet:表示网络接口的IP地址,如“192.168.239.128”。

  • broadcas:表示网络接口所在的广播地址,如“192.168.239.255”。

  • netmask:表示网络接口的子网掩码,如“255.255.255.0”。

除此之外,还能通过“TX”、“RX”等信息了解通过该网络接口发送和接收的数据包个数、流量等更多属性。

2.使用hostname命令-查看主机名称

在Linux系统中,相当一部分网络服务都是通过主机名来识别本机,如果主机名配置不当,可能会导致程序功能出现故障。使用hostname命令可以查看当前主机的主机名,不用添加任何的选项或参数。

3.使用route命令-查看路由条目表

Linux系统中的路由表决定着从本机向其他主机、其他网络发送数据的去向,是排除网络故障的关键信息。直接执行route命令可以查看当前主机中的路由表信息,在输出的结果中,Destination列对应目标网段的地址,Gateway列对应下一跳路由器的地址,iface列对应发送数据的网络接口。

当目标网段为“default”时,表示此行是默认网关记录;当下一跳为*时,表示目标网段与本机是直接相连的。

若结合“-n”选项使用,可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表中条目比较多的情况下能够加快执行速度。例如,执行“route-n”命令后输出信息中的*地址将显示为“0.0.0.0”,默认网关记录中的“default”也将显示为“0.0.0.0”。

4.使用netstat命令-查看网络连接情况

通过使用netstat命令可以查看当前系统的网络连接状态、路由表、接口统计等信息,是了解网络状态及排除网络服务故障的有效工具。以下是netstat命令常用的几个选项。

  • -a:显示当前主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)

  • -n:以数字形式显示相关的主机地址、端口等信息。

  • -r:显示路由表信息。

  • -l:显示处于监听(listening)状态的网络连接及端口信息。

  • -t:查看TCP协议相关的信息。

  • -u:显示UDP协议相关的信息。

  • -p:显示与网络连接相关联的进程号、进程名称信息(该选项需要root权限)。

    通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的TCP连接信息。同时显示对应的进程信息。结合命令管理管道使用“grep”命令,还可以在结果中过滤所需要的特定记录。例如,执行以下命令操作可以查看本机中是否有监听“TCP 22”端口(即SSH)的服务程序,输出信息中包括PID号和进程名称。

(二)测试网络连接

  1. 使用ping命令-测试网络的连通性

使用ping命令可以向目的主机持续的发送测试数据包,并显示反馈结果,知道按Ctrl+C组合键中止测试,并显示最终统计结果。例如,以下操作将测试从本机到另一台主机192.168.195.112的连通性测试,连接正常时会收到返回的数据包。

执行ping测试命令时,若不能获得从目标主机发回的反馈数据包,则表示在本机到目标主机之间存在的网络连通性故障。例如,若看到“Destination Host Unreachable”反馈信息,则表示目的主机不可达,可能目标地址不存在或主机已经关闭;若看到“Network is unreachable”的反馈信息,则表示没有可用的路由记录(如默认网关),无法到达目标主机所在的网络。

当网络中存在影响通信过程稳定性的因素(如网卡故障、病毒或网络攻击等)时,使用ping命令测试时可能会频繁看到“Request timeout”的反馈结果,表示与目标主机间的连接超时(数据包响应缓慢或丢失)。除此之外,当目标主机中有严格的防火墙限制时,可能收到发回“Request timeout”的反馈结果。

2.使用traceroute命令-跟踪数据包的路由途径

使用traceroute命令可以测试从当前主机到目的主机之间经过了哪些网络节点,并显示各中间节点的连接状态(响应时间)。对于无法响应的结点,连接状态将显示为“*”。例如,通过以下操作结果可以看出,从本机到目标主机192.168.195.之间,中间需跨越一个路由器

traceroute命令能够比ping命令更加准确的定位网络连接的故障点(中断点),执行速度也因此会比ping命令稍慢。在网络测试与排错过程中,通常会先使用ping命令测试与目的主机的网络连接,如果发现网络连接有故障,在使用traceroute命令跟踪查看是在哪个中间点存在故障的。

Linux 基础网络设置的更多相关文章

  1. Linux基础网络设置

    查看Linux网络参数 ifconfig—-查看网络接口 > [root@localhost ~]# ifconfig eth1 Link encap:Ethernet HWaddr 00:0C ...

  2. Linux学习笔记(9)linux网络管理与配置之一——Linux基础网络命令与学习大纲(0)

    大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配置DNS客户端 4.配置名称解析顺序 5.配置路由与默认网关 6.双网卡绑定 [1] ping [2]net ...

  3. linux虚拟机网络设置(本机使用wiff,自己的网)

      一.linux虚拟机网络设置(https://jingyan.baidu.com/album/4e5b3e1957979d91901e24f1.html?picindex=16) 选中虚拟机,点击 ...

  4. Linux基础网络配置

    目录 Linux基础网络配置 参考 IP配置 Route配置 DNS指向 ss命令 *网络排查工具 Linux基础网络配置

  5. 036.集群网络-K8S网络模型及Linux基础网络

    一 Kubernetes网络模型概述 1.1 Kubernetes网络模型 Kubernetes网络模型设计的一个基础原则是:每个Pod都拥有一个独立的IP地址,并假定所有Pod都在一个可以直接连通的 ...

  6. Linux高级网络设置——将多个网卡设置成一个网卡

    Linux下可以设置网卡模式 模式0:负载均衡 模式1:主备模式,不提高网络带宽 模式3:多网卡同时发送相同的数据 准备实验环境: Redhat 6.4 企业版64位,最小化安装. 给虚拟机添加网卡 ...

  7. VirtualBox Linux虚拟机 网络设置 centos

    VirtualBox网络设置成桥接 进去系统打开终端 vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 用Vim编辑器打开配置文件,输入命令:vi /etc ...

  8. Linux虚拟机网络设置问题

    使用的是VM 工作站15 和以前的不一样 没有什么虚拟机网络设置 :打开Edit->Virtual NetWork editor, 选中VMnet8,然后点击NAT Setting按钮,再点击D ...

  9. 自学linux——5.网络设置

    网络设置 1.网卡配置文件位置:ls /etc/sysconfig/network-scripts/ 2.网卡配置文件命名:ifcfg-网卡名称 3.查看网卡配置文件:cat /etc/sysconf ...

随机推荐

  1. CSS3实现10种Loading效果

    昨晚用CSS3实现了几种常见的Loading效果,虽然很简单,但还是分享一下,顺便也当是做做笔记…… 第1种效果: 代码如下: <div class="loading"> ...

  2. 抓包排错-tcp.flags.reset

      一 排查思路: 1,了解协议运作过程 2,抓包 最小化原则 对比法 二 案例 微信连wifi问题: 不同地区的微信服务器的地址可能不同. 当出现认证问题: 1,不能跳转,点了按钮没反应 2,打开后 ...

  3. GeoServer 常见问题总结

    Geoserver安装环境 Geoserver在部署发布服务时,经常会遇到如下问题,现总结如下: 1.忘记了GeoServer Web Admin Page的登陆用户名和密码怎么办? 存储位置:C:\ ...

  4. Tuple的用法

    1经常有些类型只用一次,不想添加新类,可以使用Tuple. 例子: List<Tuple<string, string>> list = new List<Tuple&l ...

  5. 炫酷JQUERY自定义对话框插件JDIALOG_JDIALOG弹出对话框和确认对话框插件

    多种类型自定义对话框插件jDialog是一款基于jquery实现的轻量级多种类型的自定义对话框插件 在项目开发中.一般会美化 alert(); 的样式.那么今天我就和大家分享一款非常炫的插件 先来看一 ...

  6. [CareerCup] 5.8 Draw Horizonatal Line 画横线

    5.8 A monochrome screen is stored as a single array of bytes, allowing eight consecutive pixels to b ...

  7. ios 解析html

    xml,json都有大量的库来解析,我们如何解析html呢? TFHpple是一个小型的封装,可以用来解析html,它是对libxml的封装,语法是xpath.今天我看到一个直接用libxml来解析h ...

  8. Itextsharp下根据Echarts图像生成pdf

    本文介绍如何在C#中使用ItextSharp生成带echarts图表的pdf 一.生成一个简单的pdf 后台代码 publicActionResultGetPdf() { MemoryStream m ...

  9. MVC5 + EF6 + Bootstrap3 (14) 分部视图PartialView

    Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-partialview.html 系列教程:MVC5 + E ...

  10. HoloLens开发手记 - Unity之场景共享 Shared holographic experiences in Unity

    佩戴HoloLens的多个用户可以使用场景共享特性来获取集合视野,并可以与固定在空间中某个位置的同一全息对象进行交互操作.这一切是通过空间锚共享(Anchor Sharing)来实现的. 为了使用共享 ...