linux部分网络相关命令

1、网络通信

  • 计算机通信是面向计算机和数据终端之间的一种通信方式,可以实现计算机与计算机之间、人与计算机之间的数据生成、存储、处理和传递,要求处于不同地理位置的计算机能够知道对方的存在,才能互相传递消息、共享资源

  • 网络协议是计算机网络之间进行数据交互而建立的一种规则

2、OSI七层模型(开放系统互联参考模型)

网络层次的划分是为了让不同的计算机厂家,生产出的计算机都能够互相通信,也能够在大范围之间进行计算机网络交互

OSI模型

层概念

层功能

协议

应用层

最接近用户的应用层

提供文件传输,邮件服务、文件共享、数据加密等

http、ftp、stmp、dns、nfs等

表示层

会话层

传输层

传输

提供端对端的接口 ip port

TCP、UDP

网络层

网络

为数据包选择路由

IP、ICMP、BGP协议等

数据链路层

物理链路层

以二进制的数据形式在物理媒介上进行数据传输

ISO@2100

物理层

  • 应用层

    • 主要是通过进程间的数据交互来完成特定的网络应用

    • 对于不同的网络应用需要用不同的网络协议,如域名解析协议(DNS),邮件传输协议(SMTP)

    • 域名解析协议(DNS domain name system),是互联的一个分布式数据库,主要存储ip和域名的对应关系,能够让普通用户更放便的使用、访问互联网

    • Http超文本传输协议,初衷是为了方便发布和接收html文件的目的

  • 传输层

    • 向两台主机之间的进程提供数据传输

    • 常用协议

      • TCP(传输控制协议):提供面向连接的,可靠的数据传输服务

      • UDP(用户数据协议):提供面向无连接的,不保证数据安全性

3、ifconfig(只能用root用户操作)

用于配置网卡ip地址信息等网络参数或者查看显示网络接口信息,还能够临时性的配置ip地址、子网掩码、广播地址、网关信息等

  • 使用 man ifconfig或ifconfig -h查看ifconfig用法

  • 查看网络地址信息(docker0是一个网卡)

    • ifconfig查看所有网络接口信息

    • ifconfig docker0查看指定的网卡信息

  • 开启或关闭网卡,谨慎使用

    • ifconfig docker0 down

    • ifconfig docker0 up

  • 设置ip地址

    • ifconfig docker0:0 192.168.81.151 netmask 255.255.255.0 up:添加一个新的ip地址

    • ifconfig docker0:1 192.168.81.161/24 up:第二种方式

  • 修改机器的mac地址信息

    • ifconfig docker0 hw ether 00:0a:cc:21:43:dd
  • 永久修改网络设备信息,需要修改配置文件

    • /etc/sysconfig/network-scripts/ifcfg-设备名

4、route路由

计算机之间的数据传输必须经过网络,网络可以直接连接主机也可以通过一个一个的结点去连接,路由可以理解为互联网的中转站,网络中的数据包就是通过一个一个的路由器转发到目的地的

  • 分类

    • 静态路由,由运维人员通过route命令管理

    • 动态路由,无需人为干预由路由器交换机自动分配

  • # 查看路由表信息,不进行dns解析
    > route -n/netstat -rn
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.1.1     0.0.0.0         UG    3003   0        0 wlan0
    # Destination:表示网络号,network的意思
    # Gateway:网关地址,网络是通过该ip出口,若显示的是0.0.0.0的ip表示该路由信息是从本机转发出去的
    # Genmask:子网掩码 ,ip地址配合子网掩码才是一个完整的网络信息
    # Flags:标记当前的网络状态
        # U表示up运行状态
        # G表示是一个网关路由器
        # H表示此网关是一个主机
        # !表示当前这个路由已经禁止
    
  • 添加删除网关信息

    • 网卡就是数据包不经过任何的设定由路由表最后经过的地址关口

    • 删除默认路由表

      • route del dafault
    • 添加一个网关地址

      • route add default gw 192.168.1.1

5、IP命令

> ip -h  
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { address | addrlabel | amt | fou | help | ila | ioam | l2tp |
                   link | macsec | maddress | monitor | mptcp | mroute | mrule |
                   neighbor | neighbour | netconf | netns | nexthop | ntable |
                   ntbl | route | rule | sr | tap | tcpmetrics |
                   token | tunnel | tuntap | vrf | xfrm }
       OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                    -h[uman-readable] | -iec | -j[son] | -p[retty] |
                    -f[amily] { inet | inet6 | mpls | bridge | link } |
                    -4 | -6 | -M | -B | -0 |
                    -l[oops] { maximum-addr-flush-attempts } | -br[ief] |
                    -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
                    -rc[vbuf] [size] | -n[etns] name | -N[umeric] | -a[ll] |
                    -c[olor]}
