linux详解,基本网络枚举

基本网络枚举

一、基本网络工具

ifconfig
复制代码
ifconfig

是一个用于配置和显示网络接口信息的命令行工具。它可以显示网络接口的P地址、子网掩码、MC地址等信息,还可以用于启动、停止或配置网络接口。

ip
复制代码
ip

也是用于查看和管理网络接口的命令。

它提供了比ifconfig更详细和灵活的网络接口信息显示,包括接口的状态、IP地址、子网码、广播地址等。

  • 查看所有网络接口的状态

    ip addr show
    可以简写为
    ip a

  • 查看特定网络接口的状态

    ip addr show [interface_name]

例如,查看eth0接口的状态:

复制代码
ip addr show eth0
  • 启用网络接口

    ip link set [interface_name] up

例如,启用eth0接口:

复制代码
ip link set eth0 up
  • 禁用网络接口

    ip link set [interface_name] down

例如,禁用eth0接口:

复制代码
ip link set eth0 down
  • 设置网络接口的IP地址

    ip addr add [ip_address]/[prefix_length] dev [interface_name]

例如,为eth0接口设置IP地址192.168.1.100/24

复制代码
ip addr add 192.168.1.100/24 dev eth0
  • 删除网络接口的IP地址

    ip addr del [ip_address]/[prefix_length] dev [interface_name]

例如,删除eth0接口的IP地址192.168.1.100/24

复制代码
ip addr del 192.168.1.100/24 dev eth0
  • 查看路由表

    ip route show

或者简写为:

复制代码
ip r
  • 添加默认网关

    ip route add default via [gateway_ip]

例如,设置默认网关为192.168.1.1

复制代码
ip route add default via 192.168.1.1
  • 删除默认网关

    sudo ip route del default via <网关地址> dev <接口>

假设你的默认网关是 192.168.1.1,并且使用的是 eth0 接口,你可以使用以下命令删除默认网关:

复制代码
sudo ip route del default via 192.168.1.1 dev eth0
  • 添加静态路由

    复制代码
    ip route add [destination_network] via [gateway_ip] dev [interface_name]

例如,添加一个到10.0.0.0/8网络的路由,通过192.168.1.1网关,使用eth0接口:

复制代码
ip route add 10.0.0.0/8 via 192.168.1.1 dev eth0
  • 查看ARP缓存

    ip neigh show
    可以简写为
    ip n

  • 刷新ARP缓存

    ip neigh flush all

  • 查看网络统计信息

    ip -s link show [interface_name]

例如,查看eth0接口的统计信息:

复制代码
ip -s link show eth0
ifdown

ifdown 命令用于禁用网络接口。它通常与 ifup 命令一起使用,用于启动和停止网络接口,上面的ip命令也可以实现网络接口管理

复制代码
sudo ifdown [interface_name]

sudo ifdown eth0  禁用eth0接口

参数

  • -f, --force:强制禁用网络接口,即使出现错误也会继续执行。

    ifdown -f eth0

  • -n, --noact:模拟操作,显示将要执行的操作,但不实际执行。

ifup
复制代码
ifup [选项] 接口名

sudo ifup eth0  启动eth0网络接口

参数

  • -a--all:启动所有网络接口。
  • -v--verbose:显示详细的输出信息,有助于调试。
  • -n--no-act:模拟操作而不实际执行,用于测试配置是否正确。
  • -f--force:强制启动接口,即使该接口已经在运行中。
  • -i FILE--interfaces=FILE:指定一个不同于默认的接口配置文件。
  • --no-carrier-wait[=SECONDS]:在没有物理连接的情况下尝试启动接口,可选参数为等待的时间(秒)。

二、网络配置

/etc/network/interfaces
复制代码
/etc/network/interfaces

这是一个系统文件,用于配置网络接口的静态IP地址、子网掩码、网关等信息。

在一些Liux发行版中,通过编辑这个文件可以实现网络接口的手动配置。

