Linux网络配置及查看

Linux网络配置及查看网络信息

1、查看网络配置

1)ifconfig命令

ifconfig 是一个用于配置和显示系统网络接口信息的命令行工具。ifconfig 可以用来查看网络接口的详细信息,如 IP 地址、子网掩码、广播地址、MAC 地址等,还可以用来配置网络接口的参数。

以下是 ifconfig 的一些常用命令和选项:

  1. 查看所有网络接口的信息
bash 复制代码
ifconfig

这个命令会显示系统中所有网络接口的详细信息。

  1. 查看特定网络接口的信息
bash 复制代码
ifconfig <interface_name>

这个命令会显示指定网络接口的详细信息。例如,ifconfig eth0 会显示名为 eth0 的网络接口的信息。

  1. 配置网络接口的 IP 地址和子网掩码
bash 复制代码
ifconfig <interface_name> <ip_address> netmask <subnet_mask>

这个命令用于配置指定网络接口的 IP 地址和子网掩码。例如,ifconfig eth0 192.168.19.100 netmask 255.255.255.0 会配置名为 eth0 的网络接口的 IP 地址为 192.168.19.100,子网掩码为 255.255.255.0

  1. 启用或禁用网络接口
bash 复制代码
ifconfig <interface_name> up|down

这个命令用于启用或禁用指定网络接口。例如,ifconfig eth0 up 会启用名为 eth0 的网络接口,ifconfig eth0 down 会禁用名为 eth0 的网络接口。

  1. 重置网络接口的配置
bash 复制代码
ifconfig <interface_name> reset

这个命令用于重置指定网络接口的配置。例如,ifconfig eth0 reset 会重置名为 eth0 的网络接口的配置。

2)ip a命令

ip aip addr 与ifconfig命令用法基本相同,但比ifconfig命令更加灵活显示内容更加详细。

3)hostname
  1. 临时修改当前主机名

    bash 复制代码
    hostname newname
  2. 永久当前主机名

    bash 复制代码
    hostnamectl set-hostname newname

    或编辑 /etc/hostname 文件(需重启)。

4)route命令

route 是一个用于查看和修改 Linux 系统路由表的命令行工具。通过 route 命令,你可以查看当前的路由表,添加新的路由条目,或者删除现有的路由条目。

以下是 route 的一些常用命令和选项:

  1. 查看当前路由表

    bash 复制代码
    route -n

    这是查看路由表的最常用方法,因为它快速且易于理解。

  2. 查看所有路由表

    bash 复制代码
    route -a

    这个命令会显示系统中所有路由表,包括默认路由表和用户定义的路由表。

  3. 添加新的路由条目

    bash 复制代码
    route add -net <network> <netmask> <gateway>

    这个命令会添加一个新的路由条目到路由表中。其中,<network> 是目标网络地址,<netmask> 是目标网络的子网掩码,<gateway> 是到达目标网络的网关地址。

  4. 删除现有的路由条目

    bash 复制代码
    route delete <network>

    这个命令会删除路由表中指定 的路由条目。其中,<network> 是要删除的路由条目的目标网络地址。

  5. 修改现有的路由条目

    bash 复制代码
    route change -net <network> <netmask> <gateway>

    这个命令会修改路由表中已有的路由条目。其中,<network> 是目标网络地址,<netmask> 是目标网络的子网掩码,<gateway> 是到达目标网络的网关地址。

  6. 清除所有路由条目

    bash 复制代码
    route flush

    这个命令会清除路由表中的所有路由条目。请注意,这将导致系统无法访问任何网络,因此在使用此命令时要格外小心。

5)netstat命令

netstat 是一个用于显示网络连接、路由表、接口统计等网络相关信息的命令行工具。它可以帮助你了解当前网络的状态,包括哪些程序正在监听端口、哪些端口正在被使用、哪些网络连接处于活动状态等。

以下是 netstat 的一些常用命令和选项:

  1. 显示所有网络连接

    bash 复制代码
    netstat -a

    这个命令会显示所有当前的网络连接,包括监听状态的连接和活动状态的连接。

  2. 显示 TCP 连接

    bash 复制代码
    netstat -t

    这个命令会显示所有的 TCP 连接。

  3. 显示 UDP 连接

    bash 复制代码
    netstat -u

    这个命令会显示所有的 UDP 连接。

  4. 显示网络接口统计信息

    bash 复制代码
    netstat -i

    这个命令会显示所有网络接口的统计信息,包括接收和发送的数据包数量、错误数量等。

  5. 显示路由表

    bash 复制代码
    netstat -r

    这个命令会显示当前的路由表。

  6. 显示正在监听的端口

    bash 复制代码
    netstat -l

    这个命令会显示所有正在监听的端口,包括监听的协议类型(如 TCP 或 UDP)。

  7. 显示进程与端口的关系

    bash 复制代码
    netstat -p

    这个命令会显示进程与端口的关系,包括进程 ID 和进程名称。

  8. 显示详细的网络连接信息

    bash 复制代码
    netstat -e

    这个命令会显示详细的网络连接信息,包括连接状态、接收和发送的数据包数量、错误数量等。

  9. 查询指定端口

    bash 复制代码
    netstat -natp | grep 80
  10. netstat -natp输出条目含义

