计算机网络 day8 动态路由 - NAT - SNAT实验 - VMware的网卡的3种模式

2023-11-07

目录

动态路由:IGP 和 EGP

参考网课:4.6.1 路由选择协议概述_哔哩哔哩_bilibili

​编辑

IGP(Interior Gateway Protocol)内部网关协议:

EGP(Interior Gateway Protocol)外部网关协议:

BGP 边界网关协议(Border Gateway Protocol)

实验:

NAT:网络地址转换

NAT 有以下几种常见的应用方式:

SNAT

SNAT策略的原理

未使用SNAT策略时的情况

在网关中使用SNAT策略以后

五元组:源IP地址、目的IP地址、源端口、目的端口、传输协议

SNAT实验:

实验环境:

SNAT网络规划拓扑图:

1、给linux网关服务器的2块网卡配置IP地址

2、给局域网内的客户机的网卡也配置IP地址

3、在linux网关服务器上配置SNAT策略的脚本 

4、测试效果,如果能通过client机器上ping通百度的话,说明SNAT实验成功了

VMware的网卡的3种模式

详细请参考:(114条消息) 计算机网络 SNAT/DNAT 部署(三种VMware网卡模式)_snat部署_Claylpf的博客-CSDN博客

桥接模式,仅主机模式,NAT模式

1、桥接模式(bridge)

2、仅主机模式(host-only) 

3、NAT模式

总网络规划图


动态路由:IGP 和 EGP

参考网课:4.6.1 路由选择协议概述_哔哩哔哩_bilibili

IGP(Interior Gateway Protocol)内部网关协议:

它是一种用于在自治系统(AS)内部进行路由选择的协议。

常见的 IGP 包括以下几种:

RIP:一种距离矢量路由选择协议,基于跳数来评估路径的优劣。--》只是适合规模比较小的网络

OSPF:一种链路状态路由选择协议,通过交换链路状态信息(带宽、网速、时延)来计算最短路径。--》适合大型的网络

IS-IS:一种链路状态路由选择协议,类似于 OSPF,但使用不同的路由选择算法。

EIGRP:一种距离矢量和链路状态相结合的路由选择协议,由思科开发。

EGP(Interior Gateway Protocol)外部网关协议:

指的是用于自治系统(AS)之间进行路由选择的协议。(EGP 主要用于互联网中不同自治系统之间的路由交换。)

最早的 EGP 协议是在互联网刚起步时使用的,但现在已经被较先进的 BGP(Border Gateway Protocol,边界网关协议)所取代。BGP 是当前广泛使用的用于自治系统间的路由选择的协议。

BGP 边界网关协议(Border Gateway Protocol)

BGP 通过在不同的自治系统之间交换路由信息,帮助网络管理员决定数据包从源节点到目标节点的最佳路径。它考虑到网络拓扑、自治系统之间的政策和策略,以及其他因素来进行路由选择。BGP 具有高度的可扩展性和灵活性,使得互联网能够连接大量的自治系统并实现全球性的路由。

实验:

NAT:网络地址转换

它主要用于在私有网络和公共网络之间进行 IP 地址的映射转换。

NAT 的主要功能是将私有网络内部使用的私有 IP 地址与公共网络之间的公共 IP 地址相互转换。私有 IP 地址在内部网络中使用,而公共 IP 地址则用于外部网络(例如互联网)之间的通信。

NAT 有以下几种常见的应用方式:

  1. 静态 NAT(SNAT):将私有 IP 地址映射为一个固定的公共 IP 地址,用于单一的一对一映射。
  2. 动态 NAT(DNAT):将私有 IP 地址映射为可用的公共 IP 地址池中的一个地址,根据需要动态选择不同的地址进行转换。
  3. PAT(Port Address Translation):在动态 NAT 的基础上,还利用端口号进行转换,使多个内部主机可以通过单个公共 IP 地址进行访问互联网。

它将什么地址转换为什么地址?

        ip地址:公网、私网

        公网IP  《---》私网IP

