【小菜鸟之---Linux网络配置】

文章目录

  • 1【子网和网关】
  • 2【网络连接模式】
  • 3【ifconfig-查看网络接口信息】
    • 3.1 查询网络接口信息
    • 3.2 ifconfig——设置网络接口参数
      • 【**设置网络参数的方式**】
      • 【**临时设置**】
      • **【永久设置】**
  • 4【hostname-主机信息】
    • 4.1 查看主机名
    • 4.2 主机名修改
    • 4.3 查看本机ip
  • 5【route-路由表信息】
    • 5.1【route-路由记录查看】
    • 5.2【route-路由记录设置】
  • 6【netstat-查看网络连接】
  • 7【ss-socket统计信息】
  • 8【nmcli】
  • 9【ping-网络链接测试】
  • 10【traceroute-跟踪数据包】
  • 11 【nslookup-域名解析】
  • 12【arp-地址解析命令】
  • 13【curl- 测试】
  • 14【远程连接】
  • 15【主机映射文件】

1【子网和网关】

子网IP(Subnet IP)和网关IP(Gateway IP)是网络配置中的两个重要概念。


1. 子网IP:子网IP是指在一个局域网内部,可以被分配给主机的IP地址范围。例如,如果一个局域网的子网掩码是255.255.255.0,那么这个局域网内部可以有256个IP地址(从0到255),其中第一个IP地址(0)通常被用来表示整个网络,最后一个IP地址(255)通常被用来进行广播,所以实际上可以被分配给主机的IP地址只有254个(从1到254)。2. 网关IP:网关IP是指在一个局域网中,用来连接其他网络(例如互联网)的设备的IP地址。其他设备如果要访问局域网之外的网络,就需要通过这个网关。在大多数情况下,网关设备就是路由器,所以网关IP通常就是路由器的IP地址。​	在配置网络时,我们需要为每个主机分配一个子网内的IP地址,并设置正确的网关IP,这样主机才能正确地访问内部网络和外部网络。

2【网络连接模式】

1.桥接模式虚拟机直接连接外部物理网络,主机起到了网桥的作用。这种模式下,虚拟机可以访问到外部网络,外部网络也可以使用虚拟机。
2.NAT模式虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换设备(NAT)对IP进行转换.虚拟机通过共享主机ip可以访问外部网络,而外部网络无法访问虚拟机。
3.仅主机模式虚拟机和主机共享一个专用网路,和外部网络无法通信。

3【ifconfig-查看网络接口信息】

3.1 查询网络接口信息

