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

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

基本用法
  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" 选项。
    • 输入新的主机名并保存。
相关推荐
白帽攻防录6 小时前
SRC 挖洞:Roundcube 预认证 SQL 注入深度复盘,CVE-2026-48842 preg_replace 转义绕过怎么打穿邮件系统
网络·数据库·sql·网络安全·sql注入
左手の明天7 小时前
SLIP 协议封装与解析详解:原理、C 代码与实战案例
linux·c语言·开发语言·c++
꯭自꯭闭꯭7 小时前
达梦SQL优化相关
linux·运维·数据库·sql
一条破秋裤8 小时前
Linux 共享内存通信:POSIX 共享内存与 mmap
linux·运维·服务器
贵州山魈羡民8 小时前
【玩转手机】通过 Podroid 上的 Alpine 部署 1Panel,把微型服务器装进口袋
运维·服务器
FakeOccupational9 小时前
【电路笔记 信号】DBPSK 波形查找表+脉冲成形(升余弦+根升余弦滤波)
开发语言·笔记
谷哥的小弟9 小时前
CentOS Stream浴火重生
linux·运维·centos
要吃这碗饭10 小时前
深入理解 TCP 协议:从三次握手到可靠传输
网络·网络协议·tcp/ip
程序员-Benothing10 小时前
Shell输入输出详解:read、echo、printf、颜色输出
linux·运维·服务器
和裕10 小时前
全纸结构重型纸箱能否满足 1 吨以上设备出口熏蒸豁免要求?通关合规性全解析
大数据·运维·网络·人工智能·算法