树莓派开始,玩转Linux30:树莓派网络诊断

2023-05-16

树莓派开始,玩转Linux30:树莓派网络诊断

通过对网络协议的介绍,我们已经了解了互联网通信的基本原理。互联网让树莓派变得更加强大。但这也意味着,网络问题会让人非常恼火。下面介绍树莓派常用的网络诊断命令,它们能帮助我们发现网络问题。

1.基础工具:

网络诊断的第一步是了解自己的设备,比如有哪些接口,IP地址都是什么。使用下面的命令来显示网络接口(Interface)信息,如接口名称、接口类型、接口的IP地址、硬件的MAC地址等。

在这里插入图片描述
ARP协议用在局域网内部。借用ARP协议设备可以知道同一局域网内的IP-MAC对应关系。当访问一个本地IP地址时,设备根据该对应关系,与对应的MAC地址通信。通过ARP工具,可以知道局域网内的通信是否正常。

在这里插入图片描述
显示本地存储的IP地址和MAC地址的对应关系。
安装arping工具:
在这里插入图片描述
然后使用命令:
在这里插入图片描述
经eth0接口,发送ARP请求,查询IP为192.168.1.1设备的MAC地
址。
安装arp-scan工具:
在这里插入图片描述
然后使用下面的命令查询整个局域网内所有IP地址的对应MAC地址:
在这里插入图片描述
安装tcpdump工具:
在这里插入图片描述
使用命令:
在这里插入图片描述
监听en0接口的ARP协议通信。

2.网络层:

网络层是一个广域的互联网,互联网上的设备用IP地址识别。ping命令是向某个IP地址发送ICMP协议的ECHO_REQUEST请求。收到该请求的设备将返回ICMP回复。如果ping请求到某个IP地址,则说明该IP地址的设备可以经网络层顺利到达。
在这里插入图片描述
向IP地址192.168.1.255发送ICMP请求。如果该地址的ICMP没有被禁用,那么在该网上的设备将回复:
在这里插入图片描述
向广播地址192.168.1.255发送ICMP请求。如果ICMP没有被禁用,那么在该网上的设备将回复。

在这里插入图片描述
需要注意的是,许多网络设备会禁用ICMP。即使ping请求不到一个设备,并不一定是网络层故障,ping的结果只能作为参考。

如果两个设备有相同的IP地址,将导致IP冲突。许多网络是由DHCP协议自动分配IP地址的,这样可以极大减少IP冲突的可能性。
DHCP服务器与设备达成协议,设备将在一定时间内占据某个IP地址,而DHCP服务器不再把该IP地址分配给别人。
在这里插入图片描述
更新DHCP租约,设备将释放IP地址,再从DHCP服务器重新获得IP地址。
在这里插入图片描述
将接口wlan0的IP地址设置成192.168.1.106。
在这里插入图片描述
编辑/etc/dhcpcd.conf文件,在文件末尾加入:
在这里插入图片描述
可将接口eth0的默认IP地址设置成192.168.1.106。

3.路由:

局域网通过路由器接入广域的互联网。互联网上的通信往往要经过多个路由器接力。途中路由器的故障,可能导致互联网访问异常。

在这里插入图片描述
显示路由表。从路由表中,可以找到网关。网关是通向更加广域网络的出口。
在这里插入图片描述
追踪到达IP目的地的全程路由。
在这里插入图片描述
通过ICMP协议追踪路由。ICMP协议经常会被禁用,所以会返回"*"的字符串。通过TCP协议,经80端口追踪路由,TCP协议的默认端口80很少会被禁用。

4.网络监听:

在Linux下,tcpdump是一款网络抓包工具。它可以监听网络接口不同层的通信,并过滤出特定的内容,比如特定协议、特定端口等。我们已经使用tcpdump监听了ARP协议通信,下面介绍更多的监听方式。
· 监听en0接口的所有通信。
在这里插入图片描述

· 用ASCII显示en0接口的通信内容。
在这里插入图片描述

· 显示en0接口的8080端口的通信。
在这里插入图片描述

