当前位置: 首页 > article >正文

Linux学习笔记——网络管理命令

一、网络基础知识

TCP/IP四层模型

以太网地址(MAC地址):

段16进制数据

IP地址:

子网掩码:

二、接口管命令

ip命令:字符终端,立即生效,重启配置会丢失

nmcli命令:字符终端,立即生效,重启后配置也不会丢失

nmtui命令:可视化终端,立即生效,重启后有效

1、ip命令:

(1)作用:可以显示或操作路由,网络设备,设置路由策略和通道。

(2)语法:ip        [选项]        OBJECT        COMMAND        [help]

OBJECT对象可以是:link——网络设备,addr——设备协议地址,route——路由器

                                        rule——策略,等等

COMMAND是操作命令,不同对象有不同的命令

link对象支持:set,show

addr对象支持:add,del,flush,show

route对象支持:list,flush,get,add,del,change,append,replace

(3)实例:

ip        link        #显示网络运行状态

ip        -s        link        #显示更多详细link的数据

ip        -s        link        show        ens160        #只显示ens的信息

ip        link        set        ens160        down        #让ens160停止工作       

ip        link        set        ens160        up        #让ens160继续工作

ip        address        #协议地址管理
ip        addr|a        show        [网络设备名]        #看指定网络设备的配置信息

ip        -s        a        show        #详细信息

ip        [4/6可选协议选择]        addr        add        1.1.1.1/24        dev        ens160        #添加(临时,重启会失效)IP地址

ip        [4/6可选协议选择]        addr        del        1.1.1.1/24        dev        ens160        #除IP地址        

ip        route        #路由表管理

ip        route        show        #查看路由情况

ip        route        add        default        via        192.168.0.254        dev        eth0        #设置默认网关(下一跳设备IP)为192.168.0.254

下一条的地址不对,使用本电脑的IP地址192.168.68.133

ip        route        add        default        via        192.168.68.133        dev        eth0 

ip        route        show        #再次查看是否添加成功

ip        route        del        default        via        192.168.68.133      #删除1192.168.68.133网关

ip        route        del        default        #删除默认路由

2.nmcli命令

NetworkManager Client

使用这个命令,系统会自动将配置写入/etc/NetworkManager/system-connections/ens160.nmconnections中,实现永久修改。

接口(device)是一个物理设备,一个物理设备可以拥有多个配置文件,但只有一个配置文件属于使用(active)状态:配置文件的生成与使用状态均由NetworkManager控制。

(1)查看网卡设备

语法格式:nmcli        device/d

实例:

nmcli        d        show        |grep        IP4        #仅查看IP4的信息(|grep        #过滤)

nmcli        d        disconnect        ens160        #断开连接

nmcli        d        connect        ens160        #建立连接

(2)查看网卡配置

语法格式:nmcli        connection/c

实例:

nmcli        c        #查看网卡信息

nmcli        c        show        ens160        |grep        -i        gateway        #仅查看gateway的信息

nmcli        c        show        ens160        |grep        -i        dns        #查看当前网卡的DNS域名服务器

(3)配置网卡信息:

非交互式:
        需求:修改ens160的IP地址为192.168.68.128,并且时ipv4,自动连接,dns为114.114.114.114,网关为192.168.68.2,子网掩码为:255.255.255.0。

nmcli c modify ens160 ipv4.method manual autoconnect yes ipv4.addresses 192.168.68.128/24 ipv4.gateway 192.168.68.2 ipv4.dns 114.114.114.114

如果没有立即生效,需要重启服务:systemctl        restart        NetworkManager

交互式:

nmcli c edit ens160 #交互式编写ens160
goto ipv4 #前往ipv4
set dns 8.8.8.8 #设置域名为8.8.8.8
set addresses 1.1.1.1/24 #设置地址为1.1.1.1/24
save #更新
activate #激活
quit #退出

说明:

在NM里,在2个维度:连接(connection)和(device),

这是多对一的关系,想给某个网卡配置ip地址,首先NM要能纳管这个网卡。

设备里存在的网卡(及nmcli c可以看到的),就是NM纳管的。接着,可以为一个设备

配置多个连接(即nmcli c可以看到的),每个连接可以理解为一个ifcfg配置文件。

同一时刻,一个设备只能有一个连接活跃。可以通过nmcli c up切换连接。