# OBJECT对象
# link网络设备
# address定义ipv4、ipv6的地址
# neighbour:查看ARP缓存地址(ARP用于解析mac地址)
# route路由表对象
# maddress:多播地址
# tunelIP上的通道
  • 查看显示网络设备信息

    • ip addr show

    • ip a

  • 制定网络设备显示信息

    • ip link show dev docker0

    • ip link show dev docker0显示详细信息

  • 关闭激活网络设备

    • ip link set docker0 down/up
  • 修改mac地址

    • ip link set docker0 address 00:0a:cc:21:43:dd
  • 添加ip地址信息

    • ip address add 192.168.81.101/24 dev docker0

    • ip address del 192.168.81.101/24 dev docker0

  • 给网卡添加别名

    • ip address add 192.168.81.201/24 dev docker0 label docker0:1
  • 检查路由信息

    • ip route
  • 检查ARP缓存

    • ip neighbour

6、netstat/ss

显示网络连接情况,路由表信息,端口状态等

  • 查看所有的网络连接情况

    • netstat -an:-a代表所有的socket信息,-n显示数字地址信息而非主机名

    • > netstat -an
      Active Internet connections (servers and established)
      Proto Recv-Q Send-Q Local Address           Foreign Address         State 
      # Proto socket使用的协议
      # Recv-Q 连接这个socket的用户还未拷贝的字节数
      # Send-Q 远程主机还未确认的字节数
      # Local Address socket本地的地址和端口号
      # Forign Address socket的远程主机地址和端口号
      # State socker的运行情况
          # ESTABLISHED socket有一个有效连接
          # SYN_SENT socket尝试建立一个连接
          # SYN_RECV 从网络上收到一个连接请求
          # FIN_WAIT1 连接已关闭,连接正在断开
          # FIN_WAIT2 连接已关闭,socket正在等待远程方终止
          # TIME_WAIT 在关闭之后,socket等待处理仍在网络中的分组
          # CLOSED socket未使用
          # CLOSE_WAIT 远程方已关闭,等待socket关闭
          # LAST_ACK 远程方中止,socket已关闭,等待确认
          # LISTEN socket监听进来的连接
          # CLOSING socket都已关闭,而还未将所有数据发出
          # UNKNOWN socket状态未知
      
  • 查看机器上正在运行的所有的端口及进程情况

    • netstat -tunlp

      • -t显示tcp的连接情况

      • -u显示udp的连接情况

      • -n不进行dns解析

      • -l只显示正在监听中的socket情况

      • -p显示出socket所属的进程和进程名情况

  • 检查是否运行某个端口

    • netstat -tunlp | grep 3306
  • 显示网络的接口情况

    • netstat -i

      • Iface 网络设备的名字

      • MTU 最大传输单元,单位是字节

      • RX-OK/TX-OK 正确接收/发送了多少数据包

      • RX-ERR/TX-ERR接收/发送数据包的时候丢弃了多少数据包,值最好是0,否则表示网络不健康有丢包的现象

      • RX-OVR/TX-OVR由于错误遗失了多少数据包

      • FLG标记

        • L回环地址

        • R此网络接口正在运行中

        • U接口正在处于活动的状态

        • B设置了广播地址

        • M接收所有的数据包

        • O在该接口上禁止arp

        • P端对端连接

7、telnet

检查远程主机端口是否打开了

  • 检测远程主机是否打开了22端口

    • telnet 192.168.81.1 22

8、ssh安全的远程连接命令

# ssh连接的是服务器上运行的sshd这个应用程序,且后台监听的是22端口
# 语法
ssh 用户名@ip地址
# -p port指定端口

8、wget

用于下载指定的url资源文件,非常稳定,无论网速好坏,还支持断点续传

  • 支持断点续传

  • 支持ftp及http协议下载

  • 支持代理

  • 下载文件

    • wget https://xxx.xx.xx/xx/xx.jpg

    • 指定保存文件的名字wget -O /tmp/a.jpg https://xxx.xx.xx/xx/xx.jpg

    • 限制下载速度wget --limit-rate=1k https://xxx.xx.xx/xx/xx.jpg

    • 支持断点续传的格式wget -c https://xxx.xx.xx/xx/xx.jpg

    • 后台下载,日志默认输出到wget-log中wget -b https://xxx.xx.xx/xx/xx.jpg

    • 设置客户端身份wget --user-agent=xxx https://xxx.xx.xx/xx/xx.jpg

    • 检测网站是否存活wget -q -T 2 -t 1 https://xxx.xx.xx/xx/xx.jpg

      • -q安静输出

      • -T访问超时时间

      • -t重试次数

      • 输入echo $?,结果为零表示网站存活,非零表示网站挂掉

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值