· 显示eth1接口来自192.168.1.200的通信。
在这里插入图片描述

· 显示eth1接口80端口、目的地为192.168.1.101的通信。
在这里插入图片描述

· 将lo0接口的通信存入文件record.pcap,方便阅读。
在这里插入图片描述

通过tcpdump能知道不同协议层传输的内容,进而诊断网络问题的原因。

5.域名解析:

DNS在域名和IP之间进行翻译,DNS故障会导致用户无法通过域名访问某个网址。
在这里插入图片描述
DNS域名解析,返回域名对应的IP地址。你可以通过这个域名来检查计算机是否能正确进行域名解析。

本章对网络诊断相关命令的介绍很简略,只能给你留下一个粗浅的印象。毕竟,Linux下的网络命令非常庞杂,相关介绍足以构成一本书。你也可以通过上面各个命令的文档来详细了解它们的用法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

树莓派开始,玩转Linux30:树莓派网络诊断 的相关文章

  • C# 图像处理(一)

    下面是一个学习的过程 xff0c 一个小的图像处理软件的C 编程过程 xff0c 是我最近学习的过程 大家可以一起共同学习 欢迎大家加群 图像处理交流群 xff08 C opencv matlab xff09 672854897 1 打开图
  • Invalid bound statement (not found):的原因和解决方法

    在常见数据库异常中这算是比较简单的一类了 xff0c 细致一点就能很好的避免此类问题 xff0c 以下是我总结出容易出错的地方 xff0c 欢迎补充 检查Mapper xml中的方法名和Dao类方法是否一致 xff0c 若使用注解则检查SQ
  • Spring Boot 访问静态页面!

    SpringBoot访问静态页面 一 静态页面放在templates下面 xff08 多个页面可以添加相应的文件夹 xff0c 方便管理 xff09 xff1a 二 配置Controller 这里有两点值得注意 xff1a 其一 xff1a
  • Java动态代理的实现原理

    概述 AOP用到了两种动态代理来实现织入功能 xff1a jdk动态代理cglib动态代理比较 xff1a jdk动态代理是由java内部的反射机制来实现的 xff0c cglib动态代理底层则是借助asm来实现的 反射机制在生成类的过程中
  • MyBati 原理 - 【012】

    1 根据配置文件创建SQLSessionFactory 2 获取SQLSession的实现类DefaultSQLSession 3 getMapper返回接口代理对象 4 查询流程 5 查询流程总结 6 运行原理总结
  • JDK Tomcat MySQL一键安装

    文章目录 材料准备免安装版JDK免安装版Tomcat免安装版MySQL微软Visual C 43 43 运行库组件打包工具Inno Setup 统一目录创建所需文件 xff08 先创建好清楚整体流程 xff09 整体结构文件内容测试 打包步
  • SpringBoot2.1+WebSocket:详解及注意事项

    SpringBoot对WebSocket集成十分完美 xff0c 直接上步骤 引入Maven依赖 lt WebSocket gt lt dependency gt lt groupId gt org springframework boot
  • OVN入门

    参考链接 如何借助 OVN 来提高 OVS 在云计算环境中的性能 OVN简介 Open vSwitch Documentation OVSDB介绍及在OpenDaylight中的调用 OpenDaylight即将迈入 七年之痒 xff1f
  • 阿里智能运维平台的演进:从自动化到无人化(附PPT)

    差不多在两年前 xff0c 阿里内部出现了很多运维中台 研发中台等等 xff0c 那有没有后台呢 xff1f 不好意思 xff0c 我们只有中台 xff0c 没有后台 xff0c 会在中台上构建与业务相关的各个前台 目前阿里的业务几乎覆盖了
  • windows通过vnc远程连接ubuntu

    windows通过vnc远程连接ubuntu 实验室的电脑装好了ubuntu16 04的系统 xff0c 显卡比较好 xff0c 想要跑程序的话人太多了 xff0c 不能大家都排队来使用 xff0c 因此我想使用windows直接连接ubu
  • vscode如何连接gitlab代码库

    零 前期准备工作 1 已安装好vscode xff0c 如未安装 xff0c 按如下地址下载并且安装 xff08 或参考其他安装教程 xff09 xff1a https code visualstudio com Download 2 已安
  • 对rtthread系统的理解

    写这个的目的就是记录下自己对rtthread系统框架的理解 xff0c 并不会对相关的知识点做介绍 xff0c 因为官方文档介绍的比较详细 xff08 也有介绍不细致的地方 xff09 xff0c 我没必要去摘录一遍 在工作中用rtthre
  • performance API 中什么指标可以衡量首屏时间

    performance timing loadEventEnd 返回当前网页 load 事件的回调函数运行结束时的 Unix 毫秒时间戳 如果该事件还没有发生 返回 0 performance timing navigationStart
  • C++中的双冒号

    文章目录 https www cnblogs com kimmychul p 3951229 html 另外 xff0c 在ros中 xff0c 创建的xxx msg xxx srv等文件中定义的变量a xff0c 在使用时要写packag
  • Python使用ros的TF变换

    https www cnblogs com xialuobo p 6097806 html
  • CMakeList.txt文件详解

    1 整体结构 CMakeList txt文件必须遵循以下的格式 xff1a 所需的CMake版本 xff08 cmake minimum required xff09 软件包的名称 xff08 project xff09 查找构建所需要的其
  • centos7.5 + ryu+mininet+docker+wireshark+ovs

    1 安装pip 没有python pip包就执行命令 yum y install epel release 执行成功之后 xff0c 再次执行yum install python pip 2 安装ryu4 30 pip install ry
  • 【C++学习】——(五)数组

    C 43 43 学习 xff08 五 xff09 数组 开篇 上一篇讲解了类型 xff0c 通过类型来开始本篇的学习 xff1b int a 10 上述代码中的a是什么类型呢 xff1f 相信很多人都知道是一个数组类型 xff0c 具体来说
  • openstack中ipv6三种获取IP地址方式

    前言 openstack共有三种用于ipv6的寻址的模式 xff0c 分别是dhcpv6 stateful dhcp stateless以及slaac 1 xff09 slaac模式 Address discovered from an O