nmcli        d        ==>device是设备的意思,一般都是某个网卡设备

nmcli        c        ==>connect是连接的意思,一般都是某个配置文件

一个设备可以有多个连接,一个连接一定只有一个设备。

常用:

nmcli        d        show        ens160

nmcli        d        connect        ens160

nmcli        d        disconnect        ens160

nmcli        d        modify        ens160        +ipv4.addresses        192.168.0.2/24



nmcli        c        show        ens160        |grep        -i        gateway

nmcli        c        up        ens160        

nmcli        c        down        ens160

nmcli        c        mod        ens160        +ipv4.addresses 192.168.0.2/24

最后可以通过如下方式让命令生效,需要重新取消激活,或者重启网络服务才能使之生效

systemctl(控制系统)        restart (重启)       NetworkManager(对象)

3.nmtui命令(NetworkManager Termial user interface)

这个命令用于可视化方式来进行配置

DNS域名服务器

114.114.114.114        国内的

8.8.8.8        国外的

三、网络维护命令

1、ssh命令

远程登陆,在自己的虚拟机上登陆别人的虚拟机,前提是要网络可达

xshell就是基于ssh

语法:ssh        [参数]        域名或IP地址

实验环境:192.168.68.129为登陆端

                   192.168.68.128为被登录端

首先在登录端测试192.168.68.128是否可达:ping        192.168.68.128

使用ssh命令登陆

ssh        192.168.68.128        #用默认的root身份访问目标路由器

输入密码后登陆成功,可以对被登陆端中的文件进行操作,退出exit

其他实例:

ssh        -l        bzy        192.168.68.128        #使用存在的用户身份进行登陆

ssh        192.168.68.128        "free -m"        #不登进去,但是会执行冒号的命令,并且把执行结果返回来

ssh        -1       192.168.68.128        #强制使用v1版本的SSH加密协议连接远程服务器主机 

也可以使用xshell通过ssh的22端口

2、netstat命令

查看网络状态

netstat命令来自英文词组network statistics的缩写,其功能是显示各种网络相关信息

实例:

netstat        -a        #显示所有连接信息

netstat        -nu        #显示系统网络状态中的UDP连接信息

netstat        -apu        #显示系统网络状态中的UDP连接端口号的使用信息

netstat        -i        #显示网卡当前状态信息

netstat        -r        #显示网络路由表当前的信息状态

netstat        -anp        |grep        ssh        #过滤出某个对应的连接信息

对照学习:ss指令

ss        -a        #显示所有套接字

ss        -l        #显示处于监听状态的套接字

ss        -n        #不解析服务名称,以数字形式显示

ss        -p       #显示使用套接字的进程

ss        -t        #显示TCP协议的套接字

ss        -u        #显示UDP协议的套接字

ss        -tunl        |grep        22(端口号)        #参数输出(常用)

3、dhclient命令

手动打开再次自动获取IP地址

下载:yum        install        dhclient

实例:

dhclient        ens160        #通过指定网卡发起DHCP请求,获取网卡参数

dhclient        -r        #释放系统已获取的网卡参数

dhclient        -s        192.168.68.128        #向指定服务器请求网卡参数

dhclient        -x        #手动停止执行dhclient服务进程

4、ifconfig命令

与IP命令相似

设置或显示网络信息

语法格式:ifconfig        参数        网卡名        动作

常用参数:

        -a        显示所有网卡状态

        -v        显示执行过程详细状态

        -s        显示简短状态列表

常用动作:

        add        设置网络设备的IP地址

        del        删除网络设备的IP地址

        down        关闭指定的网络设备

        up        打开指定的网络设备

实例:

ifconfig        #显示网络设备存活信息,不包括down状态的网卡

ifconfig        -a        #显示网络设备信息,包括down状态的网卡

ifconfig        ens160        down        #关闭网卡设备

ifconfig        ens160        up        #打开网卡设备

ifconfig        ens160        192.168.68.130        netmask        255.255.255.0        #临时修改IP

或者ifconfig        ens160        192.168.68.130/24

ifconfig        ens160        hw        ether        00:0c:29:72:34:50        #修改MAC地址(极度危险!)

ifconfig        ens160        -arp        #对指定网卡设备关闭ARP协议