解决了什么核心地址?

        公网IP(IPv4)不足的问题

SNAT

它解决了局域网上网的问题

将私有 IP 地址映射为一个固定的公共 IP 地址,用于单一的一对一映射。

SNAT策略的典型应用环境

局域网主机共享单个公网IP地址接入Internet

SNAT策略的原理

源地址转换,Source Network Address Translation

修改数据包的源IP地址

未使用SNAT策略时的情况

在网关中使用SNAT策略以后

linux内核里有一个NAT映射表会自动进行转换,回来的时候

五元组:源IP地址、目的IP地址、源端口、目的端口、传输协议

SNAT实验:

实验环境:

        准备2台集群:一台做局域网里的客户机(1个网卡),一台做做网关服务器(路由器)

        所有的虚拟机的网卡模式选择桥接模式(客户机可以选择仅主机模式)

hostonly 仅主机模式

假设你使用的linux网关服务器的网卡ens33配置的是仅主机模式(hostonly),IP为(192.168.50.1),那么如果你的Windows机器上的VMnet1配置的IP地址(192.168.50.10)也是同网段的,那么你的linux网关服务器能和Windows的网关服务器通信了,但是可能出现只有Windows机器能ping通linux机器,但是linux机器不能ping通Windows机器的问题,出现的原因是你的Windows机器开启了防火墙,把双方的防火墙都关了就可以互相通信了(不建议去实验),

最后就是你的linux客户机如何跟linux网关服务器进行通信了,这需要把你的linux网关服务器的其中一个网卡设置为仅主模式(hostonly),如下图所示,你需要把linux网关服务器的网卡ens36配置为仅主模式(hostonly),IP地址为(192.168.50.100),这样才能使双方通信,之后的步骤就按照SNAT的实验流程即可。

桥接:  暂时理解为虚拟机和真实机器连接到同一个交换机(在相同vlan)
hostonly 仅主机模式: 你的虚拟机只是和你的真实机器通信,不能跟别人的真实机器或者虚拟机通信,避免ip地址冲突

桥接模式:

SNAT网络规划拓扑图:

1、给linux网关服务器的2块网卡配置IP地址

[root@nginx-lb1 ~]# ip add     查看ip地址,获得2块网卡的名字:  ens33和ens36 (我已经配置好了两块网卡的IP地址和网关了)
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:90:56:0d brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.77/24 brd 192.168.2.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe90:560d/64 scope link 
       valid_lft forever preferred_lft forever
3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:90:56:17 brd ff:ff:ff:ff:ff:ff
    inet 192.168.80.100/24 brd 192.168.80.255 scope global noprefixroute ens36
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe90:5617/64 scope link 
       valid_lft forever preferred_lft forever
[root@nginx-lb1 ~]# 

配置IP地址步骤
[root@sc-server ~]# cd  /etc/sysconfig/network-scripts/
[root@sc-server network-scripts]# 
复制原来的ens33的网卡配置文件生成ens36的网卡配置文件

[root@sc-server network-scripts]# cp ifcfg-ens33   ifcfg-ens36    因为前面新添加的网卡的名字是ens36,所以我们使用ens36的名字

