主頁 >  其他 > 使用 LVS 實作負載均衡原理及安裝配置詳解(課堂隨筆)

使用 LVS 實作負載均衡原理及安裝配置詳解(課堂隨筆)

2020-09-24 01:55:15 其他

一、負載均衡LVS基本介紹

 

LB集群的架構和原理很簡單,就是當用戶的請求過來時,會直接分發到Director Server上,然后它把用戶的請求根據設定好的調度演算法,智能均衡地分發到后端真正服務器(real server)上,為了避免不同機器上用戶請求得到的資料不一樣,需要用到了共享存盤,這樣保證所有用戶請求的資料是一樣的,

 

LVS是 Linux Virtual Server 的簡稱,也就是Linux虛擬服務器,這是一個由章文嵩博士發起的一個開源專案,它的官方網是 http://www.linuxvirtualserver.org 現在 LVS 已經是 Linux 內核標準的一部分,使用 LVS 可以達到的技術目標是:通過 LVS 達到的負載均衡技術和 Linux 作業系統實作一個高性能高可用的 Linux 服務器集群,它具有良好的可靠性、可擴展性和可操作性,從而以低廉的成本實作最優的性能,LVS 是一個實作負載均衡集群的開源軟體專案,LVS架構從邏輯上可分為調度層、Server集群層和共享存盤,

 

二、LVS的基本作業原理

 

 

1. 當用戶向負載均衡調度器(Director Server)發起請求,調度器將請求發往至內核空間


2. PREROUTING鏈首先會接收到用戶請求,判斷目標IP確定是本機IP,將資料包發往INPUT鏈


3. IPVS是作業在INPUT鏈上的,當用戶請求到達INPUT時,IPVS會將用戶請求和自己已定義好的集群服務進行比對,如果用戶請求的就是定義的集群服務,那么此時IPVS會強行修改資料包里的目標IP地址及埠,并將新的資料包發往POSTROUTING鏈


4. POSTROUTING鏈接收資料包后發現目標IP地址剛好是自己的后端服務器,那么此時通過選路,將資料包最終發送給后端的服務器

 

三、LVS的組成

 

LVS 由2部分程式組成,包括 ipvs 和 ipvsadm,

 

1.ipvs(ip virtual server):一段代碼作業在內核空間,叫ipvs,是真正生效實作調度的代碼,


2. ipvsadm:另外一段是作業在用戶空間,叫ipvsadm,負責為ipvs內核框架撰寫規則,定義誰是集群服務,而誰是后端真實的服務器(Real Server)

 

四、LVS相關術語

 

1. DS:Director Server,指的是前端負載均衡器節點,
2. RS:Real Server,后端真實的作業服務器,
3. VIP:向外部直接面向用戶請求,作為用戶請求的目標的IP地址,
4. DIP:Director Server IP,主要用于和內部主機通訊的IP地址,
5. RIP:Real Server IP,后端服務器的IP地址,
6. CIP:Client IP,訪問客戶端的IP地址,

 

下邊是三種作業模式的原理和特點總結,

 

五、LVS/NAT原理和特點

 

1. 重點理解NAT方式的實作原理和資料包的改變,

 

 

(a). 當用戶請求到達Director Server,此時請求的資料報文會先到內核空間的PREROUTING鏈, 此時報文的源IP為CIP,目標IP為VIP
(b). PREROUTING檢查發現資料包的目標IP是本機,將資料包送至INPUT鏈
(c). IPVS比對資料包請求的服務是否為集群服務,若是,修改資料包的目標IP地址為后端服務器IP,然后將資料包發至POSTROUTING鏈, 此時報文的源IP為CIP,目標IP為RIP
(d). POSTROUTING鏈通過選路,將資料包發送給Real Server
(e). Real Server比對發現目標為自己的IP,開始構建回應報文發回給Director Server, 此時報文的源IP為RIP,目標IP為CIP
(f). Director Server在回應客戶端前,此時會將源IP地址修改為自己的VIP地址,然后回應給客戶端, 此時報文的源IP為VIP,目標IP為CIP

 

2. LVS-NAT模型的特性

 

  • RS應該使用私有地址,RS的網關必須指向DIP

  • DIP和RIP必須在同一個網段內

  • 請求和回應報文都需要經過Director Server,高負載場景中,Director Server易成為性能瓶頸

  • 支持埠映射

  • RS可以使用任意作業系統

  • 缺陷:對Director Server壓力會比較大,請求和回應都需經過director server

六、LVS/DR原理和特點

 

1.重將請求報文的目標MAC地址設定為挑選出的RS的MAC地址

 

 

