linux网络基础

网络基础

一、命令

1.ifconfig

1.ifconfig //linux下查看IP地址,windows下是ipconfig查看ip地址
英文意思:configure a network interface 配置网络接口


使用之后弹出下列信息
eth0      Link encap:以太网  硬件地址 00:0c:29:7b:5d:9d  
          inet 地址:192.168.154.128  广播:192.168.154.255  掩码:255.255.255.0
          inet6 地址: fe80::8482:7c77:6f45:29a5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  跃点数:1
          接收数据包:50 错误:0 丢弃:0 过载:0 帧数:0
          发送数据包:98 错误:0 丢弃:0 过载:0 载波:0
          碰撞:0 发送队列长度:1000 
          接收字节:12736 (12.7 KB)  发送字节:11220 (11.2 KB)
​
lo        Link encap:本地环回  
          inet 地址:127.0.0.1  掩码:255.0.0.0
          inet6 地址: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  跃点数:1
          接收数据包:272 错误:0 丢弃:0 过载:0 帧数:0
          发送数据包:272 错误:0 丢弃:0 过载:0 载波:0
          碰撞:0 发送队列长度:1 
          接收字节:21183 (21.1 KB)  发送字节:21183 (21.1 KB)
​
eth0:表示第一块网卡,硬件地址-HWaddr:就是这块网卡的物理地址
inet addr :表示网卡的IP地址 inet是一个IPV4的地址
inet6是一个IPV6的地址
              
lo:表示主机的回环地址 这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回环地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了,但只是本机能看得到,局域网的其它主机或用户无从知道
              
第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)
第二行:网卡的IP地址、子网、掩码
第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节
第四、五行:接收、发送数据包情况统计
第七行:接收、发送数据字节数统计信息

2.ping

ping [选项] IP地址(域名)
//用来测试两台主机能不能连通
    选项:
-b:用于对整个网段进行探测。IP需要为广播地址
-c 次数:设置完成要求回应的次数
-s 字节数:设置数据包的大小
​
nslookup 域名
//能够查询互联网域名服务器的信息

二、linux网络编程

以服务器为例,在一个服务器中实现高效性的处理数据和安全性,分为以下三个部分:

1.数据接收

2.数据处理

3.数据存储

1.数据接收

i/o通信模块,解决如何首数据,如何发数据

1.阻塞接收

2.非阻塞接收

3.异步接收

4.i/o复用模型

2.数据处理

数据进入服务器之后,最重要的就是对数据的运算和处理

1.多进程处理

2.多线程处理

3.线程池处理

3.数据存储

大部分服务器在数据进来之后,就把数据处理了,其中一分就把数据发送出去了,另一份就发到数据库存储起来

1.mysql

2.连接池

三、网络基础

1.常见的网络架构

1.七层网络架构

从上往下:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。

基于功能和协议去区分的这七层

应用层:TFTP协议,HTTP协议。.....

传输层:TCP协议,UDP协议

网络层:IP协议

数据链路层:传输数据,或者数据流,数据帧

2.五层网络架构

从上往下:应用层,网络层,数据链路层,物理层

表示层和会话层没有通讯协议,有时会把这两层合并到应用层中,所以会有五层网络架构

2.常用的通讯协议

tcp/ip协议簇:包含很多协议,udp也是其中一个

tcp和udp是一种通讯方式:tcp理解为打电话,udp理解为发短信

ip网络之间互连的协议

IP地址三类 :a类,b类,c类

c类子网掩码:255.255.255.0(常用的IP地址)

b类子网掩码:255.255.0.0

a类子网掩码:255.0.0.0

IP地址和子网掩码可以将网络地址和主机地址分开:

比如:网卡的IP地址是:192.168.86.132,子网掩码是c类 255.255.255.0

将这个IP地址和子网掩码进行按位与操作

192.168.86.132 & 255.255.255.0 -》192.168.132.0 这个就是网络地址,而0.0.0.132就是主机地址

作用:

两台计算机要进行通讯,首先判断他们是否在同一广播域下

如果二者的网络地址相同,说明在同一网络中,这时就可以把数据包发给目标主机

如果网络地址不相同,就需要路由网关将数据报转发给目标主机

3.socket套接字

1.定义

源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字

2.使用

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket,建立网络通信连接至少要一对端口号(socket)

套接字通常认为,用于描述IP地址和端口号,是一个通信链的句柄,可以用来实现不同虚拟机或者不同计算机之间的通信

就是相当于是对一个API的调用,加上头文件,就可以使用相应的函数

3.端口号

一个应用程序可以使用多个端口号,而在某一个时刻一个端口号只能一个应用程序使用

4.句柄概念

句柄相当于给你一个void* 的空类型指针,可以接收其他任何类型的指针,有了这个指针或者说是句柄你就可以对数据进行操作了。

四、tcp特点

1.三次握手——建立稳定连接

客户端向服务器发送SYN(请求连接),服务器收到后回应SYN(请求连接),ACK(确认收到),最后客户端收到消息后回应ACK(确认收到)

1.客户端向服务器发送消息

2.服务器把客户端发送的报文重新发回到客服端,再发送确认报文

3.客户端再向服务器发送确认报文

2.四次挥手

客户端向服务器发送FIN(结束消息),服务器收到回应ACK(收到消息),再关闭对客户端的连接,最后发送FIN(结束消息),客户端收到之后回应ACK(确认收到)

1.客户端向服务器发送结束报文

2.服务器收到结束报文,再给客户端发回确认报文

3.服务器关闭客户端的连接

4.客户端发回确认报文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值