Linux网络(一)

简介:
一、计算机网络基础
二、Mac&ip&port
三、通信子网和资源子网
四、网络接口命名规范


一、计算机网络基础
    Linux网络属性配置
    计算机网络:
        文本流:把文件变成bit(01)流,传输,文本在线缆中传输的是bit流
    根据时钟频率来决定:例如1s震动1000次,标识1s可以传输1000个数据流
    
    为了完成数据传输:调制数字信号频率是很重要的
        同步传输
        异步传输
    文件的开始和结束位置,传输的频率,同步还是异步:都需要双方设备之间协定好
        接收方阻塞,数据丢失,介质有效距离等各种问题
    计算机网络:
        TCP/IP:协议栈,协议栈(使用)
        ISO:国际标准化组织
        OSI:开发系统互联 //七层模型 ,学习模型
        OSI是后期细化的
    CSMA/CD //CSMA/CD(Carrier Sense Multiple Access with Collision Detection
    token ring//谁拿到令牌,谁先发送
    MAC: media access control:
        48 bits:IANA,ICANN //6段8位
                //8bit,2^4*2==16*2
            24bits:需购买,2^24次方,前24bit需要申请
                地址块:2^24次方
            
    开放的才是永久的
    网桥/交换机:隔离冲突域
        接口两侧本地通信:不会发送到其他网络,在网桥的这个接口内,而不会传输到其他接口
            默认会在整个网络中传输
        非本地通信:传递该信息
            mac地址表
        注意:网桥内部有一个表,mac地址表,记录传输的信息,刚开始为空
            
    路由器:隔离广播域
二、Mac&ip&port     
    IP:internet protocol地址:网络号+主机号
    IP:32bits,4段8bit 2^8=256
    IPv4:128bits,
    IP地址分类:0000-0111
        A类//第一位为0000
            1-127.*.*.* //0000 0000-0111 1111
            网络数量:126,127环回地址
            每个网络中的主机数量:2^24-2
            //全0标识网络本身,全1标识广播
            子网掩码:255.0.0.0
            私网地址:10.0.0.0/255.0.0.0
        B类// 1000-1011
            前两bit为网络号,后两bit为主机号
            1000 0000-1011 1111 //128-191
            网络数:2^24
            每个网络中的主机数量:2^16-2
            默认子网掩码:255.255.0.0
            私网地址:172.16.0.0-172.31.0.0
        C类:1100-1101
            前三位为网络号,后1段位主机号
            1100 0000-1101 1111 //192-223
            网络数量:2^8
            每个子网中的主机数量:2^8-2
            默认子网掩码:255.255.255.0
            私网地址:192.168.0.0-192.168.255.255
        D类://组播通信 1110
            前四位为网络号,后
            1110 0000 - 1110 1111 //224-239
            默认子网掩码:255.255.255.
            网络个数:2^4-2
            私网地址:
        E类://科研1111 0
            前
            1111 0000 - 1111 0111 //240-255
            每个网络中的主机数:2^3-2
            默认子网掩码:
            私网地址
            
    网桥:MAC地址表
        静态指定
        动态学习:根据源地址学习,
        TTL生存周期
    交换机:switch:多端口网桥
    路由器:router
        静态指定
        动态学习
            rip2,ospf,eigrp,等
    OS:多用户,多任务
        多任务:多进程同时运行
        
        Client:主动出击,临时可用地址,端口
            //端口:标识每一个进程进行网络通信的
            2^16:65535:1-65535
                server:端口固定
                1-1023:固定分配,只有管理员才有权限启动
                1024-4W:半固定,不常见,
                4W:随机端口,每一个进程临时通信,都可以使用
    Server:固定且明确的地址,守株待兔
    进程地址:IP:PORT,socket 地址
        由内核提供的,向内核申请
    OS:硬件,内核,应用程序,库应用程序    
    OS:内核空间+用户空间 //kernel | user space
        一个端口,在同一时刻,只能被一个进程使用
        进程需要注册套接字:端口使用
        进程是需要靠套接字进行通信的
完成通信至少需要三个地址:
    mac地址:实现本地通信
    ip地址:跨网络通信//仅仅是用来标识使用,具体到内网还是靠mac通信,把ip转换成mac地址
    套接字地址:通信的发起者
            
    MAC:本地通信:范围:本地局域网
    ip:界定通信主机,源和目标,范围:全球互联网
    port:界定范围,范围:主机
        
        具体内部的数据是如何组织的则需要application layer来查看
    通信子网+资源子网
    