(a) 當用戶請求到達Director Server,此時請求的資料報文會先到內核空間的PREROUTING鏈, 此時報文的源IP為CIP,目標IP為VIP
(b) PREROUTING檢查發現資料包的目標IP是本機,將資料包送至INPUT鏈
(c) IPVS比對資料包請求的服務是否為集群服務,若是,將請求報文中的源MAC地址修改為DIP的MAC地址,將目標MAC地址修改RIP的MAC地址,然后將資料包發至POSTROUTING鏈, 此時的源IP和目的IP均未修改,僅修改了源MAC地址為DIP的MAC地址,目標MAC地址為RIP的MAC地址
(d) 由于DS和RS在同一個網路中,所以是通過二層來傳輸,POSTROUTING鏈檢查目標MAC地址為RIP的MAC地址,那么此時資料包將會發至Real Server,
(e) RS發現請求報文的MAC地址是自己的MAC地址,就接收此報文,處理完成之后,將回應報文通過lo介面傳送給eth0網卡然后向外發出, 此時的源IP地址為VIP,目標IP為CIP
(f) 回應報文最終送達至客戶端

 

2. LVS-DR模型的特性

 

  • 特點1:保證前端路由將目標地址為VIP報文統統發給Director Server,而不是RS

  • RS可以使用私有地址;也可以是公網地址,如果使用公網地址,此時可以通過互聯網對RIP進行直接訪問

  • RS跟Director Server必須在同一個物理網路中

  • 所有的請求報文經由Director Server,但回應報文必須不能進過Director Server

  • 不支持地址轉換,也不支持埠映射

  • RS可以是大多數常見的作業系統

  • RS的網關絕不允許指向DIP(因為我們不允許他經過director)

  • RS上的lo介面配置VIP的IP地址

  • 缺陷:RS和DS必須在同一機房中

3. 特點1的解決方案:

 

  • 在前端路由器做靜態地址路由系結,將對于VIP的地址僅路由到Director Server

  • 存在問題:用戶未必有路由操作權限,因為有可能是運營商提供的,所以這個方法未必實用

  • arptables:在arp的層次上實作在ARP決議時做防火墻規則,過濾RS回應ARP請求,這是由iptables提供的

  • 修改RS上內核引數(arp_ignore和arp_announce)將RS上的VIP配置在lo介面的別名上,并限制其不能回應對VIP地址決議請求,

七、LVS/Tun原理和特點

 

在原有的IP報文外再次封裝多一層IP首部,內部IP首部(源地址為CIP,目標IIP為VIP),外層IP首部(源地址為DIP,目標IP為RIP)

 

 

(a) 當用戶請求到達Director Server,此時請求的資料報文會先到內核空間的PREROUTING鏈, 此時報文的源IP為CIP,目標IP為VIP ,
(b) PREROUTING檢查發現資料包的目標IP是本機,將資料包送至INPUT鏈
(c) IPVS比對資料包請求的服務是否為集群服務,若是,在請求報文的首部再次封裝一層IP報文,封裝源IP為為DIP,目標IP為RIP,然后發至POSTROUTING鏈, 此時源IP為DIP,目標IP為RIP
(d) POSTROUTING鏈根據最新封裝的IP報文,將資料包發至RS(因為在外層封裝多了一層IP首部,所以可以理解為此時通過隧道傳輸), 此時源IP為DIP,目標IP為RIP
(e) RS接收到報文后發現是自己的IP地址,就將報文接收下來,拆除掉最外層的IP后,會發現里面還有一層IP首部,而且目標是自己的lo介面VIP,那么此時RS開始處理此請求,處理完成之后,通過lo介面送給eth0網卡,然后向外傳遞, 此時的源IP地址為VIP,目標IP為CIP
(f) 回應報文最終送達至客戶端

 

LVS-Tun模型特性

 

  • RIP、VIP、DIP全是公網地址

  • RS的網關不會也不可能指向DIP

  • 所有的請求報文經由Director Server,但回應報文必須不能進過Director Server

  • 不支持埠映射

  • RS的系統必須支持隧道

其實企業中最常用的是 DR 實作方式,而 NAT 配置上比較簡單和方便,后邊實踐中會總結 DR 和 NAT 具體使用配置程序,

 

八、LVS的八種調度演算法

 

1.輪叫調度 rr

這種演算法是最簡單的,就是按依次回圈的方式將請求調度到不同的服務器上,該演算法最大的特點就是簡單,輪詢演算法假設所有的服務器處理請求的能力都是一樣的,調度器會將所有的請求平均分配給每個真實服務器,不管后端 RS 配置和處理能力,非常均衡地分發下去,

 

2. 加權輪叫 wrr