随机推荐

  • 华为S5720-52X-PWR-LI/S5720-52X-LI交互机堆叠和VLAN配置

    主要配置流程为 xff1a 交换机设备上电通过console线或网线连接到交换机后 xff0c 进行参数和堆叠配置断电 xff0c 连接好光纤重新上电 1 首次登录交换机 使用Putty软件 xff0c 通过串口 xff0c 连接到交换机
  • 配置Intel REALSENSE相机的一些坑

    最近入手了一个intel REALSENSE相机 xff0c 看别人都是直接使用配套的USB3的线连接电脑就安装好了 xff0c 但是我却要倒霉的配置了一个下午 xff0c 终于在今天晚上配置好了 xff0c 记录一下这个下午踩过的坑 xf
  • 高斯滤波知识点总结——KF、EKF、UKF以及IF、EIF等

    高斯滤波知识点总结 KF EKF UKF以及IF EIF等 1 引言 本文是我在学习 Probabilistic Robotics 这本书中第三章 高斯滤波过程中的一些知识总结 本文主要是整理高斯滤波算法的知识点和一些讨论 xff0c 具体
  • Git 学习小结

    Git 安装和使用教程 git 提交 全部文件 git add git add xx命令可以将xx文件添加到暂存区 xff0c 如果有很多改动可以通过 git add A 来一次添加所有改变的文件 注意 A 选项后面还有一个句点 git a
  • ROS 串口

    64 TOC ROS学习笔记 ROS中使用串口进行通讯测试 参考两篇文献 xff0c 感谢原作者 xff1a https blog csdn net qq 44623066 article details 125626937 https b
  • sklearn库之sklearn.cluster.KMeans的学习

    这篇呢是接着上一篇kmeans的学习 xff0c 这篇主要是介绍调用机器学习的库来使用集成的kmeans 哈哈会调用就行 xff0c 主要学习呢就是看官方文档 xff0c 学习这个包装类的参数 xff0c 返回值以及它方法 这里面有好多ex
  • docker容器开启ssh端口

    docker容器开启ssh端口 启动一个docker容器 加端口 port 22 docker run dit p port 22 p port1 port restart span class token operator 61 span
  • PID中各个参数意义

    1 比例部分 xff1a PID是比例 积分 微分的简称 xff0c PID控制的难点不是编程 xff0c 而是控制器的参数整定 增大比例系数使系统反应灵敏 xff0c 调节速度加快 xff0c 并且可以减小稳态误差 但是比例系数过大会使超
  • 关于多线程,你必须知道的那些玩意儿

    进程与线程 概念 进程和线程作为必知必会的知识 xff0c 想来读者们也都是耳熟能详了 xff0c 但真的是这样嘛 xff1f 今天我们就来重新捋一捋 xff0c 看看有没有什么知识点欠缺的 先来一张我随手截的活动监视器的图 xff0c 分
  • 多传感器融合-搭建ROS工程

    多传感器融合搭建记录1 Tag3 0 一 安装Terminator二 vscode创建功能包三 ROS相关基础1 添加源文件2 添加launch文件3 ROS话题通讯 四 添加代码1 发布者publishera 点云发布类CloudPubl
  • Win11配置Matconvnet错误使用 vl_compilenn>nvcc_compile和datacu.hpp undefined的问题

    初始配置环境 xff1a 电脑 xff1a 联想R9000K Win11 显卡 xff1a 3080 Matlab 2021b Visual Studio 2017 Professional VS安装位置 xff1a D VisualStu
  • openstack/ovn环境,虚拟机连接外网设置

    当使用OVN来做为neutron的后端 xff0c 来实现SDN方案时 xff0c 我们也会需要虚拟机连接外网 xff0c 本文记录操作方法 xff1a 环境 xff1a pike版本 xff0c 创建好net1 xff0c 子网subne
  • 软件环境:安装报Error opening file for writing

    环境 xff1a 办公电脑 xff0c win10 xff0c 64位 xff1b 现象 xff1a 昨天给电脑升级工作相关软件 xff0c 安装报错 xff1b 解决 xff1a 先是更改目录权限等等诸多方案 xff0c 都无效 xff0
  • 卡尔曼滤波原理讲解以及基于陀螺仪和加速度计的角度估计:自己记录一下

    基于陀螺仪和加速度计的角度估计
  • oracle 新建用户

    1 打开命令行窗口 xff0c 输入 slqplus 回车 2 create user 用户名 identified by 密码 xff1b 回车 3 授权权限 xff1a grant connect resource dba to 用户名
  • 解决MySQL 8.0 SQLYog工具连接报错1251

    报错提示 xff0c 如图 xff1a 错误号码1251 Client does not support authentication protocol requested by server consider upgrading MySQ
  • vc中m_开头的意义

    一种变量命名方法 匈牙利命名法 xff0c m即member xff0c 即定义的变量为成员变量 这是一种命名规范
  • amixer

    1 查看有多少个接口可以操作 amixer controls amixer contents 2 get系列 amixer sget 39 Playback Path 39 0 3 set系列 amixer cset numid 61 2
  • 目标跟踪算法综述

    前言 目标跟踪是计算机视觉领域研究的一个热点问题 xff0c 其利用视频或图像序列的上下文信息 xff0c 对目标的外观和运动信息进行建模 xff0c 从而对目标运动状态进行预测并标定目标的位置 目标跟踪算法从构建模型的角度可以分为生成式
  • 树莓派开始,玩转Linux30:树莓派网络诊断

    树莓派开始 xff0c 玩转Linux30 xff1a 树莓派网络诊断 通过对网络协议的介绍 xff0c 我们已经了解了互联网通信的基本原理 互联网让树莓派变得更加强大 但这也意味着 xff0c 网络问题会让人非常恼火 下面介绍树莓派常用的