路由

drf的安装和配置

孤街浪徒 提交于 2019-12-18 11:21:30
一.安装   1.安装 pip install djangorestframework   2.配置    注:以上两部就OK了 二.最简单的drf版本   1.创建应用 在项目中新建一个应用: python manage.py startapp app   2.编写视图 from django.shortcuts import render from rest_framework.viewsets import ModelViewSet from bookset.models import BookInfo from .serializers import BookInfoSerializer # Create your views here. class BookInfoAPIView(ModelViewSet): #当前视图类所有方法使用的数据结果集是谁 queryset =BookInfo.objects.all() #当前视图类使用的序列化器是谁 serializer_class =BookInfoSerializer   3.编写路由 #!/usr/bin/env python # -*- coding: utf-8 -*- #author tom from rest_framework.routers import DefaultRouter from .views

广播、组播和子网

爱⌒轻易说出口 提交于 2019-12-18 09:04:55
广播 ,就是指同时向子网中的多台计算机发送消息,并且所有子网中的计算机都可以接收到发送方发来的消息。每个广播消息包含一个特殊的 IP 地址。 广播消息地址分为两种类型:本地广播和全球广播 。 通过本地广播向子网中的所有计算机发送广播消息时,其他网络不会受到本地广播的影响。 我们知道 IP 地址分为两部分,网络地址和主机地址,标准网络地址部分组成了本地网络地址的第一部分,字节地址中全部为 1 的部分用于主机地址部分(即十进制的 255 )。 例如,对于 B 类网络 192.168.0.0 ,使用子网掩码 255.255.0.0,(此IP地址的网络号为192.168,主机号为0.0,子网掩码全为1的对应的IP地址的网络号) 则本地广播地址是 192.168.255.255 ,用二进制表示为 11000000 、 10101000 、 11111111 、 11111111 。其中前两个字节为网络地址,后两个字节为主机地址。 仍以 192.168.0.0 为例,如果子网掩码为 255.255.255.0 ,则本地广播地址是 192.168.0.255 。 192.168.0 为网络地址, 255 代表 192.168.0 子网中的主机地址。 全球广播使用四个字节所有位全为 1 的 IP 地址,即点分十进制的 255.255.255.255

解决eNSP路由器AR启动失败错误代码40,交换机正常的问题

人盡茶涼 提交于 2019-12-18 07:43:18
问题描述 eNSP昨晚正常使用,今天上午出现问题:AR路由器启动失败,错误代码40。但交换机可正常启动。 eNSP版本:eNSP V100R002C00B510 Setup.exe 操作系统:Windows 10 专业版 原因分析 经推断是昨晚的win10升级破坏了VirtualBox的虚拟网卡。 不能为虚拟电脑 AR_Base 打开一个新任务. Failed to open/create the internal network 'HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter' (VERR_SUPDRV_COMPONENT_NOT_FOUND). 返回 代码:E_FAIL (0x80004005) 组件:ConsoleWrap 界面:IConsole {872da645-4a9b-1727-bee2-5585105b9eed} 解决方法 重装eNSP PS:先把eNSP及其相关的三个组件都卸载后再重装。 来源: https://www.cnblogs.com/walixz/p/10993173.html

net-tools与iproute2

血红的双手。 提交于 2019-12-18 07:10:31
net-tools与iproute2 我们知道redhat系列发行版7x版本中最小化安装是没有net-tools工具包的,默认使用iproute2工具包,最直观的感受是ifconfig命令被ip命令所取代,netstat命令被ss命令所取代,route命令换成了iP route;但实际上ip命令比ifconfig要强大很多 增加和删除iP地址 增加iP地址 sudo ip addr add 192.168.0.10/24 dev ens34 解析:sudo 调用root权限执行命令,iP addr 相当于ifconfig,add增加,后面跟上ip及掩码 dev 指定网卡,这里是我的网卡名是ens34 设置好之后,查看是否生效 sudo ip addr show ens34 删除ip地址 sudo ip addr del 192.168.0.10/24 dev ens34 只需要将add换成del即可 列出路由表条目 ip命令的路由对象的参数还可以帮助你查看网络中的路由数据,并设置你的路由表。第一个条目是默认的路由条目,你可以随意改动它 ip route show 我们可以看到第一行 default via 192.168.1.2 dev eno16777728 proto static metric 100 这一行说明了默认出口地址为192.168.1.2

