• linux 网络基础


    概念

    • OSI

    应用层     应用接口


     表示层     提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别


    会话层     会话层连接到传输层的映射;会话连接的流量控制;数据传输;会话连接恢复与释放;会话连接管理、差错控制


    传输层     建立主机端到端的链接,发送数据报文(解决进程间的通信)


    网络层     通过IP寻址来建立两个节点之间的连接,为源端的传输层送来的分组,选择合适的路由和交换节点,正确传送数据包(解决跨网络的主机通信问题)


    数据链路层   将比特组合成字节,再将字节组合成,使用链路层地址 (以太网使用MAC地址)来访问介质,并进行差错检测(解决相邻主机通信问题)


    物理层     实际最终信号的传输是通过物理层实现的。通过物理介质传输比特流


    • IP分类

    A类

    0 000 0000 -- 0 111 1111:1-127

    默认子网掩码:255.0.0.0

    网络数:127

    每个网络中的主机数:2^24-2

    私网地址:10.0.0.0/8

    B类

    10 00 0000 -- 10 11 1111:128-191

    默认子网掩码:255.255.0.0

    网络数:2^14

    每个网络中的主机数:2^16-2

    私网地址:172.16.0.0/16-172.31.0.0/16

    C类

    110 0 0000 -- 100 1 1111:192-223

    默认子网掩码:255.255.255.0

    网络数:2^21

    每个网络中的主机数:2^8-2

    私网地址:192.168.0.0/24-192.168.255.0/24

    D类

    1110 000 -- 1110 1111:224-239

    E类

    240-255

    • TCP/IP

    命令

    • ifconfig:配置,查看IP

    ifconfig [-v] [-a] [-s] [interface]

      # ifconfig -a

      # ifconfig IFACE [up|down]
    ifconfig [-v] interface [aftype] options | address ...

      # ifconfig IFACE IP/MASK

      # ifconfig IFACE IP netmask MASK

      启用混杂模式:[-]promisc

        报文送达之后即使目标MAC不是自己,也会接收一份,便于本地抓包,分析网络通信

    • route:配置,查看路由条目

     route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

    目标:192.168.1.3  网关:172.16.0.1

      # route add -host 192.168.1.3 gw 172.16.0.1 dev ens33

    目标:192.168.0.0  网关:172.16.0.1

      # route add -net 192.168.1.3 netmask 255.255.255.0 gw 172.16.0.1 dev ens33

      # route add -net 192.168.1.3/24 gw 172.16.0.1 dev ens33

     设置默认路由  网关:172.16.0.1

       # route add -net 0.0.0.0 netmask0.0.0.0 gw 172.16.0.1 dev ens33

       # route add default gw 172.16.0.1 dev ens33

    route  [-v] [-A family |-4|-6] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]

    • DNS服务器指定

    /etc/resolv.conf

      nameserver DNS_SERVER_IP1

      nameserver DNS_SERVER_IP2

      nameserver DNS_SERVER_IP3

    正解:FQDN-->IP

      # dig -t A FQDN

      # host -t A FQDN

    反解:IP-->FQDN

      # dig -x IP

      # host -t PTR IP

    • netstat:网络状态查看

    显示网络连接

    netstat [--tcp|-t] [--udp|-u]  [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]]  [--program|-p] 

      -t:tcp协议相关

      -u:udp协议相关

      -w:裸套接字相关,不经过传输层,直接从网络层获取IP地址

      -l:处于监听状态

      -a:所有状态

      -n:以数字形式显示IP和端口

      -e:显示扩展信息

      -p:显示相关进程及PID

    显示路由表

    netstat {--route|-r} [--numeric|-n]

      -r:显示内核路由表

      -n:数字格式显示

    显示接口统计数据

    netstat {--interfaces|-I|-i} [--all|-a] [--extend|-e]  [--program|-p] [--numeric|-n] 

    查看所有网卡信息

      # netstat -i

    查看指定网卡信息

      # netstat -IIFACE

  • 相关阅读:
    【LOJ6041】「雅礼集训 2017 Day7」事情的相似度(用LCT维护SAM的parent树)
    【BZOJ1171】大sz的游戏(线段树+单调队列)
    2019年4月训练记录(4.07~4.22)
    【BZOJ4766】文艺计算姬(prufer序列)
    【BZOJ4573】[ZJOI2016] 大森林(LCT)
    2019.03.19 ZJOI2019模拟赛 解题报告
    【牛客挑战赛30D】小A的昆特牌(组合问题抽象到二维平面)
    【洛谷2624】[HNOI2008] 明明的烦恼(Python+利用prufer序列结论求解)
    【洛谷2290】[HNOI2004] 树的计数(Python+利用prufer序列结论求解)
    初识prufer序列
  • 原文地址:https://www.cnblogs.com/9host/p/13524507.html
Copyright © 2020-2023  润新知