ifconfig        ens160        arp        #对指定网卡设备打开ARP协议

(ARP地址解析协议——IP获取MAC)

arp        -an        #记录消息来源(记录谁来了)

ifconfig        ens160        192.168.68.129/24        up

        ens160就是网卡名称

        192.168.68.129是要配置的IP地址

         24配置给IP地址的子网掩码24

        up配置IP和mask后启动该网卡

ifconfig        ens160        down        网卡停用

ifconfig        ens160        192.168.68.129/24        网卡重新配置

ifconfig        ens160        up        网卡启动

ifconfig        ens160        0.0.0.0        up        网卡地址没有配置

5、ping命令

测试网络可达性

语法格式:ping        参数        域名或IP地址

实例:

ping        baidu.com        #测试与指定域名之间的网络可达性

ping        -c        4        192.168.68.128        #测试指定主机间网络可达性,发送请求限定在4个

ping        -c        3        -i        0.2        -w        3        192.168.68.128

                请求3次        间隔0.2秒        最长等待时间3秒

互联网出故障的解决流程:

        ①ping        自己的网卡        #确认网卡(IP地址)正常工作

        ②ping        自己的网关        #确认下一跳工作正常(ip route show查看网关)

        ③ping        (114.114.114.114)dns服务器     #如果不行修改dns服务器(修改/etc/resolv.conf)

        ④ping        公共地址(baidu.com)        #测试与外网服务器的联通状态

添加网关指令:route        add        default        gw        192.168.68.2

                         route        del        default        gw        192.168.68.2

6、iptables命令

网络防火墙  

基于内核级别的防火墙服务。对数据包进行过滤操作,拒绝掉危险的外部请求流程,保护内网安全

iptables命令默认ipv4。

语法格式:iptables        [参数]           [对象]

实例:

iptables        -L        #显示当前防火墙策略中过滤的全部信息

input——防范进来的

forward——防范经过的

output——防范过去的

iptables        -L        -t        nat        #显示当前防火墙策略中指定的NAT表的信息

iptables        -I        INPUT        -s        192.168.68.128        -j        DROP        #禁止192.168.

68.128主机访问本地。

结果为192.168.68.128访问不到192.168.68.129

iptables        -F        #删除所有禁止

192.168.68.128就可以访问192.168.68.129。

iptables      -I      INPUT      -s      192.168.68.128      -p      tcp      --dport      22        -j        DROP

                        #禁止192.168.68.128的22号端口,其余的允许进入

可以ping通,但ssh使用的是22号端口。

连不上。


http://www.kler.cn/a/519677.html

相关文章:

  • C++异步future
  • 2.1.3 第一个工程,点灯!
  • 改进候鸟优化算法之二:基于混沌映射的候鸟优化算法(MBO-CM)
  • 2024年AI多极竞争:技术创新与商业突破
  • 上位机知识篇---return环境变量.bashrc
  • 【算法】快速排序1
  • 旅游风景的代码项目
  • 数据结构基础之《(15)—排序算法小结》
  • MATLAB 如何避免复杂shp文件对inpolygon的影响
  • 3大关键点教你用Java和Spring Boot快速构建微服务架构:从零开发到高效服务注册与发现的逆袭之路
  • 不建模,无代码,如何构建一个3D虚拟展厅?
  • 【前端】CSS实战之音乐播放器
  • InceptionV1_V2
  • 贝尔科技液氮罐确保每一份样本的保存达标
  • 【Rust自学】14.3. 使用pub use导出方便使用的API
  • 算法每日双题精讲 —— 二分查找(山脉数组的峰顶索引,寻找峰值)
  • 使用 MySQL JSON 查询筛选嵌套字段的值
  • IMX6ull项目环境配置
  • [ACTF2020 新生赛]Include1
  • 服务器中热备份和冷备份的区别
  • Debian或Ubuntu系统中重置MySQL的root密码
  • 【2024年华为OD机试】 (C卷,200分)- 贪吃的猴子(JavaScriptJava PythonC/C++)
  • Solon Cloud Gateway 开发:熟悉 Completable 响应式接口
  • 【力扣Hot 100】矩阵2
  • Avalonia+ReactiveUI跨平台路由:打造丝滑UI交互的奇幻冒险
  • 文献阅读记录8--Enhanced Machine Learning Sketches for Network Measurements