交换机工作原理、MAC地址表、路由器工作原理详解

﹥>﹥吖頭↗ 提交于 2019-12-18 05:40:48
一:MAC地址表详解 说到MAC地址表,就不得不说一下交换机的工作原理了,因为交换机是根据MAC地址表转发数据帧的。在交换机中有一张记录着局域网主机MAC地址与交换机接口的对应关系的表,交换机就是根据这张表负责将数据帧传输到指定的主机上的。 交换机的工作原理 交换机在接收到数据帧以后,首先、会记录数据帧中的源MAC地址和对应的接口到MAC表中,接着、会检查自己的MAC表中是否有数据帧中目标MAC地址的信息,如果有则会根据MAC表中记录的对应接口将数据帧发送出去(也就是单播),如果没有,则会将该数据帧从非接受接口发送出去(也就是广播)。 如下图:详细讲解交换机传输数据帧的过程 1)主机A会将一个源MAC地址为自己,目标MAC地址为主机B的数据帧发送给交换机。 2)交换机收到此数据帧后,首先将数据帧中的源MAC地址和对应的接口(接口为f 0/1) 记录到MAC地址表中。 3)然后交换机会检查自己的MAC地址表中是否有数据帧中的目标MAC地址的信息,如果有,则从MAC地址表中记录的接口发送出去,如果没有,则会将此数据帧从非接收接口的所有接口发送出去(也就是除了f 0/1接口)。 4)这时,局域网的所有主机都会收到此数据帧,但是只有主机B收到此数据帧时会响应这个广播,并回应一个数据帧,此数据帧中包括主机B的MAC地址。 5)当交换机收到主机B回应的数据帧后,也会记录数据帧中的源MAC地址

vue-router学习

ぃ、小莉子 提交于 2019-12-18 04:40:41
一、router路由发展的几个阶段 1、后端路由阶段 后端渲染:前端只有html和css,后端通过jsp等技术渲染页面,再交给前端。 后端路由:后端处理url和页面映射之间的关系。后端通过正则匹配url,controller控制器来处理匹配的页面,把html返回给前端。 2、前后端分离阶段 后端负责数据, 前端渲染:网页中的内容大部分是由前端写的js在浏览器中执行,后端负责提供API和数据 3、前端路由阶段(SPA单页面富应用阶段) 整个网页只有一个html页面(包含html+css+js),当用户点击时,从url1–>url2,通过前端路由,加载url2的内容(在vue中就是加载一个组件。) 改变url页面不整体刷新,两种实现方式: (1)改变url的hash,location.hash=‘aaa’ (2)html5中的history模式pushState,history.pushState({},’’,‘home’)三个参数为data title url。 history.pushState入栈 history.go(-1)=history.back()出栈 history.forward()=history.go(1) 二、基础知识0 1、懒加载 build打包时,appxxx.js文件变得很大,使用懒加载更高效。 router懒加载:用到的时候再加载

MVC中的URL路由(一)

落爺英雄遲暮 提交于 2019-12-18 04:33:34
  URL路由系统通过对请求地址进行解析从而得到以目标Controller名称为核心的路由数据。Url路由系统最初是为了实现请求url与物理文件路径分离而建立的,MVC的Url Route是将Url地址与物理文件映射转移到了目标Controller的映射。 Url路由不是ASP.NET MVC特有的,而是建立在ASP.NET上面的,MVC的只是对这个路由的拓展使用(asp.net也开始使用这拓展了)。   我们在App_Start文件夹中找到RouteConfig.cs的文件,打开看 1 public static void RegisterRoutes(RouteCollection routes) 2 { 3 routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 4 5 routes.MapRoute( 6 name: "Default", 7 url: "{controller}/{action}/{id}", 8 defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 9 ); 10 }    大体可以猜出什么意思,url那一栏地址中第一个是controller,第二个是action,第三个是参数id

什么叫NAT,设置NAT的两个方法

