linux中的网络指令ssh ifconfig netstat telnet curl scp

本文围绕Linux系统展开,介绍了远程操作指令(ssh),包括远程登录、拷贝文件等;还提及查看本地网络状态(ifconfig)、DNS查询、HTTP相关操作。同时说明了查询内网和外网IP的方法,最后阐述了本机/etc/hosts文件在本地解析域名、解决访问问题及部署时的妙用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一. 远程操作指令(ssh)

  • ssh 用户名@IP地址 远程登录

    • ssh root@192.168.100.111 这后会需要输入密码
    • ssh -p 10122 root@192.168.100.111 通过指定端口远程登录
  • scp 本地文件 远程文件: 远程拷贝文件, 指令执行过程中, 需要输入远程机的密码

    • scp a.txt root@192.168.100.111:/home/data/a.txt,运行后, 需要输入远程机的登录密码,用途是将本地的a.txt文件复制到100.111这台服务器的/home/data/a.txt
    • scp -r * root@192.168.100.111:/home/. 用途是将本地的所在目录内所有的文件以目录复制到远程目标服务器的/home/目录下.

二. 查看本地网络状态(ifconfig)

  • ifconfig: 也可以查看虚拟机的IP地址等情况
  • netstat : 查看网络连接情况, 主要是socket 文件, 本地进程之间连接也会采用socket文件
    netstat | wc -l: 查看网络连接数
    netstat -t tcp: 这个是真正的TCP网络连接
    sudo netstat -ntlp | grep 22查看端口被哪个应用占用
  • telnet查看网络上服务器IP地址及端口是否开通了服务
    telnet 192.169.100.120 8000

三. DNS查询

  • host
    host www.baidu.com
    host -t AAA www.baidu.com
  • dig 比host更详细

四. HTTP相关

  • curl
    curl https://www.lagou.com | head -n 10: curl的get请求
    curl -d {"x": 1} -H "Content-Type: application/json" -X POST http://www.someurl.com curl的post请求
    #查询内网
    ip a

五. 如何查询内网IP 和外网 IP

5.1 查询内网IP

[me@me2 ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:02:3e:00 brd ff:ff:ff:ff:ff:ff
    inet 172.12.18.3/20 brd 172.124.192.225 scope global dynamic eth0
       valid_lft 211586075sec preferred_lft 211586075sec
[me@me2 ~]$ ifconfig
br-401ccaa18274: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.19.0.1  netmask 255.255.0.0  broadcast 172.19.255.255
        ether 02:42:e7:2b:cb:f3  txqueuelen 0  (Ethernet)
        RX packets 794280787248  bytes 1187919946664686 (1.0 PiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 34976720104  bytes 42806601080659 (38.9 TiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.12.18.3  netmask 255.255.240.0  broadcast 172.124.192.225
        ether 00:16:3e:02:3e:00  txqueuelen 1000  (Ethernet)
        RX packets 794280787261  bytes 1187919946681910 (1.0 PiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 34976720108  bytes 42806601080975 (38.9 TiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

inet: 后面的即为内网 IP

5.2 查询外网IP

[me@me2 ~]$ curl ifconfig.me
39.104.51.192
[me@me2 ~]$ curl ip.me
39.104.51.192

六. 本机/etc/hosts 妙用

/etc/hosts 文件是一个用于在计算机上设置主机名与IP地址映射的文本文件。
它可以在不需要DNS服务器的情况下,用于本地解析域名。
例如:访问github时图裂、加载慢的问题。
https://github.com/521xueweihan/GitHub520

# GitHub520 Host Start
140.82.113.26                 alive.github.com
140.82.112.6                  api.github.com
185.199.109.153               assets-cdn.github.com
185.199.111.133               avatars.githubusercontent.com

例如:部署的时候可以自定义dns域名
192.168.0.100 memect.mysql
配置文件可用memect.mysql代替IP.
迁移时只需修改hosts文件IP部分即可。

https://raw.hellogithub.com/hosts # 可用这个hosts文件

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值