复制代码
source /etc/network/interfaces.d/*
  • 这一行表示从 /etc/network/interfaces.d/ 目录中读取所有的配置文件。这样可以将不同的网络接口配置分散到多个文件中,便于管理和维护。

    The loopback network interface

    auto lo
    iface lo inet loopback

  • auto lo:表示在系统启动时自动激活 lo 回环接口。

  • iface lo inet loopback:定义 lo 接口为回环接口,并使用 inet 地址族。

NetworkManager

NetworkManager 作为一个系统服务,可以通过 systemd 进行管理。
配置文件
NetworkManager 的配置文件通常位于 /etc/NetworkManager/ 目录下,主要包括以下几个文件和目录:

  • /etc/NetworkManager/NetworkManager.conf :主配置文件,用于配置 NetworkManager 的全局设置。
  • /etc/NetworkManager/system-connections/:存储各个网络连接的配置文件。
  • /etc/NetworkManager/conf.d/:用于存放额外的配置文件,可以覆盖主配置文件中的设置。

检测是否启用NetworkManager服务

复制代码
systemctl status NetworkManager

如果状态显示为"active"或者"running",那么网络管理器已经成功启动了。

  1. 启动 NetworkManager 服务

    sudo systemctl start NetworkManager

  2. 停止 NetworkManager 服务

    sudo systemctl stop NetworkManager

  3. 启用 NetworkManager 服务(开机自启):

    sudo systemctl enable NetworkManager

  4. 禁用 NetworkManager 服务

    sudo systemctl disable NetworkManager

nmcli

nmcliNetworkManager 的主要命令行工具,提供了丰富的命令和选项来管理网络连接。

基本用法
  1. 查看网络状态

    nmcli general status

  1. 列出所有网络设备

    nmcli device

  1. 列出所有网络连接

    nmcli connection show

  1. 连接到特定网络

    nmcli connection up id "Your Connection Name"

  2. 断开特定网络

    nmcli connection down id "Your Connection Name"

  3. 创建新的网络连接

    nmcli connection add type ethernet con-name "New Connection" ifname eth0

  4. 编辑现有网络连接

    nmcli connection modify "Your Connection Name" ipv4.addresses 192.168.1.100/24

  5. 删除网络连接

    nmcli connection delete "Your Connection Name"

nmtui

nmtui 是一个基于文本的用户界面,适用于没有图形界面的环境。

  1. 启动 nmtui

    nmtui

  2. 连接到网络

    • 选择 "Activate a connection" 选项。
    • 选择要连接的网络设备和连接。
  3. 编辑网络连接

    • 选择 "Edit a connection" 选项。
    • 选择要编辑的连接并进行修改。
  4. 设置主机名和 DNS

    • 选择 "Set system hostname" 选项。
    • 输入新的主机名并保存。
相关推荐
枷锁—sha19 小时前
【SRC】SQL注入快速判定与应对策略(一)
网络·数据库·sql·安全·网络安全·系统安全
Maynor99619 小时前
OpenClaw 玩家必备:用 AI 自动追踪社区最新动态
java·服务器·人工智能
郝学胜-神的一滴19 小时前
深入解析C/S模型下的TCP通信流程:从握手到挥手的技术之旅
linux·服务器·c语言·网络·网络协议·tcp/ip
池央19 小时前
CANN 算子诊断与故障定位:oam-tools 在异构计算错误解析中的作用
网络
“αβ”19 小时前
数据链路层协议 -- 以太网协议与ARP协议
服务器·网络·网络协议·以太网·数据链路层·arp·mac地址
释怀不想释怀19 小时前
Linux网络基础(ip,域名)
linux·网络·tcp/ip
初願致夕霞19 小时前
Linux_进程
linux·c++
开开心心就好20 小时前
AI人声伴奏分离工具,离线提取伴奏K歌用
java·linux·开发语言·网络·人工智能·电脑·blender
子榆.20 小时前
CANN 性能分析与调优实战:使用 msprof 定位瓶颈,榨干硬件每一分算力
大数据·网络·人工智能
lucky-billy20 小时前
Ubuntu 下一键部署 ROS2
linux·ubuntu·ros2