為{幸葍}努か 提交于 2019-12-18 03:16:38
NAT是网络地址翻译就是把公网IP翻译成私有地址, 又叫端口映射或端口转发. 采用路由方式是指ADSL拥有一个动态或固定的公网IP,ADSL直接接在HUB或交换机上,所有的电脑共享上网。这时ADSL的外部地址只有一个,比如61.177.*.*。 而内部的IP是人为设置的,比如ADSL设为192.168.0.1,下面的电脑就依次设为192.168.0.*(*表示1,2,3,...)。   如何实现NAT功能呢?一般路由器中有个虚拟服务器(有些英文设置界面的叫services项)的设置。针对邮件服务器要做如下设置:进入“虚拟服务器”(或services项->选择NAT 或NAT RULE),在端口填入 25, 协议中选择: TCP, IP地址:192.168.x.x(安装邮件服务器电脑的局域网IP地址),同样方法设置110(pop3),6080(webmail)端口   另一种方法就是开放主机。开放主机(DMZ Host)是针对IP地址,取消防火墙的功能,将该局域网的IP地址直接映射到外部IP之上,采用开放主机(DMZ)的方式,不必管端口是多少。这种方式只支持一台内部电脑。 NAT———网络地址翻译 注:我们驴友一般来说都是家庭用户,所以我们大多数是用到“端口NAT(PAT)” ****************************************** 作者:陈维义   

Cisco SG300系列交换机划分VLan与普通路由器连接配置

狂风中的少年 提交于 2019-12-18 02:32:30
思科SG300系列三层交换机是针对中小企业设计的一款产品,Marvell 主控和128M Ram,最大支持52个千兆RJ45端口和2个SFP端口,因公司业务需求,最近也进行了解和配置,具体型号为 SG300 – 52 记录下过程,便于参考. 网络拓扑图如下所示: 计划目标:针对不同部门划分不同的VLAN,前期满足能够同时上网的需求,后期需要能够隔离不同部门的资源访问(本次配置操作不涉及)。 因之前未接触CISCO交换机,在参考了网上众多配置后,发现该交换机部分命令和服务并不支持,比如DHCP Server 。所以配置过程以Console 为主,Web界面为辅的方式进行。 配置过程: 1.更改交换机工作模式 交换机自身带有Web界面,英文版,不熟悉的可以通过官方下载固件版本对应的中文语言包进行切换,默认IP地址 192.168.1.254 用户名密码均为cisco 首次登陆后需要修改密码,在管理中将工作模式更改为三层模式,然后重启。 2.为交换机划分VLAN 交换机默认所有端口均属于VLAN1,分别建立 vlan 10 , vlan 20 , vlan 30 。在WEB界面中可以直接配置,但实际操作却发现点击确定提交后,网络会断开,最后还是得以Console 串口线配置。命令如下: # conf t //进入配置模式 # vlan 10 # vlan 20 # vlan 30 /

为什么微服务一定要有网关?

陌路散爱 提交于 2019-12-18 02:32:20
1、 什么是服务网关 服务网关 = 路由转发 + 过滤器 1、路由转发:接收一切外界请求,转发到后端的微服务上去; 2、过滤器:在服务网关中可以完成一系列的横切功能,例如权限校验、限流以及监控等,这些都可以通过过滤器完成(其实路由转发也是通过过滤器实现的)。 2、 为什么需要服务网关 上述所说的横切功能(以权限校验为例)可以写在三个位置: 每个服务自己实现一遍 写到一个公共的服务中,然后其他所有服务都依赖这个服务 写到服务网关的前置过滤器中,所有请求过来进行权限校验 第一种,缺点太明显,基本不用; 第二种,相较于第一点好很多,代码开发不会冗余,但是有两个缺点: 由于每个服务引入了这个公共服务,那么相当于在每个服务中都引入了相同的权限校验的代码,使得每个服务的jar包大小无故增加了一些,尤其是对于使用docker镜像进行部署的场景,jar越小越好; 由于每个服务都引入了这个公共服务,那么我们后续升级这个服务可能就比较困难,而且公共服务的功能越多,升级就越难,而且假设我们改变了公共服务中的权限校验的方式,想让所有的服务都去使用新的权限校验方式,我们就需要将之前所有的服务都重新引包,编译部署。 而服务网关恰好可以解决这样的问题: 将权限校验的逻辑写在网关的过滤器中,后端服务不需要关注权限校验的代码,所以服务的jar包中也不会引入权限校验的逻辑,不会增加jar包大小;