這種演算法比 rr 的演算法多了一個權重的概念,可以給 RS 設定權重,權重越高,那么分發的請求數越多,權重的取值范圍 0 – 100,主要是對rr演算法的一種優化和補充, LVS 會考慮每臺服務器的性能,并給每臺服務器添加要給權值,如果服務器A的權值為1,服務器B的權值為2,則調度到服務器B的請求會是服務器A的2倍,權值越高的服務器,處理的請求越多,

 

3. 最少鏈接 lc


這個演算法會根據后端 RS 的連接數來決定把請求分發給誰,比如 RS1 連接數比 RS2 連接數少,那么請求就優先發給 RS1

 

4. 加權最少鏈接 wlc

這個演算法比 lc 多了一個權重的概念,

 

5. 基于區域性的最少連接調度演算法 lblc


這個演算法是請求資料包的目標 IP 地址的一種調度演算法,該演算法先根據請求的目標 IP 地址尋找最近的該目標 IP 地址所有使用的服務器,如果這臺服務器依然可用,并且有能力處理該請求,調度器會盡量選擇相同的服務器,否則會繼續選擇其它可行的服務器

 

6. 復雜的基于區域性最少的連接演算法 lblcr


記錄的不是要給目標 IP 與一臺服務器之間的連接記錄,它會維護一個目標 IP 到一組服務器之間的映射關系,防止單點服務器負載過高,

 

7. 目標地址散列調度演算法 dh


該演算法是根據目標 IP 地址通過散列函式將目標 IP 與服務器建立映射關系,出現服務器不可用或負載過高的情況下,發往該目標 IP 的請求會固定發給該服務器,

 

8. 源地址散列調度演算法 sh

與目標地址散列調度演算法類似,但它是根據源地址散列演算法進行靜態分配固定的服務器資源,

 

九、實踐LVS的NAT模式

 

1、實驗環境

 

三臺服務器,一臺作為 director,兩臺作為 real server,director 有一個外網網卡(172.16.254.200) 和一個內網ip(192.168.0.8),兩個 real server 上只有內網 ip (192.168.0.18) 和 (192.168.0.28),并且需要把兩個 real server 的內網網關設定為 director 的內網 ip(192.168.0.8)

 

2、安裝和配置

 

兩個 real server 上都安裝 nginx 服務

# yum install -y nginx

 

Director 上安裝 ipvsadm

# yum install -y ipvsadm

 

Director 上編輯 nat 實作腳本

 

# vim /usr/local/sbin/lvs_nat.sh

# 編輯寫入如下內容:

#! /bin/bash

# director服務器上開啟路由轉發功能:

echo 1 > /proc/sys/net/ipv4/ip_forward

# 關閉 icmp 的重定向

echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth1/send_redirects

# director設定 nat 防火墻

iptables -t nat -F

iptables -t nat -X

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

# director設定 ipvsadm

IPVSADM='/sbin/ipvsadm'

$IPVSADM -C

$IPVSADM -A -t 172.16.254.200:80 -s wrr

$IPVSADM -a -t 172.16.254.200:80 -r 192.168.0.18:80 -m -w 1

$IPVSADM -a -t 172.16.254.200:80 -r 192.168.0.28:80 -m -w 1

 

保存后,在 Director 上直接運行這個腳本就可以完成 lvs/nat 的配置

 

/bin/bash /usr/local/sbin/lvs_nat.sh

 

查看ipvsadm設定的規則

 

ipvsadm -ln

 

3、測驗LVS的效果

 

通過瀏覽器測驗2臺機器上的web內容 http://172.16.254.200 ,為了區分開,我們可以把 nginx 的默認頁修改一下:

 

在 RS1 上執行

# echo "rs1rs1" >/usr/share/nginx/html/index.html

 

在 RS2 上執行

# echo "rs2rs2" >/usr/share/nginx/html/index.html

 

注意,切記一定要在兩臺 RS 上設定網關的 IP 為 director 的內網 IP,

 

十、實踐LVS的DR模式

 

1、實驗環境

 

三臺機器:

 

  • Director節點:  (eth0 192.168.0.8  vip eth0:0 192.168.0.38)

  • Real server1: (eth0 192.168.0.18 vip lo:0 192.168.0.38)

  • Real server2: (eth0 192.168.0.28 vip lo:0 192.168.0.38)

2、安裝

 

兩個 real server 上都安裝 nginx 服務

# yum install -y nginx

 

Director 上安裝 ipvsadm

# yum install -y ipvsadm

 

3、Director 上配置腳本

 

# vim /usr/local/sbin/lvs_dr.sh

#! /bin/bash

echo 1 > /proc/sys/net/ipv4/ip_forward