[root@sc-server network-scripts]# ls
ifcfg-ens33  ifdown-ippp    ifdown-sit       ifup-bnep  ifup-plusb   ifup-TeamPort
ifcfg-ens36  ifdown-ipv6    ifdown-Team      ifup-eth   ifup-post    ifup-tunnel
ifcfg-lo     ifdown-isdn    ifdown-TeamPort  ifup-ippp  ifup-ppp     ifup-wireless
ifdown       ifdown-post    ifdown-tunnel    ifup-ipv6  ifup-routes  init.ipv6-global
ifdown-bnep  ifdown-ppp     ifup             ifup-isdn  ifup-sit     network-functions
ifdown-eth   ifdown-routes  ifup-aliases     ifup-plip  ifup-Team    network-functions-ipv6
[root@sc-server network-scripts]# 
配置wan口的网卡ens36的ip,注意:WAN口里配置网关和dns,注意网卡类型为桥接模式
[root@sc-server network-scripts]# vim ifcfg-ens33
BOOTPROTO="none"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.2.77
PREFIX=24
GATEWAY=192.168.2.1
DNS1=114.114.114.114
[root@sc-server network-scripts]#
配置LAN口的网卡ens36的ip,注意:LAN口里不配置网关和dns,注意网卡类型为仅主机模式(hostonly)或者桥接模式
[root@sc-server network-scripts]# vim ifcfg-ens36
BOOTPROTO="none"
NAME="ens36"
DEVICE="ens36"
ONBOOT="yes"
IPADDR=192.168.80.100
PREFIX=24
[root@sc-server network-scripts]# service network restart
Restarting network (via systemctl):                        [  确定  ]
[root@nginx-lb1 ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:90:56:0d brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.77/24 brd 192.168.2.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe90:560d/64 scope link 
       valid_lft forever preferred_lft forever
3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:90:56:17 brd ff:ff:ff:ff:ff:ff
    inet 192.168.80.100/24 brd 192.168.80.255 scope global noprefixroute ens36
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe90:5617/64 scope link 
       valid_lft forever preferred_lft forever
[root@nginx-lb1 ~]# 

2、给局域网内的客户机的网卡也配置IP地址

[root@sc-client ~]# cd  /etc/sysconfig/network-scripts/
[root@sc-client network-scripts]# 
[root@sc-client network-scripts]# vim ifcfg-ens33
BOOTPROTO="none"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.80.1
PREFIX=24
GATEWAY=192.168.80.100
DNS1=114.114.114.114

[root@sc-server network-scripts]# service network restart
Restarting network (via systemctl):                        [  确定  ]
[root@sc-server network-scripts]#

[root@claylpf network-scripts]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:ca:33:25 brd ff:ff:ff:ff:ff:ff
    inet 192.168.80.1/24 brd 192.168.80.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:feca:3325/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:f6:8a:f5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:f6:8a:f5 brd ff:ff:ff:ff:ff:ff
[root@claylpf network-scripts]# 


如果真实机器想和虚拟机(client)ssh远程连接
使用vmnet1网卡配置ip地址为192.168.50.2(网关服务器的ens36网卡配置的是仅主机模式host-only)

3、在linux网关服务器上配置SNAT策略的脚本 

[root@nginx-lb1 nat]# cat snat.sh 
#!/bin/bash

#开启路由功能
echo 1 > /proc/sys/net/ipv4/ip_forward

#清除防火墙规则
iptables -F
iptables -F -t nat

#添加SNAT策略的防火墙规则
iptables -t nat -A POSTROUTING -s 192.168.80.0/24 -o ens33 -j SNAT --to-source 192.168.2.77

[root@nginx-lb1 nat]# 

 代码解释:

iptables是一个防火墙工具,可以给linux内核传递网络参数,上面的功能是告诉linux内核开启SNAT功能。
-t nat  在nat相关的表里
-A POSTROUTING  在POSTROUTING位置追加一条规则 --》数据从网络离开的位置  append 
-s 192.168.1.0/24  指定源ip地址所在的网段  source
-o eth0 从eth0接口出去 output  
-j SNAT  执行SNAT策略,修改ip包里的源ip地址
--to-source 218.29.30.31 将ip包里的源ip地址修改为218.29.30.31 

查看iptables配置后的效果: 

[root@nginx-lb1 network-scripts]# iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  192.168.80.0/24      anywhere             to:192.168.2.77
[root@nginx-lb1 network-scripts]# 

4、测试效果,如果能通过client机器上ping通百度的话,说明SNAT实验成功了

nat的次数越多,网络的速度就会越慢,时延就会越长

VMware的网卡的3种模式

详细请参考:(114条消息) 计算机网络 SNAT/DNAT 部署(三种VMware网卡模式)_snat部署_Claylpf的博客-CSDN博客

桥接模式,仅主机模式,NAT模式

1、桥接模式(bridge)

vmnet0 对应的桥接模式

1.桥接模式: bridge   直接连接到物理网络,其实就是虚拟机和真实机器在同一个局域网里,利用真实机器的网卡连接到真实的交换机上或者路由器上
                    虚拟机和真实机器在同一个网段,地位是平等的

            物理网络:就是真实的网络

wlan:  代表无线网络   wireless  LAN   

network adapter :网络适配器(网卡)

2、仅主机模式(host-only) 

2.仅主机模式: hostonly
    vmnet1网卡  对应host only模式
    虚拟机只能和真实机器通信,处于一个封闭的网络里 --》vlan里

    dhcp服务器给仅主机模式的虚拟机分配ip地址的时候,没有告诉虚拟机网关的ip,没有配置网关,导致虚拟机不能进行跨网段通信,只能和真实机器通信。

3、NAT模式

3.NAT模式:
    vmnet8网卡  对应nat模式,用来和虚拟机的网卡模式是nat的机器通信,连接在同一个局域网里
    用于共享主机的ip地址,所有的虚拟机使用真实机器的ip地址联网
        SNAT
    不同的vlan --》不同vlan对应不同的网段 --》做了隔离的

    192.168.*.1  -->真实机器的vmnet8网卡使用
    192.168.*.2  -->给vmware 模拟出来的路由器的LAN口使用,作为网关使用

vmnet1和vmnet8 配置ip地址,注意不要配置成相同网段的ip地址了,不然会导致有2条相同的直连路由,导致通信异常 

路由器里一个接口就是一个网段,不要配置相同的网段

windows和linux系统里,一个接口可以配置多个ip地址,多个接口可以配置相同网段,会产生多条直连路由,会导致数据在转发的时候出错。

总网络规划图

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机网络 day8 动态路由 - NAT - SNAT实验 - VMware的网卡的3种模式 的相关文章

  • 服务器超线程的好处

    服务器超线程的好处 1 提高性能 超线程通过提高整体系统吞吐量显着提高服务器性能 通过允许多个线程在单个物理内核上同时执行 超线程减少了空闲时间并最大限度地利用了可用资源 这会加快任务执行速度并缩短应用程序的响应时间 尤其是在多线程工作负载
  • Kali Linux 安全渗透核心总结,444页核心知识点

    就像IT人离不开Linux系统一样 网安人也离不开Kali Linux 作为攻击性防御和渗透测试的代名词 越来越多的人开始学习Kali 如果你也对kali感兴趣 又想深入了解这方面内容 不妨收藏一下这份Kali Linux安全渗透教程 共4
  • 通过一个寒假能学会黑客技术吗?看完你就知道了

    一个寒假能成为黑客吗 资深白帽子来告诉你 如果你想的是学完去美国五角大楼内网随意溜达几圈 想顺走一点机密文件的话 劝你还是趁早放弃 但是成为一名初级黑客还是绰绰有余的 你只需要掌握好渗透测试 Web安全 数据库 搞懂web安全防护 SQL注
  • 如何使用内网穿透实现iStoreOS软路由公网远程访问局域网电脑桌面

    文章目录 简介 一 配置远程桌面公网地址 二 家中使用永久固定地址 访问公司电脑 具体操作方法是 简介 软路由 是PC的硬件加上路由系统来实现路由器
  • “性能压测揭密:关键指标分析!“

    在进行全链路压测和性能测试时 需要关注多个关键性能指标 KPIs 来评估系统的性能表现 以下是一些常见的性能测试指标 1 吞吐量 Throughput 系统在单位时间内能够处理的请求数量或事务数量 通常以每秒请求数 RPS TPS 来衡量
  • 成为一个黑客,就按照这个路线来!

    前几天一个同学在聊天中提到毕业后想要从事网络安全方向的工作 虽然他本身也是学计算机的 但是又怕心有余而力不足 因为 从事网络安全方面的工作向来起点都比较高 大学里少有开设这类课程的 在学校能够学到的知识比较有限 网上的关于这方面课程的质量又
  • 内网穿透的应用-使用Net2FTP轻松部署本地Web网站并公网访问管理内网资源

    文章目录 1 前言 2 Net2FTP网站搭建 2 1 Net2FTP下载和安装 2 2 Net2FTP网页测试 3 cpolar内网穿透 3 1 Cpolar云端设置 3 2 Cpolar本地设置
  • 一个寒假能学会黑客技术吗?看完你就知道了

    一个寒假能成为黑客吗 资深白帽子来告诉你 如果你想的是学完去美国五角大楼内网随意溜达几圈 想顺走一点机密文件的话 劝你还是趁早放弃 但是成为一名初级黑客还是绰绰有余的 你只需要掌握好渗透测试 Web安全 数据库 搞懂web安全防护 SQL注
  • 掌握内网渗透之道,成为实战高手,看《内网渗透实战攻略》就够了

    文末送书 文末送书 今天推荐一本网络安全领域优质书籍 内网渗透实战攻略 文章目录 前言 如何阅读本书 目录 文末送书 前言 当今 网络系统面临着越来越严峻的安全挑战 在众多的安全挑战中 一种有组织 有特定目标 长时间持续的新型网络攻击日益猖
  • 使用Hypothesis生成测试数据

    Hypothesis是Python的一个高级测试库 它允许编写 测试用例 时参数化 然后生成使测试失败的简单易懂的测试数据 可以用更少的工作在代码中发现更多的bug 安装 pip install hypothesis 如何设计 测试数据 通
  • 【CTF必看】从零开始的CTF学习路线(超详细),让你从小白进阶成大神!

    最近很多朋友在后台私信我 问应该怎么入门CTF 个人认为入门CTF之前大家应该先了解到底 什么是CTF 而你 学CTF的目的又到底是什么 其次便是最好具备相应的编程能力 若是完全不具备这些能力极有可能直接被劝退 毕竟比赛的时候动不动写个脚本
  • Web 安全漏洞之 OS 命令注入

    什么是 OS 命令注入 上周我们分享了一篇 Web 安全漏洞之 SQL 注入 其原理简单来说就是因为 SQL 是一种结构化字符串语言 攻击者利用可以随意构造语句的漏洞构造了开发者意料之外的语句 而今天要讲的 OS 命令注入其实原理和 SQL
  • 【信道估计】【MIMO】【FBMC】未来移动通信的滤波器组多载波调制方案(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及文章
  • WEB前端常见受攻击方式及解决办法总结

    一个网址建立后 如果不注意安全问题 就很容易被人攻击 下面讨论一下集中漏洞情况和放置攻击的方法 一 SQL注入 所谓的SQL注入 就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串 最终达到欺骗服务器执行恶意的SQL命
  • 基于java的物业管理系统设计与实现

    基于java的物业管理系统设计与实现 I 引言 A 研究背景和动机 物业管理系统是指对物业进行管理和服务的系统 该系统需要具备对物业信息 人员信息 财务信息等进行管理的能力 基于Java的物业管理系统设计与实现的研究背景和动机主要体现在以下
  • tcpdump抓包

    tcpdump抓包 基本概念 1 类型的关键字 host 指明一台主机 如 host 10 1 110 110 net 指明一个网络地址 如 net 10 1 0 0 port 指明端口号 如 port 8090 2 确定方向的关键字 sr
  • 为什么我强烈推荐大学生打CTF!

    前言 写这个文章是因为我很多粉丝都是学生 经常有人问 感觉大一第一个学期忙忙碌碌的过去了 啥都会一点 但是自己很难系统的学习到整个知识体系 很迷茫 想知道要如何高效学习 这篇文章我主要就围绕两点 减少那些罗里吧嗦的废话 直接上干货 CTF如
  • 【安全】简单解析统一身份认证:介绍、原理和实现方法

    深入解析统一身份认证 介绍 原理和实现方法 导语 统一身份认证是什么 统一身份认证的原理 统一身份认证的实现 结语 导语 随着互联网的发展和各种在线服务的普及 用户在不同的应用和平台上需要进行多次身份验证 为了简化用户的登录和减少重复操作
  • 光波导结构

    摘要 增强现实和混合现实 AR MR 领域的新应用引起了人们对带有光栅区域的光波导系统的越来越多的关注 这些光波导系统用于输入和输出耦合以及扩瞳目的 VirtualLab Fusion为这类系统的仿真和设计提供了几个强大的工具 其中一个是具
  • 【安全】网络安全态势感知

    文章目录 一 态势感知简介 1 概念 2 形象举例 3 应具备的能力 二 为什么要态势感知 为什么网络安全态势感知很重要 三 态势感知系统的功能 四 如何评估态势感知的建设结果 五 什么是态势感知的三个层级 四 业界的态势感知产品 1 安全

随机推荐

  • FreeRTOS-定时器详解

    作者简介 嵌入式入坑者 与大家一起加油 希望文章能够帮助各位 个人主页 rivencode的个人主页 系列专栏 玩转FreeRTOS 保持学习 保持热爱 认真分享 一起进步 目录 前言 一 软件定时器的简介 二 软件定时器的创建 1 软件定
  • 对登录接口的简单图形验证码进行识别 20221004

    Python黑客编程原理与实战 作业 二 1 编程题 1 语言限定为python3 环境准备 使用虚拟python3环境 pip3 install virtualenv virtualenv python 3 10 vpy3 10 sour
  • 什么是持续集成的自动化测试

    如今互联网软件的开发 测试和发布 已经形成了一套非常标准的流程 最重要的组成部分就是持续集成 Continuous integration 简称CI 目前主要的持续集成系统是Jenkins 那么什么是持续集成 持续集成指的是 频繁地 一天多
  • RainDiffusion: When Unsupervised Learning Meets Diffusion Models for Real-world Image Deraining

    一 摘要 介绍及相关工作 传统方法 图像去雨的传统方法通常利用不同的先验 例如稀疏编码 高斯混合模型和低秩表示 然而 这些手工制作的先验表现出有限的代表性能力 导致在复杂和多变的下雨情况下的结果不佳 监督 通过从大量合成的无雨 下雨图像对中
  • 基于Pytorch的深度学习 —— 非线性激活函数

    文章目录 作用 Sigmoid tanh ReLU Leaky ReLU SoftPlus 开发环境 作用 非线性激活函数获取输入 并对其进行数学变换后生成输出 非线性激活函数为神经元引入了非线性因素 使得神经网络可以任意逼近任何非线性函数
  • [编程开发工具-7]:四款功能强大的代码比较工具:Araxis Merge、Beyond compare、DiffMerge、WinMerge

    前言 我们经常会遇到需要比较同一文件的不同版本 特别是代码文件 比如在两个不同的github仓库之间merge代码 如果人工去对比查看 势必费时实力还会出现纰漏和错误 因此我们需要借助一些代码比较的工具来自动完成这些工作 对于专业人员 立即
  • 我制作了python脚本自动抢购淘宝秒杀产品,学会优先享受双十一福利

    这是本文的标题 前言 第一步 第二步 第三步 第四步 零基础Python学习资源介绍 Python学习路线汇总 Python必备开发工具 Python学习视频600合集 实战案例 100道Python练习题 面试刷题 资料领取 好文推荐 前
  • 【笔记:模拟CMOS集成电路】两级运算放大器设计与仿真(带版图)

    笔记 模拟CMOS集成电路 两级运算放大器设计与仿真 带版图 前言 1 电路分析 1 1电路结构 电路描述 1 2小信号分析 1 3公式 2指标设计 2 1预期设计指标参数 2 2参数分析 1 确定gm1 gm6 2 分配电流 3 确定M1
  • 技术管理者培训小结一:内在修养

    经过技术管理者培训课程 将一些内容以小结方式记录下来 既能作为培训沉淀 又能作为备忘 一 管理者的内在修养 1 情绪控制应该脱离 刺激 回应模式 人的终极自由是自己的情绪由自己控制 发挥四大天赋潜能 自我意识 想象力 良知 独立意志 由受制
  • Java线程安全性中的对象发布和逸出

    转自 http www cnblogs com yulinfeng p 5975728 html 发布 Publish 和逸出 Escape 这两个概念倒是第一次听说 不过它在实际当中却十分常见 这和Java并发编程的线程安全性就很大的关系
  • 银行编码规则

    编号 银行名称 001 中国人民银行 011 国家金库 102 中国工商银行 103 中国农业银行 104 中国银行 105 中国建设银行 201 国家开发银行 202 中国进出口银行 203 中国农业发展银行 301 交通银行 302 中
  • 静态编译与动态编译的区别以及为什么需要静态编译

    1 由于博创杯开发板的不可更改性 所以导致的结果是什么呢 那就是无法动态连接 还有一个需要注意的是 板子上面上面用的是4 4 1的gcc 一旦你Ubuntu使用的开发板高于它 都有可能导致运行程序失败 这就是程序失败的例子 2 Linux
  • css 设置段落样式 各种设置方式详细解释

    我本来打算告诉你 当你不在我身边的这段日子里 我遇到的所有糟糕事 但最后我只想告诉你 我很想你 设置段落样式 今天我们详细讲讲设置段落样式的方式 网页的排版离不开对文字段落的设置 这里主要讲述常用的段落样式 包括文字对齐方式 段落首行缩进
  • Java————错误:找不到或无法加载主类

    小编表示WTF 为什么找不到主类dictionary2 0 找不到是什么原因 1 可能是编译的时候后缀带了 class 把后缀去掉 2 可能是因为你的java文件带了package包 但是你还在java文件所在目录运行 返回包的前一目录进行
  • jquery 获取select选中option的索引以及根据索引过滤option

    jquery获取选中option的索引 select可以通过selectedIndex属性快速获取选中option索引 用法如下 select get 0 selectedIndex jquery跟据索引过滤select下的子元素optio
  • Tomcat管理页面配置与访问地址限制修改

    1 增加用户角色和用户 conf tomcat users xml 增加配置
  • UE基础使用

    一 打包 二 显示FPS 三 坐标系 四 第三人称模式 四 筛选物体 五 物体对其到地面 六 UE加载窗口默认布局 七 关闭磁力吸附 关闭后可以自由移动 八 属性变为默认值 九 快速聚焦到物体 按F键或者双击 十 按shift键拖拽坐标轴
  • 机械革命 键盘灯 linux,机械革命x6Ti安装ubuntu(100%成功)

    这个教程是本人亲自试验成功的 方案为ssd不变 ubuntu装在机械硬盘 步骤 1 在电脑的机械硬盘中压缩出一个大小为200G的空间 无论哪个盘 你按自己的需求压缩大小 2 在官网下载系统镜像 解压到U盘中 由于这款电脑的主板新 所以直接解
  • SpringBoot-Thymeleaf-MySQL-SpringMVC实现网页端的数据库信息的增删改查(JavaEE巨详细版)

    Hello 欢迎来到我的博客 既然选择了远方 便只顾风雨兼程 源码已上传资源 0积分获取 觉得有用的点个赞嘛 源码点击这里 上一篇 博客只实现了数据库信息的网页端展示 本篇博客我们来更详细的写一下学生信息管理系统的网页端跳转版增删改查 ht
  • 计算机网络 day8 动态路由 - NAT - SNAT实验 - VMware的网卡的3种模式

    目录 动态路由 IGP 和 EGP 参考网课 4 6 1 路由选择协议概述 哔哩哔哩 bilibili 编辑 IGP Interior Gateway Protocol 内部网关协议 EGP Interior Gateway Protoco