三、通信子网和资源子网
d5aebcf6a0210f350276f387c4a89297.png ==========================================================        
            OSI模型                TCP/IP栈
    通信子网:在内核空间实现
    资源子网:在用户空间实现
            
    通信过程:封装与解封装
        transport首部:网络层首部:数据链路层报文
    A-r1-r2--B //中间mac是来回变的,但是封装的ip层是不变的
    所有的不相同网段之间的通信:必须要有路由器转发
    
    默认网关:相当于总代理
    
    ARP:地址解析协议,
        局域网内部:通过arp请求,来获取对方的mac地址
    ARP可以缓存下来的,不是权威结果
        TTL生存周期保存新鲜度
    
    路由条目:
        目标地址 下一跳(next hop)//网关
            目标地址的类别:
                主机:主机路由
                网络:网路路由
    0.0.0.0/0.0.0.0 默认路由
    
    www.baidu.com -->ip--->mac
        FQDN-->ip: 
            本地:/etc/hosts文件
            DNS:查找dns的ip地址,请求目标ip
    
    将linux主机接入到网络中
        IP/NETMASK:本地通信 
        路由(网关):跨网络通信
        DNS服务器地址:基于主机名的通信
            主DNS服务器地址:
            备用DNS服务器地址:
            第三备份DNS地址:
    配置方式:
        静态指定:服务器一般都是静态指定
            命令:有的能保存到文件中,有的不能
            配置文件:可能不会立即生效,有的需要强制内核重新执行配置文件

四、网络接口命名规范
网络接口的命名方式:
    传统命名
        以太网:ethX,eth0,eth1,...
        PPP命名:pppX,ppp0,ppp1,...
    可预测命名//根据udev
        支持多种不同的命名机制
            Fireware,拓扑结构
             //例如第几个槽上的第几个接口等
        (1)如果firmware或BIOS为主板上集成的设备提供了索引信息可用,则根据此索引进行命名,
            如:eno1,eno2
        (2)如果firmware或BIOS为PCI-E扩展槽所提供的的索引信息可用,且可预测,则根据次索引进行命名,ens1,ens2,...
        (3)如果硬件接口的物理位置信息可用,则根据此信息命名,如enp2s0,
        (4)如果用户显式定义,也可根据MAC地址定义,例如enx122161ab2e10,..
        上述均不可用,则仍使用传统方式命名
        
        根据(主板/pci-e扩展槽)索引,根据接口位置,MAC    
            eno1,ens1,en2s0,enx【12位】,eth0
    命名格式的组成:
        en:ethernet
        wl:wlan
        ww:wwan
        
        名称的类型:
            0:index>:集成设备的设备索引号on the fireware
            s:slot>:扩展槽    
            x:mac>
            p:bus,s:slot:基于总线及槽的拓扑结构进行命名p:public












本文转自MT_IT51CTO博客,原文链接:http://blog.51cto.com/hmtk520/1977175,如需转载请自行联系原作者

相关文章
|
8天前
|
iOS开发 MacOS Windows
|
2天前
|
网络协议 Linux 网络架构
|
5天前
|
域名解析 网络协议 Linux
linux网络配置详解
linux网络配置详解
14 0
|
6天前
|
网络协议 Java Linux
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
12 0
|
6天前
|
存储 网络协议 算法
【探索Linux】P.28(网络编程套接字 —— 简单的UDP网络程序模拟实现)
【探索Linux】P.28(网络编程套接字 —— 简单的UDP网络程序模拟实现)
13 0
|
6天前
|
网络协议 算法 Linux
【探索Linux】P.27(网络编程套接字 —— UDP协议介绍 | TCP协议介绍 | UDP 和 TCP 的异同)
【探索Linux】P.27(网络编程套接字 —— UDP协议介绍 | TCP协议介绍 | UDP 和 TCP 的异同)
14 0
|
6天前
|
存储 算法 网络协议
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
12 0
|
6天前
|
存储 网络协议 Unix
【探索Linux】P.25(网络编程套接字基本概念 —— 预备知识)
【探索Linux】P.25(网络编程套接字基本概念 —— 预备知识)
6 0
|
6天前
|
网络协议 Linux 数据安全/隐私保护
【探索Linux】P.24(网络基础)
【探索Linux】P.24(网络基础)
16 0
|
7天前
|
网络协议 Linux 开发工具
Linux中 /etc/sysconfig/network-scripts/ifcfg-<interface> 网络接口配置 详解 看这一篇够用
Linux中 /etc/sysconfig/network-scripts/ifcfg-<interface> 网络接口配置 详解 看这一篇够用