一文学会Linux网络命令

  • A+
所属分类:Linux 云原生

系列文章目录

如果本文对你们的开发之路有所帮助,请帮忙点个赞,您的支持是我坚持写博客的动力

【Linux相关书籍】关注【Java从零学架构】,后台回复【Linux】自取

前言

上一篇详细介绍了开发中最常用的CentOS的命令,这篇将详细讲解CentOS网络相关的命令。

route 路由命令

概念

route命令用来显示并设置Linux内核中的网络路由表

网络中的数据包经过一个一个的路由器转发到目的地

路由分为动态路由和静态路由,静态由认为分配

命令格式

route [命令参数]

命令参数 含义
-A 设置地址类型
-C 打印将Linux核心的路由缓存
-v 详细信息模式
-n 不执行DNS反向查找,直接显示数字形式的IP地址
-e netstat格式显示路由表
-net 到一个网络的路由表
-host 到一个主机的路由表

route 命令应用

查看路由

[janyxe@localhost ~]$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.162.2   0.0.0.0         UG    100    0        0 ens33
192.168.162.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

ifconfig 命令

概念

用于配置和查看网卡IP地址信息等网络参数或者网络接口信息

用ifconfig命令配置的网卡信息,在网卡机器重启后,配置就不存在,需要通过配置文件网卡配置才会永久生效

命令格式

ifconfig [命令参数]

命令参数 含义
add 地址 设置网络设备IPv6的IP地址
del 地址 删除网络设备IPv6的IP地址
down 关闭指定的网络设备
up 启动指定的网络设备
[IP地址] 指定网络设备的IP地址
[网络设备] 指定网络设备的名称
netmask 设置网络设备的子网掩码

ifconfig 命令应用

查看网卡信息


[janyxe@localhost ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.162.126  netmask 255.255.255.0  broadcast 192.168.162.255
        inet6 fe80::e8ba:b334:3292:5eef  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e9:b9:08  txqueuelen 1000  (Ethernet)
        RX packets 2608  bytes 317112 (309.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1754  bytes 215919 (210.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 68  bytes 5920 (5.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 68  bytes 5920 (5.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:13:1d:e9  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ifconfig 字段含义

名词 含义
ens33 网卡名词,ens33为CentOS默认网卡
inet 网卡IPV4地址
netmask 网卡掩码地址
broadcast 网卡广播地址
inet6 网卡IPV6地址
lo 主机的回环地址

启动/关闭 网卡

ifconfig eth34 up

ifconfig eth24 down

[root@localhost janyxe]# ifconfig ens33 down
[root@localhost janyxe]# ifconfig ens33 up

需要root 超级管理员才有权限操作

查看网卡信息 ifconfig 网卡名词


[root@localhost janyxe]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.162.126  netmask 255.255.255.0  broadcast 192.168.162.255
        inet6 fe80::e8ba:b334:3292:5eef  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e9:b9:08  txqueuelen 1000  (Ethernet)
        RX packets 167053  bytes 232445226 (221.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 48513  bytes 3057885 (2.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

curl 命令

概念

curl是一个命令行访问URL的计算机逻辑语言的工具

命令格式

curl [命令参数] URL

命令参数 含义
-k 设置网络设备IPv6的IP地址
-X 请求方法 定义请求请发,如POST、GET、DELETE等
-w %{http_code} 返回值带上http响应码
-d 添加请求body,默认使用 content-type application/x-www-form-urlencoded (H)
-H 添加header内容
-F 模拟 HTTP 表单数据提交
-o 将输出写入文件

curl 命令应用

curl 抓取网页输出到文件

[root@localhost janyxe]# curl -o baidu.html http://www.baidu.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2381  100  2381    0     0  63510      0 --:--:-- --:--:-- --:--:-- 66138
[root@localhost janyxe]# vim baidu.html

curl 请求接口

curl "https://123.sogou.com/hotlist" ^
  -H "Accept: */*" ^
  -H "Accept-Language: zh-CN,zh;q=0.9" ^
  -H "Cache-Control: no-cache" ^
  -H "Connection: keep-alive" ^
  -H "Origin: https://web.sogou.com" ^
  -H "Pragma: no-cache" ^
  -H "Referer: https://web.sogou.com/?21997" ^
  -H "Sec-Fetch-Dest: empty" ^
  -H "Sec-Fetch-Mode: cors" ^
  -H "Sec-Fetch-Site: same-site" ^
  -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36" ^
  -H "sec-ch-ua: ^\^" Not A;Brand^\^";v=^\^"99^\^", ^\^"Chromium^\^";v=^\^"101^\^", ^\^"Google Chrome^\^";v=^\^"101^\^"" ^
  -H "sec-ch-ua-mobile: ?0" ^
  -H "sec-ch-ua-platform: ^\^"Windows^\^"" ^
  --compressed

wget 命令

概念

curl是强大的URL传输工具,支持FILE, FTP, HTTP, HTTPS, IMAP, LDAP, POP3,RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET以及TFTP等协议,通过命令行发送HTTP请求以及下载文件

命令格式

wget [命令参数] URL

命令参数 含义
-O 以其他名称保存下载的文件
-P 将文件下载到指定目录
-c 支持断点续传
-b 支持后台下载
–tries 次数 增加重试次数

wget 命令应用

wget 下载

wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

wget 下载文件到本地目录


[root@localhost soft]# wget -P /root/soft -c https://download.redis.io/releases/redis-6.2.1.tar.gz
--2022-05-16 00:24:21--  https://download.redis.io/releases/redis-6.2.1.tar.gz
Resolving download.redis.io (download.redis.io)... 45.60.125.1
Connecting to download.redis.io (download.redis.io)|45.60.125.1|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2438367 (2.3M) [application/octet-stream]
Saving to: ‘/root/soft/redis-6.2.1.tar.gz’

100%[============================================================================================>] 2,438,367    545KB/s   in 4.4s

2022-05-16 00:24:27 (537 KB/s) - ‘/root/soft/redis-6.2.1.tar.gz’ saved [2438367/2438367]

[root@localhost soft]# ls
redis-6.2.1.tar.gz
w3cjava