bash 复制代码
Proto     Recv-Q        Send-Q          Local Address    Foreign Address   State      PID/Program name
协议类型  接收队列字节数 发送队列字节数   本地ip和端口号    远程ip和端口号     连接状态   进程id和程序名
6)ss命令

ss命令选项用法和netstat命令相似,用于查看网络连接情况,主要用于获取socket连接统计信息,对比netstat优势在于能更详细显示TCP和连接状态的信息,而且执行更快速更高效。

常见用法:

bash 复制代码
ss -nltp          #-l 显示监听状态的连接
7)lsof命令

lsof(list open files)是一个用于列出系统中当前打开的文件和网络连接的命令行工具。

常用选项:

  • -a:合并多个条件,只有满足所有条件的文件或网络连接才会被列出。
  • -b:排除某些特定的文件系统。
  • -c:根据进程名称列出文件或网络连接。
  • -d:根据文件描述符列出文件或网络连接。
  • -e:排除某些特定的文件或网络连接。
  • -f:根据文件类型列出文件或网络连接。
  • -i:根据网络连接列出文件或网络连接,包括 IP 地址、端口和协议。
  • -l:列出所有打开的文件或网络连接,包括进程 ID 和进程名称。
  • -m:列出所有打开的文件或网络连接,包括文件描述符和文件路径。
  • -n:不解析主机名和端口名,直接显示 IP地址和端口号。
  • -p:根据进程 ID
8)dig命令

dig是一个用于查询 DNS记录的命令行工具。它可以帮助你获取域名对应的 IP 地址、MX 记录、NS 记录等 DNS 信息。

常用选项:

  • -t type:指定查询的 DNS 记录类型,如 A(IP 地址)、MX(邮件交换记录)、NS(域名服务器记录)等。
  • -c count:指定查询的次数。
  • -q name:指定查询的域名。
  • -p port **:**指定 DNS 服务器的端口。
  • -x ip:通过 IP 地址反向查询域名。
  • -b host:指定查询的本地 IP 地址。
  • -f file:从文件中读取要查询的域名列表。
  • -r:忽略常规路由表,直接使用 IP 地址进行查询。
  • -s server:指定查询的 DNS 服务器。
  • -u:使用 UDP 协议进行查询。
  • -i:使用 IP 地址进行查询。
  • -v:显示详细的输出信息。
9)MTU的定义

MTU(Maximum Transmission Unit,最大传输单元)是指在计算机网络中,一个数据包(帧)可以传输的最大数据量,单位为字节。MTU的值对于网络性能和数据传输效率具有重要影响。如果MTU设置得过小,数据包将被分割成多个较小的数据包进行传输,这会增加网络延迟和丢包率,降低网络性能。相反,过大会导致性能浪费。MTU的大小决定了网络设备能够传输的最大数据包大小。总之,需要根据网络设备、网络协议和数据传输需求等因素综合考虑,选择合适的MTU值。

2、测试网络连接

1)ping

ping 是一个常用的网络诊断命令,用于测试两台计算机之间的网络连接是否通畅。

常用选项:

-c :指定发送回显请求数据包的数量。

-i :指定发送回显请求数据包的间隔时间(单位:秒)。

-l :指定回显请求数据包的大小(单位:字节)。

-n:使用数字形式显示地址和端口号,而不是解析主机名和服务名。

-t :指定回显请求数据包的 TTL(生存时间)值。

-v:显示详细的输出信息。

-w:超时时间。

-W:定时停止。

2)traceroute
  • 测试当前主机到目标主机经过的网络节点
bash 复制代码
  traceroute  [目标ip地址]
3)nslookup
  • 测试DNS域名解析

    nslookup 目标ip或目标域名

3、设置网络地址参数

1)临时配置

在Linux系统中,临时配置网络参数通常用于调试网络问题或进行网络测试。这些配置在系统重启后不会保留。

临时配置网络参数的方法

  • 使用命令调整网络参数:通过命令行工具如ifconfig、ip等,可以直接修改网络接口的IP地址、子网掩码、默认网关等参数。这种方法简单、快速,但配置在系统重启后会丢失。
  • 禁用或重新激活网卡:使用ifdownifup命令可以禁用或重新激活网络接口。这在需要临时禁用网络接口进行故障排查时非常有用。
  • 设置虚拟网络接口:通过ifconfig命令可以为现有的网络接口创建虚拟接口,这在需要在不影响主IP地址的情况下测试网络配置时非常有用。

示例

  • 配置IP地址
bash 复制代码
  ifconfig eth0 192.168.1.111 netmask 255.255.255.0
  • 配置默认网关
bash 复制代码
  route add default gw 192.168.1.1
2)永久配置

比如通过修改以下配置文件达到永久生效

bash 复制代码
/etc/sysconfig/static-routes                 #添加路由

/etc/resolv.conf                             #修改DNS域名解析

/etc/sysconfig/network-scripts/ifcfg-ens33   #配置网卡信息
相关推荐
Tassel_YUE27 分钟前
网络自动化04:python实现ACL匹配信息(主机与主机信息)
网络·python·自动化
€☞扫地僧☜€35 分钟前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
hjjdebug40 分钟前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯41 分钟前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流42 分钟前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
写bug的小屁孩44 分钟前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
斑布斑布1 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
紅色彼岸花1 小时前
第六章:DNS域名解析服务器
运维·服务器
Spring_java_gg1 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻1 小时前
Linux:认识文件系统
linux·运维·服务器