1. 查询所有网络接口信息 参数-a(ifconfig -a显示所有活动及非活动的连接)
[root@iau ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.58.129  netmask 255.255.255.0  broadcast 192.168.58.255inet6 fe80::20c:29ff:fe91:8277  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:91:82:77  txqueuelen 1000  (Ethernet)RX packets 80  bytes 10762 (10.5 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 116  bytes 13190 (12.8 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 345  bytes 28844 (28.1 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 345  bytes 28844 (28.1 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens160:第一块以太网卡的名称。“ens160"中的"en"是”"EtherNet”"的缩写,表示网卡类型为以太网,"s"表示热插拔插槽上的设备(hot-plugslot.·数字“160”表示插槽编号。lor“回环"网络接口,“1o"是"1oopback"的缩写,它不代表真正的网络接口,而是一个虚拟的网络接口,其IP地址默认是“127.0.0.1”。回环地址通常仅用于对本机的网络测试。

2.查看指定网络接口配置
[root@iau ~]# ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.58.129  netmask 255.255.255.0  broadcast 192.168.58.255inet6 fe80::20c:29ff:fe91:8277  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:91:82:77  txqueuelen 1000  (Ethernet)RX packets 18553  bytes 25228645 (24.0 MiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 8033  bytes 443666 (433.2 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0(1)第一行:以太网卡的名字
(2)第二行:网卡的IP地址、子网掩码、广播地址
(3)第三行:IP v6地址
(4)第四行:Ethernet(以太网)表示连接类型:ether:表示为网卡的MAC地址
(5)第五行:接受数据包个数、大小统计信息
(6)第六行:异常接受包的个数、如丢包量、错误等
(7)第七行:发送数据包个数、大小统计信息
(8)第八行:发送包的个数、如丢包量、错误等

3.2 ifconfig——设置网络接口参数

设置网络参数的方式

1、临时配置—使用命令调整网络参数

​ 简单、快速,可直接修改运行中的网络参数,一般只适合在调试网络的过程中使用,系统重启以后,所做的修改将会失效。

2、固定设置:通过配置文件修改网络参数

​ 修改各项网络参数的配置文件,适合对服务器设置固定参数时使用,需要重载网络服务或者重启以后才会生效。

临时设置

  1. 设置ip地址,子网掩码

    #ifconfig 网络接口 ip地址 【netmask 子网掩码】 or ifconfig 网络接口 ip地址  【/子网掩码长度】ifconfig ens160 192.168.58.129 netmask 255.255.255.0
    ifconfig ens160 192.168.58.129/24
  2. 开启关闭网卡

    这两个命令在较旧的Linux系统中仍然有效,但在一些新的Linux发行版中可能已经被弃用。
    ifconfig ens160 up
    ifconfig ens160 down
    #新命令开关网络接口
    #开启
    ifup ens160
    #关闭
    ifdown ens160
  3. 设置虚拟网络接口

    #ifconfig 网络接口:序号 ip地址
    sudo ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0 up
    #这个命令将创建一个名为eth0:0的虚拟网络接口,并将其配置为具有IP地址192.168.1.100和子网掩码255.255.255.0。通过将"eth0:0"替换为所需的接口名称和配置信息,可以创建不同的虚拟网络接口。
    

【永久设置】

  1. 进入配置文件目录进行编辑
cd /etc/NetworkManager/system-connections
vim  ens160.nmconnection
  1. 修改(网卡配置文文件)
Tips: 主要是[ipv4]编辑1.method设置为manual表示手动。2.address1等号后面第一个就是你的静态ip,可以使用原来分配的,斜杆后的24表示掩码255.255.255.0。后面的ip表示网关,前3位与静态ip一样,最后一位最好取2,取1的时候可能出现ping不通外网。3.dns可以用114.114.114.144或者8.8.8.8。如果有多个,用分号连接。
[root@CentOS9-1 /]# cd /etc/NetworkManager/system-connections
[root@CentOS9-1 system-connections]# ls
ens160.nmconnection
[root@CentOS9-1 system-connections]# cat ens160.nmconnection [connection]
id=ens160
uuid=8be26373-3a5f-338f-973a-6e08307d77ff
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1704548551[ethernet][ipv4]
method=manual
address=192.168.58.129/24,192.168.58.2
dns1=192.168.58.2 [ipv6]
addr-gen-mode=eui64
method=auto[proxy]  

4【hostname-主机信息】

4.1 查看主机名

[root@iau ~]# hostname
iau.com

4.2 主机名修改

  1. 临时修改

    [root@iau ~]#hostname  [name]
    
  2. 永久修改

    #1.命令行
    [root@iau ~]#hostnamectl set-hostname  [name]#2.配置文件 
    [root@iau ~]#vim /etc/hostname
    

4.3 查看本机ip

[root@iau ~]# hostname -i
::1 127.0.0.1
[root@iau ~]# 

5【route-路由表信息】

5.1【route-路由记录查看】

route:查看或设置主机中路由表信息
route -n:以数字形式显示路由信息
[root@CentOS9-1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.58.2    0.0.0.0         UG    100    0        0 ens160
192.168.58.0    0.0.0.0         255.255.255.0   U     100    0        0 ens160

路由表主要构成解析:
Destination: 目标网络ID,表示可以到达的目标网络ID, 0.0.0.0/0 表示所有未知网络,又称为默认路由,优先级最低
**Genmask:**目标网络对应的netmask
Iface: 到达对应网络,应该从当前主机哪个网卡发送出来
**Gateway: **到达非直连的网络,将数据发送到临近(下一个)路由器的临近本主机的接口的IP地址,如果是直连网络,gateway是0.0.0.0
**Metric: **开销cost,值越小,路由记录的优先级最高

5.2【route-路由记录设置】

​ route 命令不仅可以用来查看路由表信息,还可以用来添加、删除静态的路由条路,其中也包括设置默认网关地址。默认网关记录是一条特殊的静态路由条目。添加到指定网段的路由记录。默认网关(路由)的IP地址应与本机其中一个接口的IP地址在同一个网段内。

​ 默认网关:默认网关(Default Gateway)是指在计算机网络中,当一个设备需要发送数据到不在本地子网内的目标地址时,将数据包发送到的下一跳路由器或者网络设备。默认网关通常是本地子网中的路由器的IP地址。

# 1.添加指定网段的路由记录,结合“net”指定目标网段的地址,结合“gw”指定下一跳路由器的IP地址(gatway )route add  -net 网段地址  gw  iP地址##示例:##添加静态路由,本机访问另一个网段192.168.158.0/24的数据都发给网关192.168.58.129
[root@iau ~]# route add -net 192.168.58.0/24 gw 192.168.58.129       
[root@iau ~]# route  -n      ##确认已添加成功
root@iau /]# route -n
Kernel IP routing table
Destination     Gateway              Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.58.2(网关)    0.0.0.0         UG    100    0        0 ens160
192.168.58.0    0.0.0.0              255.255.255.0    U     100    0        0 ens160
192.168.58.0    192.168.58.129  255.255.255.0         UG    0      0        0 ens160
# 2.删除指定网段的路由记录 route  del  -net  网段地址[root@iau ~]# route del -net 192.168.58.0/24 gw 192.168.58.129     
# 3.向路由表中添加默认网关记录route  add  default  gw IP地址[root@iau ~]# route add default  gw 192.168.58.9  
[root@iau ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.58.9    0.0.0.0         UG    0      0        0 ens160
0.0.0.0         192.168.58.2    0.0.0.0         UG    100    0        0 ens160
# 4.删除路由表中默认的网关记录route  del  default  gw IP地址[root@iau ~]# route del default  gw 192.168.58.9 

6【netstat-查看网络连接】

查看当前操作系统的网络连接状态、路由表、接口统计等信息,它是了解网络状态及排除网络服务故障的有效工具。

#常用参数:
-n:以数字的形式显示相关的主机地址、端口等信息
-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要root权限)
-t:查看TCP (Transmission Control Protocol,传输控制协议)相关的信息
-r:显示路由表信息.
-l:显示处于监听Listenin状态的网络连接及端口信息
-u:显示 UDP (User Datagram Protocol,用户数据报协议〉协议相关的信息[root@iau ~]#  netstat -lnat | grep 80
tcp        0      0 127.0.0.1:10050         127.0.0.1:40680         TIME_WAIT  
tcp        0      0 127.0.0.1:10050         127.0.0.1:44480         TIME_WAIT  
tcp6       0      0 :::80                   :::*                    LISTEN   

7【ss-socket统计信息】

​ ss 命令:也可以查看网络连接情况,主要用于获取 socket统计信息,它可以显示和 netstat命令类似的输出内容。但ss 的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比 netstat更快速更高效。

​ 通过ss命令,你可以快速查看系统上的套接字信息,包括连接状态、本地地址、远程地址、端口号等。这对于诊断网络问题、监控网络连接等任务非常有用。

​ 当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。ss快的秘诀在于,它利用到了TCP协议栈中t.cp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux内核中第一手的信息,这就确保了ss的快捷高效ss命令是Linux centos 7中iproute软件包的一部分,默认已经安装。

#常见选项:
-h:help 通过该选项获取更多的使用帮助 
-v:version 显示软件的版本号 
-t:tcp 显示TCP协议的sockets 
-u:udp 显示UDP协议的sockets 
-n:numeric 不解析服务的名称,如“22”端口不会显示成“ssh” 
-l:listening 只显示处于监听状态的端口 
-p:processes 显示监听端口的进程 
-a:all 对TCP协议来说,既包含监听的端口,也包含建立的连接 
-r:resolve 把ip解释为域名,把端口号解释为协议名称 
ss:只有在访问时才能查看到端口 

8【nmcli】

**nmcli **是 NetworkManager 的命令行工具。

nm 代表 NetworkManager,cli 代表 Command-Line 命令行。

使用 nmcli 时,NetworkManager 必须保持开启。

NetworkManager

使用 nmcli 时,NetworkManager 必须保持开启。

NetworkManager 的相关命令:

#查看运行状态:
systemctl status NetworkManager
#启动:
systemctl start NetworkManager
#重启:
systemctl restart NetworkManager
#关闭:
systemctl stop NetworkManager
#查看是否开机启动:
systemctl is-enabled NetworkManager
#开机启动:
systemctl enable NetworkManager
#禁止开机启动:
systemctl disable NetworkManager
nmcli device show #关于系统上网络设备的信息
nmcli n           #查看networkmanager启动与否
nmcli c reload    #重新加载配置文件,c是connection的缩写,connect,co之类的替代都可以
nmcli c up ens160 #启动你设置的网卡ens160
nmcli d           #查看网卡状态,也可以用ifconfig存在的问题:如果出现:未知的连接 “ens160”,大概率是配置文件存在语法和拼写错误网卡能启动,但主机连接不上虚拟机,大概率是网关设置错误,比如最后一位设置成1.配置前自动ip能访问,静态ip不能访问,只有配置文件存在问题的可能性,不需要去设置防火墙之类的。

9【ping-网络链接测试】

ping [选项] 目标主机-i 指定间隔时间
-c 指定ping次数
-s 指定数据包大小
可能会发生以下情况:“Destination Host Unreacheble”表示目的主机不可达,可能目标地址不存在或者目的主机已关闭.“Netwokr is unreacheable”表示没有可用的路由记录(如默认网关),无法到达目标主机所在网络.也有可能因为网络中存在影响通信过程稳定的因素(如网卡故障、病毒或网络攻击)时,会看到“Request timeout”的反馈结果,表示与目的主机连接超时(数据包响应缓慢或丢失).也还有可能是目标主机防火墙的限制导致连接超时反馈.
扩展:系统打开了一个服务,会自动分配一个端口号这个端口号如果是众所周知 http 80;  ssh  20;   ftp  20  21;  https   443等,会占用固定的端口号如果不是众所周知的,就会随机生成一个端口号.

10【traceroute-跟踪数据包】

​ 测试从当前主机到目的主机之间经过了哪些网络节点,并显示了各中间节点的连接状态(响应时间)对于无法显示的节点,连接状态将显示“*”,默认发送数据包大小事40字节,默认使用ICMP协议。
例:从本主机到百度之间,需要跨越一个路由器192.168.58.2
​ -p 使用UDP端口测试
​ -q 3 指定测试时候发送的数据包个数
​ -n 以IP的方式进行连接测试,避开DNS解析

​ traceroute命令能比ping命令更加准确的定位网络连接的故障点(中断点),执行命令也会比ping稍慢一点。
​ 在网络测试与排错过程中,通常会先试用ping命令测试与目的主机的网络连接,如果发现有故障,再来使用traceroute命令跟踪查看故障在哪个中间节点(按Ctrl+C终止)。

# traceroute 目标主机地址
[root@iau ~]# traceroute qq.com
traceroute to qq.com (112.60.14.252), 30 hops max, 60 byte packets1  _gateway (192.168.58.2)  2.462 ms  2.379 ms  1.268 ms2  * * *3  * * *4  * * *

11 【nslookup-域名解析】

  • 当域名解析出现异常的时候,将无法再使用域名的形式来访问网络中的Web站点、电子邮件系统等服务
  • nslookup是专门用来测试域名解析的专用工具,使用时只要指定要解析的目标域名作为参数即可
# nslookup 目标主机地址 [DNS服务器地址][root@CentOS9-1 ~]# nslookup www.baidu.comServer:		192.168.58.2  #所使用的的DNS服务器
Address:	192.168.58.2  #53 ##DNS的服务器IP地址和端口号Non-authoritative answer:  ##以下为DNS解析的反馈结果
www.baidu.com	canonical name = www.a.shifen.com.
Name:	www.a.shifen.com
Address: 36.155.132.76
Name:	www.a.shifen.com
Address: 36.155.132.3
Name:	www.a.shifen.com
Address: 2409:8c20:6:1d55:0:ff:b09c:7d77
Name:	www.a.shifen.com
Address: 2409:8c20:6:1135:0:ff:b027:210c能够成功反馈要查询域名的IP地址,则表示域名解析没有问题,否则需要根据实际反馈情况来判断故障原因.

12【arp-地址解析命令】

ARP(Address Resolution Protocol)是一种用于在网络中将IP地址解析为MAC地址的协议。ARP命令是用于查看和管理ARP缓存的命令。在命令行界面中,可以使用arp命令执行以下操作:arp -a 显示当前计算机的ARP缓存表,包含了已解析的IP地址和对应的MAC地址。arp -d <IP地址>:删除指定IP地址的ARP缓存项。arp -s <IP地址> <MAC地址>:手动添加一个ARP缓存项,将指定的IP地址和MAC地址绑定。arp -n:在某些操作系统中,显示ARP缓存表时,可以使用此命令来显示IP地址而非主机名。ARP命令在网络故障排除和管理中非常有用。通过查看ARP缓存表,可以了解到目标设备的MAC地址,以及与之通信的网络设备之间的关联关系。如果出现网络连接问题,可以使用ARP命令来检查ARP缓存,清除无效的缓存项,或者手动添加正确的缓存项。
#示例
[root@iau ~]# arp -a
? (192.168.58.1) at 00:50:56:c0:00:08 [ether] on ens160
? (192.168.58.9) at <incomplete> on ens160
? (192.168.58.130) at <incomplete> on ens160
_gateway (192.168.58.2) at 00:50:56:fa:98:d0 [ether] on ens160192.168.58.1的MAC地址为00:50:56:c0:00:08,这表明系统知道如何到达192.168.58.1,并且已经解析了其MAC地址。192.168.58.9的MAC地址是<incomplete>,这表示系统尚未获取到192.168.58.9的MAC地址,可能是因为尚未与该主机通信。192.168.58.130的MAC地址也是<incomplete>,表示系统尚未获取到192.168.58.130的MAC地址。_gateway(192.168.58.2)的MAC地址是00:50:56:fa:98:d0,这是默认网关的MAC地址,系统知道如何到达默认网关。对于<incomplete>的条目,通常是因为系统尚未与该IP地址的主机进行通信,因此尚未获取到MAC地址。当系统与该主机进行通信时,ARP缓存会更新并显示正确的MAC地址。

13【curl- 测试】

一、curl 简介

cURL:全称 client URL,客户端 URL 工具。
cURL 是一种常用的命令行工具,主要用来请求 Web 服务器,也可以用来下载文件。
一般情况下,Linux/Windows/Mac 系统都默认安装了 cURL 指令,所以我们可以直接使用。

常见选项-A/--user-agent <string>             设置用户代理发送给服务器
-b/--cookie <name=string/file>    	 cookie字符串或文件读取位置
-c/--cookie-jar <file>               操作结束后把cookie写入到这个文件中
-C/--continue-at <offset>            断点续转
-D/--dump-header <file>              把header信息写入到该文件中
-e/--referer                         来源网址
-f/--fail                            连接失败时不显示http错误
-o/--output                          把输出写到该文件中
-O/--remote-name                     把输出写到该文件中,保留远程文件的文件名
-r/--range <range>                   检索来自HTTP/1.1或FTP服务器字节范围
-s/--silent                          静音模式。不输出任何东西
-T/--upload-file <file>              上传文件
-u/--user <user[:password]>          设置服务器的用户和密码
-w/--write-out [format]              什么输出完成后
-x/--proxy <host[:port]>             在给定的端口上使用HTTP代理
-#/--progress-bar                    进度条显示当前的传送状态

二、使用指南

1️⃣. 发送各种方式的请求-X 参数指定 HTTP 请求的方法。发送 GET 请求(不携带数据)
curl www.example.com伪造referer,让服务器其以为你是从www.linux.com点击某个链接过来的
curl -e "www.linux.com" http://mail.linux.com发送 GET 请求(携带数据,借助 -G-dcurl -G -d 'q=kitties' -d 'count=20'  www.example.com​    发送 POST 请求(不携带数据)
​    curl -X POST www.example.com
​      
​    发送 POST 请求(携带数据:借助 -d 参数)
​    curl -X POST -d '{"user":"123","pass":"456"}' www.example.com 
​        另外,使用 -d 参数以后,HTTP 请求会自动加上标头 Content-Type : application/x-www-form-urlencoded,并且会自动将请求转为 POST 方法,因此可以省略-X POST。
curl -d '{"user":"123","pass":"456"}' www.example.com ​    
​    发送 PUT 请求
​    curl -X PUT www.example.com​    
​    发送 DELETE 请求
​    curl -X DELETE www.example.com2️⃣. 下载文件-O 参数将服务器回应保存成文件,并将 URL 的最后部分当作文件名。一般下载(默认路径 + 文件名):命令行处于哪一个目录,该指令就会将文件保存在哪。curl -O www.example.com/123​    
​    进阶下载(指定下载路径 + 文件名):借助小写的-o参数,这里注意小写的 -o 要在前面。
​    
​    curl -o ./download/myIndex.html -O www.example.com​    
​    断点续传( -C - 标识续传)
​    
​    curl -C - -o ./download/myIndex.html -O www.example.com3️⃣. 上传文件-F 参数用来向服务器上传二进制文件。一般上传:该命令会给 HTTP 请求加上标头 Content-Type: multipart/form-data ,然后将文件上传。curl -F 'file=@old.png' baidu.com​    
​    进阶上传:指定上传类型 + 重命名上传文件
​    
​    curl -F 'file=@old.png;type=image/png;filename=new.png' baidu.com4️⃣. Header 信息-H 参数会在请求当中添加 Header 参数。-I 参数会打印服务器返回的 HEAD 信息。单个请求头curl -H 'Accept-Language: en-US' www.example.com​    
​    多个请求头
​    
​    curl -H 'Accept-Language: zh-CN' -H 'accept: text/html' www.example.com​    
​    设置 Referer 标头(用来规避一些网站的防盗链设置)
​    
​    curl -H 'Referer: baidu.com' www.example.com​    
​    打印服务器返回的 HEAD 信息
​    
​    curl -I https://www.example.com5️⃣. Cookie 管理-c 参数保存服务器发送回来的 Cookie。-b 参数向服务器发送 Cookie。保存服务器返回的 Cookie 信息:命令行处于哪一个目录,Cookie文件就会保存在哪。curl -c cookie.txt baidu.com​    
​    向服务器发送 Cookie :
​    
​    curl -b 'name=123&pass=456' baidu.com​    
​    或者
​    
​    # 直接读取本地文件中的 Cookie 信息curl -b cookie.txt baidu.com​        6️⃣. 其他使用情况-k 参数指定跳过 SSL 检测。curl -k https://www.example.com​    
​    -L 参数让 HTTP 请求跟随服务器的重定向(curl 默认不跟随重定向)。
​    
​    curl -L baidu.com​    
​    --limit-rate参数限制访问速度,可作下载限速(默认单位是“字节”)。
​    
​    curl --limit-rate 2048 -O baidu.com​    
​    -u 参数用来设置服务器认证的用户名和密码。
​    
​    curl -u 'admin:123456' baidu.com​     上面命令设置用户名为 admin ,密码为 123456 ,然后自动为其加上 HTTP 标头 Authorization: Basic … 。
​    
​    -v 参数输出通信的整个过程,用于调试。
​    curl -v www.example.com

14【远程连接】

​ SSH(Secure Shell)是一种加密的网络协议,用于通过不安全的网络(如互联网)安全地进行远程登录和数据传输。使用SSH协议,可以在远程计算机上执行命令、传输文件和管理远程系统。

要通过SSH进行远程登录,可以按照以下步骤进行操作:在本地计算机上,打开终端或命令提示符。使用以下命令连接到远程计算机:ssh username@remote_ip_address将"username"替换为您在远程计算机上的用户名,"remote_ip_address"替换为远程计算机的IP地址或主机名。例如,如果你的用户名是"john",远程计算机的IP地址是"192.168.1.100",则命令将如下所示:ssh john@192.168.1.100如果是第一次连接到远程计算机,系统会提示确认远程计算机的指纹。输入"yes"以继续连接。系统会要求输入远程计算机上的密码。输入密码时,终端不会显示任何字符。输入密码后按Enter键。如果密码正确,将成功连接到远程计算机,并在远程计算机上获得一个命令行提示符。现在,可以在远程计算机上执行命令、管理文件等操作。SSH远程登录需要远程计算机上已启用SSH服务,并且必须具有正确的用户名和密码才能成功登录。确保拥有远程计算机的登录凭据,并且远程计算机上的SSH服务已正确配置和运行。

15【主机映射文件】

​ etc/hosts 文件中记录着一份主机名与 IP 地址的映射关系表,一般用来保存经常需要访问的主机的信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向DNS 服务器查询。

​ 用户可以手动指定特定主机名与IP地址之间的映射关系,从而绕过DNS服务器进行主机名解析。这对于在本地网络中进行主机名解析、防止访问特定网站或测试网站配置时非常有用。

默认情况下,系统首先从hosts文件查找解析记录

hosts文件只对当前的主机有效

hosts文件可减少DNS查询过程,从而加快访问速度

# Comments start with a hash symbol
127.0.0.1       localhost
192.168.1.10    example.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/6556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kotlin: Expecting a ‘>‘

数组值为任意类型&#xff0c;声明报错: Kotlin: Expecting a > var anyArr1: Array<Any?> arrayOf("a", "b", "c", true, 34)原因是&#xff1a; // var anyArr1: Array<Any?> arrayOf("a", "b", "c…

发电厂智能巡检机器人:让发电厂更安全、更高效

在发电厂的众多应用场景中&#xff0c;升压站、化学车间、空冷塔、输煤皮带、综合管廊等&#xff0c;一直以来都是人工巡检的主战场。然而&#xff0c;这些场所环境极为复杂&#xff0c;人工巡检面临着诸多难题&#xff0c;强度大、频率低、间隔长等问题突出。这使得设备在运行…

c++多线程基础

简介 c多线程基础需要掌握这三个标准库&#xff1a;std::thread, std::mutex, and std::async。 1. Hello, world #include <iostream> #include <thread>void hello() { std::cout << "Hello Concurrent World!\n"; }int main() {std::thread…

[NSSCTF]prize_p2

题目 打开是一段js代码 // 导入所需的模块 const { randomBytes } require(crypto); // 导入 crypto 模块&#xff0c;用于生成随机字节 const express require(express); // 导入 Express.js 模块&#xff0c;用于构建 Web 应用程序 const fs require(fs); // 导入文件系…

论文笔记:(Security 22) 关于“二进制函数相似性检测”的调研

个人博客链接 注&#xff1a;部分内容参考自GPT生成的内容 [Security 22] 关于”二进制函数相似性检测“的调研&#xff08;个人阅读笔记&#xff09; 论文&#xff1a;《How Machine Learning Is Solving the Binary Function Similarity Problem》&#xff08;Usenix Securi…

Golang中实现调用Windows API向指定目标发送ARP请求

简介 Go库中很多实现的arp都是支持osx/linux/bsd之类的&#xff0c; 但几乎没有支持windows的&#xff0c; 也试了一些方式&#xff0c; 目前还是选用调用windows的API&#xff0c; 记录一下这一次windows的API的调用经验。 实现 代码 package main/* #cgo CFLAGS: -I. #cgo …

Reactor模型详解

目录 1.概述 2.Single Reactor 3.muduo库的Multiple Reactors模型如下 1.概述 维基百科对Reactor模型的解释 The reactor design pattern is an event handling pattern for handling service requests delivered concurrently to a service handler by one or more inputs.…

自定义redisTemplate实现自定义序列化

由于我们使用springboot集成的redis工具的时候&#xff0c;redisTemplate内部是采用了jdk默认的序列化工具来对我们存储的数据进行序列化的&#xff0c;这会导致我们在redis中存储的序列化后的数据和我们原来的数据格式在查看的时候会有偏差&#xff0c;所以我们需要自定义redi…

「PHP系列」PHP7 新特性:use语句、intdiv() 函数、Session 选项

文章目录 一、use语句1. 导入类2. 导入函数3. 导入多个类或函数4. 为类或函数提供别名 二、intdiv() 函数三、Session 选项1. 设置会话保存路径2. 自定义会话处理程序3. 设置会话名 四、相关链接 一、use语句 在 PHP 7 中&#xff0c;use 语句通常与命名空间&#xff08;names…

OpenCV如何模板匹配(59)

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV如何实现背投(58) 下一篇 &#xff1a;OpenCV在图像中寻找轮廓(60) 目标 在本教程中&#xff0c;您将学习如何&#xff1a; 使用 OpenCV 函数 matchTemplate()搜索图像贴片和输入…

批量生成sql语句

批量生成sql语句 利用表格直接生成 # 例&#xff1a;A2 表示 A列第二行 公式表示为 ,A2,# 新增 CONCATENATE("insert into users (id,code,name) values (null,",A2,",",B2,");")# 修改 CONCATENATE("update users set name ",B3,&…

c++ 继承与派生的简单理解

继承与派生概念&#xff1a; 派生是一种创建新类的方式&#xff0c;在原来已有被继承类的基础上&#xff0c;不影响原来的类&#xff0c;不改变原来类的代码&#xff0c;实现对于功能的扩展&#xff0c;在原有被继承类的基础上快速增加新的功能&#xff1b;新创建的类可以来源…

第四篇:记忆的迷宫:探索计算机存储结构的奥秘与创新

记忆的迷宫&#xff1a;探索计算机存储结构的奥秘与创新 1 引言 1.1 计算机存储系统的发展与重要性 在现代计算技术中&#xff0c;存储系统承担着非常关键的角色&#xff0c;它不仅负责信息的持久保存&#xff0c;同时确保高效的数据访问速度&#xff0c;影响着整体系统性能的…

《Fundamentals of Power Electronics》——基础交流建模方法

PWM整流器小信号交流模型建模的主要步骤为&#xff1a; (a)利用小纹波近似的动态版本&#xff0c;建立与电感和电容波形的低频平均值有关的方程&#xff1b; (b)平均方程的扰动和线性化&#xff1b; (c)交流等效电路模型的建立。 以下图buck-boost电路为例进行分析。 首先测…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑碳捕集和电转气的综合能源系统优化调度》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

SpringBoot与SpringMVC的区别

SpringBoot与SpringMVC的区别是什么&#xff1f; SpringBoot和SpringMVC是Java开发中常用的两个框架&#xff0c;它们都是由Spring框架所提供的&#xff0c;但在功能和使用方式上有着一些区别。本文将分别介绍SpringBoot和SpringMVC的特点和区别。 一、SpringBoot的特点&#…

Qt服务器端与客户端交互

Qt做客户端与服务器端交互第一步引入network 第一步引入network后继续编程首先界面设计 创建server和socket 引入QTcpServer&#xff0c;QTcpSocket MainWindow.h代码如下 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QTcpServer&…

13_Qt中的快捷键

Qt Creator的一些快捷操作&#xff1a; 项目管理&#xff1a; Build&#xff1a;以增量方式构建项目。Rebuild&#xff1a;重新构建项目。Clearn&#xff1a;清除项目构建过程中产生的所有中间文件。Run qmake&#xff1a;使用qmake/cmake重新构建项目。会重新执行UIC、MOC、…

如何面对并发下的bug

整理总结自蒋炎岩老师的b站课程&#xff0c;https://jyywiki.cn/OS/2022/index.html 并发bug与应对 应对bug的方法 在代码里边增加很多检查(加断言) #include "thread.h"unsigned long balance 100;void Alipay_withdraw(int amt) {if (balance > amt) {usleep(…

什么是网络安全和网络隐私?

什么是网络安全?这个是我最感兴趣的话题,网络安全说白了就是在网络上的安全,跟现实中一样,现实中为了家里的安全,我们会给家门上锁,会装监控,农村的话可能还会养一条狗,只有我们让别人进我们家,别人才能进来,对于计算机来说也是一样的,我们会设置账户的密码,会设置防火墙,会安…