ipv=/sbin/ipvsadm

vip=192.168.0.38

rs1=192.168.0.18

rs2=192.168.0.28

ifconfig eth0:0 down

ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip dev eth0:0

$ipv -C

$ipv -A -t $vip:80 -s wrr

$ipv -a -t $vip:80 -r $rs1:80 -g -w 3

$ipv -a -t $vip:80 -r $rs2:80 -g -w 1

 

執行腳本:

 

# bash /usr/local/sbin/lvs_dr.sh

 

4、在2臺 rs 上配置腳本:

 

# vim /usr/local/sbin/lvs_dr_rs.sh

#! /bin/bash

vip=192.168.0.38

ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip lo:0

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

 

rs 上分別執行腳本:

 

bash /usr/local/sbin/lvs_dr_rs.sh

 

5、實驗測驗

 

測驗方式同上,瀏覽器訪問 http://192.168.0.38

 

注意:在 DR 模式下,2臺 rs 節點的 gateway 不需要設定成 dir 節點的 IP ,

 

參考鏈接地址:

http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html

 

十一、LVS結合keepalive

 

LVS可以實作負載均衡,但是不能夠進行健康檢查,比如一個rs出現故障,LVS 仍然會把請求轉發給故障的rs服務器,這樣就會導致請求的無效性,keepalive 軟體可以進行健康檢查,而且能同時實作 LVS 的高可用性,解決 LVS 單點故障的問題,其實 keepalive 就是為 LVS 而生的,

 

1、實驗環境

 

4臺節點

 

  • Keepalived1 + lvs1(Director1):192.168.0.48

  • Keepalived2 + lvs2(Director2):192.168.0.58

  • Real server1:192.168.0.18

  • Real server2:192.168.0.28

  • IP: 192.168.0.38

2、安裝系統軟體

 

Lvs + keepalived的2個節點安裝

 

# yum install ipvsadm keepalived -y

 

Real server + nginx服務的2個節點安裝

 

# yum install epel-release -y

# yum install nginx -y

 

3、設定配置腳本

 

Real server節點2臺配置腳本:

 

# vim /usr/local/sbin/lvs_dr_rs.sh

#! /bin/bash

vip=192.168.0.38

ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip lo:0

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

 

2節點rs 上分別執行腳本:

bash /usr/local/sbin/lvs_dr_rs.sh

 

keepalived節點配置(2節點):

 

主節點( MASTER )組態檔

vim /etc/keepalived/keepalived.conf

vrrp_instance VI_1 {

    state MASTER

    interface eth0

    virtual_router_id 51

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.0.38

    }

}

 

virtual_server 192.168.0.38 80 {

    delay_loop 6

    lb_algo rr

    lb_kind DR

    persistence_timeout 0

    protocol TCP

 

    real_server 192.168.0.18 80 {

        weight 1

        TCP_CHECK {

            connect_timeout 10

            nb_get_retry 3

            delay_before_retry 3

            connect_port 80

        }

    }

 

    real_server 192.168.0.28 80 {

        weight 1

        TCP_CHECK {

            connect_timeout 10

            nb_get_retry 3

            delay_before_retry 3

            connect_port 80

        }

    }

}

 

從節點( BACKUP )組態檔

 

拷貝主節點的組態檔keepalived.conf,然后修改如下內容:

 

state MASTER -> state BACKUP

priority 100 -> priority 90

 

keepalived的2個節點執行如下命令,開啟轉發功能:

 

# echo 1 > /proc/sys/net/ipv4/ip_forward

 

4、啟動keepalive

 

<strong>先主后從分別啟動keepalive</strong>

service keepalived start

 

5、驗證結果

 

實驗1

 

手動關閉192.168.0.18節點的nginx,service nginx stop 在客戶端上去測驗訪問 http://192.168.0.38 結果正常,不會出現訪問18節點,一直訪問的是28節點的內容,

 

實驗2

 

手動重新開啟 192.168.0.18 節點的nginx, service nginx start 在客戶端上去測驗訪問 http://192.168.0.38 結果正常,按照 rr 調度演算法訪問18節點和28節點,

 

實驗3

 

測驗 keepalived 的HA特性,首先在master上執行命令 ip addr ,可以看到38的vip在master節點上的;這時如果在master上執行 service keepalived stop 命令,這時vip已經不再master上,在slave節點上執行 ip addr 命令可以看到 vip 已經正確漂到slave節點,這時客戶端去訪問 http://192.168.0.38 訪問依然正常,驗證了 keepalived的HA特性,

 

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/115697.html

標籤:其他

上一篇:管理溝通-溝通框架

下一篇:編譯原理的文法和語言總結與梳理

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more