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" 选项。
    • 输入新的主机名并保存。
相关推荐
秦jh_8 分钟前
【Linux】多线程(概念,控制)
linux·运维·前端
huangkj-henan22 分钟前
DA217应用笔记
笔记
Young_2022020223 分钟前
学习笔记——KMP
笔记·学习
Hacker_Nightrain41 分钟前
网络安全CTF比赛规则
网络·安全·web安全
秀儿还能再秀1 小时前
机器学习——简单线性回归、逻辑回归
笔记·python·学习·机器学习
WCF向光而行1 小时前
Getting accurate time estimates from your tea(从您的团队获得准确的时间估计)
笔记·学习
扣得君1 小时前
C++20 Coroutine Echo Server
运维·服务器·c++20
网络安全指导员1 小时前
恶意PDF文档分析记录
网络·安全·web安全·pdf
keep__go2 小时前
Linux 批量配置互信
linux·运维·服务器·数据库·shell
矛取矛求2 小时前
Linux中给普通账户一次性提权
linux·运维·服务器