Linux基础知识_08 -- linux网络
以太网的发明--PC之间文件共享情况出现
网卡硬件设备 -- MAC地址
HUB -- 集线器 总线型结构 泛洪
广播域/冲突域
在早期的网络中,PC互通只需要MAC地址就可以进行数据转发; -- 二层数据转发的概念
网桥-交换机 --- 维护MAC地址表
随着网络的增大,需要接入网络的设备越来越多;这时候,这些设备的通讯又是一个文件 -- 产生了逻辑地址;
IPv4 IPv6 IPX AppleTalk Novell DEC -- 这些都是早期的逻辑地址
网段互联--路由可达!
路由器 -- 路由表
【上三层实现不同PC之间的互通--下三层实现不同进程之间的互通】
核心任务就有了转变--与应用的互通
应用端口:
TCP(传输控制协议):1-1023 1024-65535
20 21 22 23 25 53 80 443 110 111 445
UDP(单元数据协议):
67 68 69
程序应用
1、PC的网络资源--内核空间管理
2、应用层通讯(进程通讯)
1、PC内部的进程通讯 -- 1、父子进程通讯 2、single 信号通讯
2、PC之间的进程通讯 -- 1、rpc *2、套接字socket(做应用分离)*
ifcfg家族命令:ifconfig netstat route
ifconfig
ifconfig 显示当前up的接口
ifconfig lo0|eth0
-a //查看所有地址
ifconfig 接口名称 IP地址 netmask 掩码 [up|down]
IP地址配置以后立即生效,但是重启网卡后,就回恢复
ifconfig eth0 add 192.168.94.201 netnask 255.255.255.0 //自动生成 eth0:0 的子接口(label),del可以删除
tunnel 可以加隧道
route
查看以及添加路由
route -n // -n 不做解析
添加路由
1、添加默认路由(添加网关)
route add default gw 192.168.94.2
2、添加主机路由(去往一个固定的IP地址)
route add -host 192.168.95.95 dev eth0
3、添加路由网段
route add -net 192.168.95.0 network 255.255.255.0 eth0
删除路由
del
netstart
一般查看的内容
-t tcp
-u udp
-n 不解析
-a --tcp协议标记位 listen establish
-l listen
-e establish
-p pragrom pid 查看链接的建立/接听
查看路由内容
-r --route
进行数据统计
-i -v -e
ip家族命令:ip [link|addr|route] ss
图形界面管理:system-config-network-tui / setup
配置文件:
/etc/sysconfig/network-scripts/ifcfg-interface /etc/sysconfig/network-scripts/route /etc/udev/rules.d/70-persistent-net.rules
ip命令是并ifconfig更加新的命令,功能要比ifconfig更加强大
ip [option] OBJECT {Command | help} OBJECT link addr
add默认可以添加备 用地址
replace change
del 删除--只能删除一个地址
ip addr del 192.168.94.200/24 dev eth0:0
flush指定一类地址同时清除掉
ip addr flush dev eth0 //清空 了所有的地址
show
route
add
ip route add 192.168.95.0/24 via 192.168.94.2 ip route add 192.168.95.95 dev eth0
del
ip route del 192.168.95.0/24
flush
ip route flush dev eth0 //删除所有有关eth0的路由(包括默认路由和直连路由,不建议实验)
ss查看套接字的工具
ss [option] [fiter] ss -tan //a-- all t-- tcp n --不做解析
u--udp
W-- raw (没有有传输层头部数据包)
-D file将信息输入到文件,不显示在屏幕上
-m显示占用内存空间
-p和netstat-p ,显示进程
这些配置都是临时生效的,如果重启,就没有了;
图形界面管理: system-config-network-tui / setup
yum install system-config-network-tui -y
这个工具和setup-样,setup调用的tui的接口;
进图形进行端口配置;
centos 7
nmtui
配置文件:
/etc/sysconfig/network scripts/ifcfg-interface *DEVICE="名字123" *HWADDR = ff:ff:ff:ff:ff:ff ifconfig看的mac地址要相同/或者说与70- persistent-net.rules里面的地址相同 *BOOTPROTO={staticldhcp|nano} *IPADDR= 192.168.94.1 *NETMASK= 255.255.255.0 PREFIX=24 *GATEWAY= 192.168.94.254 DNS1 DNS2 DNS3 TYPE=Ethernet、Bridge *ONBOOT= USERCTL //是否容许普通用户修改该网卡参数、- 般关闭 UUID //nmci conn show (centos7的命令, 可以用来查看网卡的uuid信息) /etc/sysconfig/network- scripts/route-IFACE
第一种:
192.168.0.0/24 via 172.16.0.1
/etc/init.d/network restart
route -n //就能看到
第二种:
ADDRESSO= 192.168.20.0.
NE TMASK0-255.255.255.0
GATWAYO= 172.16.0.1
/etc/udev/rules.d/70-persistent-net.rules
自动生成的。删除以后重启就会存在;每次在网卡配置修改后,此文件会跟随变化;
在做克隆机的时候,可以删除此文件,重启之后,其中的信息将会自动同步
原文地址:https://www.cnblogs.com/lzqitdl/p/11459105.html
- python两个 list 获取交集,并集,差集的方法.
- python——时间与时间戳之间的转换
- Maven 核心原理解析(3)
- String中的null,以及String s;等区别详解
- Shell编程——Shell中的数学运算
- 如何利用微信监管你的TF训练?
- python 安装spark_Spark环境搭建 (Python)
- MongoDB触发oom-killer的简单处理(一)(r7笔记第54天)
- int与integer的区别
- java 自动装箱与拆箱
- python读取文件——python读取和保存mat文件
- python 利用递归实现全排列
- java中 == 与 equal 的区别
- python基础知识——字符串
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 谈一谈Flutter外接纹理
- Python文件复制
- 一文读懂jar包的小秘密
- visdom安装及启动
- 在java中使用SPI创建可扩展的应用程序
- java安全编码指南之:基础篇
- Java并发必知必会第三弹:用积木讲解ABA原理 |老婆居然又听懂了!
- CTO写的代码,真是绝了!
- 用 BERT 精简版 DistilBERT+TF.js,提升问答系统 2 倍性能
- docker浅入深出
- 一篇文章快速搞懂Qt文件读写操作
- C++核心准则T.20:避免定义没有明确语义的“概念”
- 机器学习之独热编码(One-Hot)详解(代码解释)
- TypeScript 实战算法系列(四):实现集合和各种集合运算
- 不知道怎么封装代码?看看这几种设计模式吧!