linux下主机网络不通,如何进行排查?

2024-08-21 07:44

本文主要是介绍linux下主机网络不通,如何进行排查?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 描述

不管是虚拟机还是物理机也好,这个排查思路希望都能给大家在网络问题排查上提供帮助,这也只代表我个人的解决问题的思路,网络问题错综复杂,希望这个解决思路能让大家举一反三,解决工作上的一些问题。不足之处请大家指正。

1.1 步骤一:检查主机网络配置

  • 首先,我们需要检查虚拟机的网络配置是否正确。确保虚拟机的IP地址、子网掩码、网关等信息都设置正确。可以通过以下命令查看虚拟机的网络配置信息:
[root@node-1 ~]# ip add
1: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:74:a2:d2 brd ff:ff:ff:ff:ff:ffinet 192.168.31.250/24 brd 192.168.31.255 scope global noprefixroute dynamic ens33valid_lft 152435sec preferred_lft 152435secinet6 fe80::20c:29ff:fe74:a2d2/64 scope link valid_lft forever preferred_lft forever

1.2 步骤二:检查主机路由配置

  • 单网卡情况下,我们要检查一下网关正不正确
  • 多网卡情况下,我们要检查网关、默认路由或者静态路由的配置正不正确
[root@node-1 ~]# ip route
default via 192.168.31.1 dev ens33 proto dhcp metric 100 
192.168.31.0/24 dev ens33 proto kernel scope link src 192.168.31.250 metric 100

1.3 步骤三:检查主机防火墙及iptables规则

centos防火墙默认是开启的,我们可以对防火墙进行关闭systemctl stop firewalld;systemctl disabled firewalld

如果主机内的iptables配置限制规则,也需要做放通配置。如保存规则后进行清空,iptables-save > iptables-rule.txt;iptables -F

# 查看状态
$ systemctl status firewalld
# 查看规则定义
$ iptables -L -n -v

1.4 步骤四:检查云平台安全组规则

如果是openstack云主机,我们需要检查OpenStack的安全组规则是否有限制虚拟机与网关之间的通信,如icmp或者ssh及rdp是否被规则限制。

如果是open stack虚拟机要检查平台安全组的规则,可以通过以下命令查看安全组规则;也可以在云平台管理界面查看虚拟机所属安全组规则。

openstack security group rule list $security-group-id

1.5 步骤五:检查云平台服务

如果是openstack云主机,我们需要检查OpenStack的neutron-agent服务是否正常运行;检查openvswitch服务是否正常运行;如果虚拟机还用了浮动IP,还需要进一步排查虚拟机到网络节点的数据包路径,这里不再细说浮动IP场景。

  • 检查neutron-agent服务:该服务异常最好解决办法是到所在计算节点的neutron-agent 日志进行分析,这里就不在扩展了。
  • 检查openvswitch服务:要查看该服务是否正常运行,检查openvswitch相应的流表,这里也不在扩展,通常这块也很少出现问题。

1.6 步骤六 检查云平台内部网络流量路径

如果是openstack云主机,我们要检查一下虚拟机数据包流入或者流出的数据包是否已经正常流入或者流出物理计算节点,通过tcpdump抓包检查数据包是否都已经流出或流入计算节点了。

# 网络设备可以是物理接口和Linux网桥
$ tcpdump -i ens33 -nne icmp and host 192.168.31.143listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
16:01:03.338546 a4:83:e7:81:0c:1d > 00:0c:29:74:a2:d2, ethertype IPv4 (0x0800), length 98: 192.168.31.143 > 192.168.31.250: ICMP echo request, id 28678, seq 0, length 64

1.7 步骤七 以上没问题要协调网络工程师一起查看

  • 与网工确认接入交换机有没有配置变更或者升级
  • 与网工确认接入接入交换机端口vlan配置情况,看是否有漏配vlan的情况

对于一个运维的老司机来讲,遇到问题首先是要自己“看日志!”有过一定运维经验的同学都明白一个道理:“同样的故障现象,原因可能是五花八门的”。老司机不会妄下断论,他们会考虑故障发生之前环境的变动情况,如做了什么变更操作没有,操作前执行了什么动作,做了什么修改等,然后再去获取日志去分析和解决问题

这篇关于linux下主机网络不通,如何进行排查?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1092550

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3