精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用 Go 和樹莓派排查 WiFi 問題

開發(fā) 后端
實(shí)現(xiàn)一個(gè) WiFi 掃描器玩玩~

去年夏天,我和妻子變賣了家產(chǎn),帶著我們的兩只狗移居了夏威夷。這里有美麗的陽光、溫暖的沙灘、涼爽的沖浪等你能想到的一切。我們同樣遇到了一些意料之外的事:WiFi 問題。

不過,這不是夏威夷的問題,而是我們租住公寓的問題。我們住在一個(gè)單身公寓里,與房東的公寓僅一墻之隔。我們的租房協(xié)議中包含了免費(fèi)的網(wǎng)絡(luò)連接!好耶!只不過,它是由房東的公寓里的 WiFi 提供的,哇哦……

說實(shí)話,它的效果還不錯(cuò)……吧?好吧,我承認(rèn)它不盡如人意,并且不知道是哪里的問題。路由器明明就在墻的另一邊,但我們的信號(hào)就是很不穩(wěn)定,經(jīng)常會(huì)自動(dòng)斷開連接。在家的時(shí)候,我們的 WiFi 路由器的信號(hào)能夠穿過層層墻壁和地板。事實(shí)上,它所覆蓋的區(qū)域比我們居住的 600 平方英尺(大約 55 平方米)的公寓還要大。

在這種情況下,一個(gè)優(yōu)秀的技術(shù)人員會(huì)怎么做呢?既然想知道為什么,當(dāng)然是開始排查咯!

幸運(yùn)的是,我們?cè)诎峒抑安]有變賣掉樹莓派 Zero W。它是如此小巧便攜! 我當(dāng)然就把它一起帶來了。我有一個(gè)機(jī)智的想法:通過樹莓派和它內(nèi)置的 WiFi 適配器,使用 Go 語言編寫一個(gè)小程序來測(cè)量并顯示從路由器收到的 WiFi 信號(hào)。我打算先簡(jiǎn)單快速地把它實(shí)現(xiàn)出來,以后再去考慮優(yōu)化。真是麻煩!我現(xiàn)在只想知道這個(gè) WiFi 是怎么回事!

谷歌搜索了一番后,我發(fā)現(xiàn)了一個(gè)比較有用的 Go 軟件包 ??mdlayher/wifi??,它專門用于 WiFi 相關(guān)操作,聽起來很有希望!

獲取 WiFi 接口的信息

我的計(jì)劃是查詢 WiFi 接口的統(tǒng)計(jì)數(shù)據(jù)并返回信號(hào)強(qiáng)度,所以我需要先找到設(shè)備上的接口。幸運(yùn)的是,??mdlayher/wifi??? 包有一個(gè)查詢它們的方法,所以我可以創(chuàng)建一個(gè) ??main.go?? 來實(shí)現(xiàn)它,具體代碼如下:

package main

import (
"fmt"
"github.com/mdlayher/wifi"
)

func main() {
c, err := wifi.New()
defer c.Close()

if err != nil {
panic(err)
}

interfaces, err := c.Interfaces()

for _, x := range interfaces {
fmt.Printf("%+v\n", x)
}
}

讓我們來看看上面的代碼都做了什么吧!首先是導(dǎo)入依賴包,導(dǎo)入后,我就可以使用 ??mdlayher/wifi??? 模塊就在 ??main??? 函數(shù)中創(chuàng)建一個(gè)新的客戶端(類型為 ??*Client???)。接下來,只需要調(diào)用這個(gè)新的客戶端(變量名為 ??c???)的 ??c.Interfaces()?? 方法就可以獲得系統(tǒng)中的接口列表。接著,我就可以遍歷包含接口指針的切片(變長(zhǎng)數(shù)組),然后打印出它們的具體信息。

注意到 ??%+v??? 中有一個(gè) ??+??? 了嗎?它意味著程序會(huì)詳細(xì)輸出 ??*Interface?? 結(jié)構(gòu)體中的屬性名,這將有助于我標(biāo)識(shí)出我看到的東西,而不用去查閱文檔。

運(yùn)行上面的代碼后,我得到了機(jī)器上的 WiFi 接口列表:

&{Index:0 Name: HardwareAddr:5c:5f:67:f3:0a:a7 PHY:0 Device:3 Type:P2P device Frequency:0}
&{Index:3 Name:wlp2s0 HardwareAddr:5c:5f:67:f3:0a:a7 PHY:0 Device:1 Type:station Frequency:2412}

注意,兩行輸出中的 MAC 地址(??HardwareAddr???)是相同的,這意味著它們是同一個(gè)物理硬件。你也可以通過 ??PHY: 0??? 來確認(rèn)。查閱 Go 的 ??wifi 模塊文檔???,??PHY?? 指的就是接口所屬的物理設(shè)備。

第一個(gè)接口沒有名字,類型是 ??TYPE: P2P???。第二個(gè)接口名為 ??wpl2s0???,類型是 ??TYPE: Station???。??wifi??? 模塊的文檔列出了 ??不同類型的接口???,以及它們的用途。根據(jù)文檔,??P2P???(點(diǎn)對(duì)點(diǎn)傳輸) 類型表示“該接口屬于點(diǎn)對(duì)點(diǎn)客戶端網(wǎng)絡(luò)中的一個(gè)設(shè)備”。我認(rèn)為這個(gè)接口的用途是 ??WiFi 直連?? ,這是一個(gè)允許兩個(gè) WiFi 設(shè)備在沒有中間接入點(diǎn)的情況下直接連接的標(biāo)準(zhǔn)。

??Station??(基站)類型表示“該接口是具有控制接入點(diǎn)controlling access point的客戶端設(shè)備管理的基本服務(wù)集basic service set(BSS)的一部分”。這是大眾熟悉的無線設(shè)備標(biāo)準(zhǔn)功能:作為一個(gè)客戶端來連接到網(wǎng)絡(luò)接入點(diǎn)。這是測(cè)試 WiFi 質(zhì)量的重要接口。

利用接口獲取基站信息

利用該信息,我可以修改遍歷接口的代碼來獲取所需信息:

for _, x := range interfaces {
if x.Type == wifi.InterfaceTypeStation {
// c.StationInfo(x) returns a slice of all
// the staton information about the interface
info, err := c.StationInfo(x)
if err != nil {
fmt.Printf("Station err: %s\n", err)
}
for _, x := range info {
fmt.Printf("%+v\n", x)
}
}
}

首先,這段程序檢查了 ??x.Type???(接口類型)是否為 ??wifi.InterfaceTypeStation???,它是一個(gè)基站接口(也是本練習(xí)中唯一涉及到的類型)。不幸的是名字出現(xiàn)了沖突,這個(gè)接口“類型”并不是 Golang 中的“類型”。事實(shí)上,我在這里使用了一個(gè)叫做 ??interfaceType?? 的 Go 類型來代表接口類型。呼,我花了一分鐘才弄明白!

然后,假設(shè)接口的類型正確,我們就可以調(diào)用 ??c.StationInfo(x)??? 來檢索基站信息,??StationInfo()??? 方法可以獲取到關(guān)于這個(gè)接口 ??x?? 的信息。

這將返回一個(gè)包含 ??*StationInfo??? 指針的切片。我不大確定這里為什么要用切片,或許是因?yàn)榻涌诳赡芊祷囟鄠€(gè) ??StationInfo????不管怎么樣,我都可以遍歷這個(gè)切片,然后使用之前提到的 ??+%v??? 技巧格式化打印出 ??StationInfo?? 結(jié)構(gòu)的屬性名和屬性值。

運(yùn)行上面的程序后,我得到了下面的輸出:

&{HardwareAddr:70:5a:9e:71:2e:d4 Connected:17m10s Inactive:1.579s ReceivedBytes:2458563 TransmittedBytes:1295562 ReceivedPackets:6355 TransmittedPackets:6135 ReceiveBitrate:2000000 TransmitBitrate:43300000 Signal:-79 TransmitRetries:2306 TransmitFailed:4 BeaconLoss:2}

我感興趣的是 ??Signal???(信號(hào))部分,可能還有 ??TransmitFailed???(傳輸失敗)和 ??BeaconLoss??(信標(biāo)丟失)部分。信號(hào)強(qiáng)度是以 dBm(分貝-毫瓦decibel-milliwatts)為單位來報(bào)告的。

簡(jiǎn)短科普:如何讀懂 WiFi dBm

根據(jù) ??MetaGeek?? 的說法:


  • -30 最佳,但它既不現(xiàn)實(shí)也沒有必要
  • -67 非常好,它適用于需要可靠數(shù)據(jù)包傳輸?shù)膽?yīng)用,例如流媒體
  • -70 還不錯(cuò),它是實(shí)現(xiàn)可靠數(shù)據(jù)包傳輸?shù)牡拙€,適用于電子郵件和網(wǎng)頁瀏覽
  • -80 很差,只是基本連接,數(shù)據(jù)包傳輸不可靠
  • -90 不可用,接近“背景噪聲noise floor”

注意:dBm 是對(duì)數(shù)尺度,-60 比 -30 要低 1000 倍。

使它成為一個(gè)真的“掃描器”

所以,看著上面輸出顯示的我的信號(hào):-79。哇哦,感覺不大好呢。不過單看這個(gè)結(jié)果并沒有太大幫助,它只能提供某個(gè)時(shí)間點(diǎn)的參考,只對(duì) WiFi 網(wǎng)絡(luò)適配器在特定物理空間的某一瞬間有效。一個(gè)連續(xù)的讀數(shù)會(huì)更有用,借助于它,我們觀察到信號(hào)隨著樹莓派的移動(dòng)而變化。我可以再次修改 ??main?? 函數(shù)來實(shí)現(xiàn)這一點(diǎn)。

var i *wifi.Interface

for _, x := range interfaces {
if x.Type == wifi.InterfaceTypeStation {
// Loop through the interfaces, and assign the station
// to var x
// We could hardcode the station by name, or index,
// or hardwareaddr, but this is more portable, if less efficient
i = x
break
}
}

for {
// c.StationInfo(x) returns a slice of all
// the staton information about the interface
info, err := c.StationInfo(i)
if err != nil {
fmt.Printf("Station err: %s\n", err)
}

for _, x := range info {
fmt.Printf("Signal: %d\n", x.Signal)
}

time.Sleep(time.Second)
}


首先,我命名了一個(gè) ??wifi.Interface??? 類型的變量 ??i??。因?yàn)樗谘h(huán)的范圍外,所以我可以用它來存儲(chǔ)接口信息。循環(huán)內(nèi)創(chuàng)建的任何變量在該循環(huán)的范圍外都是不可訪問的。

然后,我可以把這個(gè)循環(huán)一分為二。第一個(gè)遍歷了 ??c.Interfaces()??? 返回的接口切片,如果元素是一個(gè) ??Station??? 類型,它就將其存儲(chǔ)在先前創(chuàng)建的變量 ??i?? 中,并跳出循環(huán)。

第二個(gè)循環(huán)是一個(gè)死循環(huán),它將不斷地運(yùn)行,直到我按下 ??Ctrl + C?? 來結(jié)束程序。和之前一樣,這個(gè)循環(huán)內(nèi)部獲取接口信息、檢索基站信息,并打印出信號(hào)信息。然后它會(huì)休眠一秒鐘,再次運(yùn)行,反復(fù)打印信號(hào)信息,直到我退出為止。

運(yùn)行上面的程序后,我得到了下面的輸出:

[chris@marvin wifi-monitor]$ go run main.go
Signal: -81
Signal: -81
Signal: -79
Signal: -81

哇哦,感覺不妙。

繪制公寓信號(hào)分布圖

不管怎么說,知道這些信息總比不知道要好。讓樹莓派連接上顯示器或者電子墨水屏,并接上電源,我就可以讓它在公寓里移動(dòng),并繪制出信號(hào)死角的位置。

劇透一下:由于房東的接入點(diǎn)在隔壁的公寓里,對(duì)我來說最大的死角是以公寓廚房的冰箱為頂點(diǎn)的一個(gè)圓錐體形狀區(qū)域......這個(gè)冰箱與房東的公寓靠著一堵墻!

我想如果用《龍與地下城》里的黑話來說,它就是一個(gè)“沉默之錐Cone of Silence”。或者至少是一個(gè)“糟糕的網(wǎng)絡(luò)連接之錐Cone of Poor Internet”。

總之,這段代碼可以直接在樹莓派上運(yùn)行 ??go build -o wifi_scanner??? 來編譯,得到的二進(jìn)制文件 ??wifi_scanner?? 可以運(yùn)行在其他同樣的ARM 設(shè)備上。另外,它也可以在常規(guī)系統(tǒng)上用正確的 ARM 設(shè)備庫(kù)進(jìn)行編譯。

祝你掃描愉快!希望你的 WiFi 路由器不在你的冰箱后面!你可以在 ??我的 GitHub 存儲(chǔ)庫(kù)?? 中找到這個(gè)項(xiàng)目所用的代碼。

責(zé)任編輯:龐桂玉 來源: Linux中國(guó)
相關(guān)推薦

2019-03-31 08:00:02

樹莓派更新樹莓派 Linux

2019-03-24 20:30:18

樹莓派Linux

2020-07-25 09:00:12

樹莓派WiFi相框Linux

2019-03-12 18:33:57

樹莓派Linux

2022-02-11 09:24:05

樹莓派OpenWrt固定IP服務(wù)

2021-07-25 10:30:04

樹莓派Linux

2019-03-23 19:33:14

樹莓派Linux操作系統(tǒng)

2019-03-28 18:51:52

樹莓派Linux編程語言

2021-06-15 15:00:08

Cockpit樹莓派Linux

2019-04-11 11:40:32

樹莓派編程語言Linux

2019-08-20 15:38:19

樹莓派Linux

2017-10-09 09:33:55

2019-03-26 09:00:43

樹莓派編程Linux

2021-03-29 21:24:40

樹莓派Linux

2017-10-30 16:12:30

DockerServerless樹莓派

2018-03-26 12:35:23

樹莓派Pi-hole攔截廣告

2021-11-14 05:00:56

排查Sdk方式

2018-10-12 11:20:20

樹莓派NAS Linux

2018-05-09 13:03:29

Linux樹莓派顆粒物

2020-07-16 21:00:05

樹莓派Kubernetes集Linux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

久久久一本精品99久久精品| 欧美成人免费大片| 高清一区在线观看| 免费日本一区二区三区视频| 丰满少妇久久久久久久| 97精品伊人久久久大香线蕉| 自拍偷拍亚洲天堂| 亚洲成人1区| 精品福利樱桃av导航| 日本一区二区三区视频在线播放 | 30一40一50老女人毛片| 欧美大片网站| 欧美日韩国产丝袜美女| 中文精品视频一区二区在线观看| 少妇无码一区二区三区| 久久99精品一区二区三区| 午夜精品福利视频| 69夜色精品国产69乱| 偷拍自拍亚洲色图| 日韩欧美电影一二三| 黄色成人免费看| 草草视频在线| 中文字幕的久久| 国内成+人亚洲| 国产黄色美女视频| 三级成人在线视频| 97久久伊人激情网| a在线视频播放观看免费观看| 伊人久久大香线蕉无限次| 日韩一本二本av| www.精品在线| 日韩精品影片| 亚洲成av人**亚洲成av**| 欧美日韩在线免费观看视频| 成人高清网站| 91原创在线视频| 岛国一区二区三区高清视频| 11024精品一区二区三区日韩| 亚洲影院免费| 91精品国产乱码久久久久久蜜臀 | 亚洲国产欧美一区二区三区丁香婷| 亚洲高清123| 成人av毛片| 久久久不卡网国产精品二区| 精品无人区一区二区三区竹菊| 亚洲av综合色区无码一二三区| 国产一区二区三区四| 国产精品视频免费在线观看| 日韩国产亚洲欧美| 久久亚洲欧美| 国产成人在线播放| 综合网在线观看| 新狼窝色av性久久久久久| 性色av一区二区三区| 久久精品国产亚洲av香蕉| 狠狠入ady亚洲精品| 欧美高跟鞋交xxxxhd| 黄色一级视频在线观看| 国内在线观看一区二区三区| 欧美激情一区二区三区在线视频观看| avtt天堂在线| 午夜久久久久| 国模私拍一区二区三区| 日韩免费一二三区| 一本久道久久久| 欧美壮男野外gaytube| 日韩美一区二区| 视频在线观看一区二区三区| 国产精品久久在线观看| 91免费视频播放| 国产一区二区三区久久悠悠色av | 精品黑人一区二区三区在线观看 | 欧美一区二区福利视频| wwwww在线观看| 国产精品极品国产中出| 日韩精品www| 给我看免费高清在线观看| 国产欧美一区二区三区精品观看 | 欧美一级二级在线观看| 91人妻一区二区| 自拍视频一区| 色偷偷综合社区| 欧美成人精品欧美一级私黄| 亚洲每日在线| 国产精品久久久久久五月尺| 国产又黄又爽视频| 成人丝袜18视频在线观看| 久久偷看各类wc女厕嘘嘘偷窃 | 综合av第一页| 日本手机在线视频| 成人全视频在线观看在线播放高清 | 久久久久久久久久久久久久av| 久久久久看片| 亚洲自拍欧美另类| 久草在现在线| 一区二区三区四区在线播放| 成年人视频网站免费观看| 四虎视频在线精品免费网址| 亚洲国模精品私拍| a一级免费视频| 久久高清国产| 成人黄色在线免费观看| 国产青青草在线| 亚洲国产中文字幕在线视频综合 | 极品少妇xxxx精品少妇| 精品久久久三级| 久草中文在线观看| 色噜噜久久综合| 在线中文字日产幕| 水蜜桃精品av一区二区| 海角国产乱辈乱精品视频| 国产精品成人久久久| 成人av手机在线观看| 亚洲欧洲精品一区| 免费观看欧美大片| 欧美不卡一区二区三区四区| 欧美日韩生活片| 99热免费精品| eeuss一区二区三区| 99re热久久这里只有精品34| 偷拍亚洲欧洲综合| 古装做爰无遮挡三级聊斋艳谭| 国产免费av一区二区三区| 欧美激情一级二级| 99久久久国产精品无码免费| 中文字幕乱码一区二区免费| 色综合av综合无码综合网站| 91精品导航| 欧美裸体xxxx极品少妇| 一级黄色片在线| 久久九九久久九九| 欧美 日韩 国产在线观看| 99re热精品视频| 久久国产色av| 国产一区二区三区成人| 国产女同互慰高潮91漫画| 好吊妞无缓冲视频观看| 成人动态视频| 韩国国内大量揄拍精品视频| 丰满人妻一区二区三区无码av| 亚洲精品ww久久久久久p站| 亚洲欧美日韩精品一区| 欧美国产一级| 国产日韩av高清| 香蕉视频在线免费看| 欧美日韩日日骚| 一级免费黄色录像| 久久精品国产免费| 亚洲一卡二卡区| 国产经典一区| 中文字幕在线成人| 伊人精品一区二区三区| 成人欧美一区二区三区白人| 成人性生交免费看| 婷婷精品进入| 91手机在线视频| av老司机在线观看| 日韩高清中文字幕| 无码人妻aⅴ一区二区三区有奶水| 99热这里都是精品| 日本在线观看a| 不卡视频在线| 91精品视频播放| 最新黄网在线观看| 亚洲国产91色在线| 亚洲午夜18毛片在线看| 国产日韩欧美a| 午夜一级免费视频| 欧美三区视频| 久久久久一区二区| 成人涩涩视频| 久久成年人视频| 少妇精品高潮欲妇又嫩中文字幕| 狠狠久久亚洲欧美专区| 国产午夜精品久久久久久久久| 老司机精品视频导航| 国产乱人伦精品一区二区三区| 国产精品乱战久久久| 秋霞av国产精品一区| 2021av在线| 精品国产免费一区二区三区香蕉| 亚洲 欧美 日韩 综合| 欧美国产丝袜视频| 中文字幕亚洲日本| 美女黄色成人网| 在线播放 亚洲| 久久精品凹凸全集| 国产精品亚洲美女av网站| 成人影欧美片| 亚洲男人的天堂在线| 一级特黄aaa| 亚洲成av人片在线观看无码| 精品人伦一区二区| 国产成人aaa| 国产成人精品无码播放| 欧美 日韩 国产精品免费观看| 美日韩免费视频| 亚洲欧洲二区| 欧美在线免费看| 中文字幕有码在线观看| 亚洲一级黄色av| 亚洲精品18p| 欧美日韩三级在线| 日韩三级一区二区三区| 国产精品国产馆在线真实露脸| 扒开伸进免费视频| 国产综合色在线| 国产a视频免费观看| 无需播放器亚洲| 日本一区免费| 国产厕拍一区| 91久久久久久久久久| 电影一区二区三区| 久久久久亚洲精品| 麻豆网站在线| 一区二区三区www| 亚洲日本香蕉视频| 精品免费一区二区三区| 国产尤物在线观看| 欧美色图在线观看| 久操视频在线免费观看| 亚洲成精国产精品女| 性欧美videos| 日韩理论片在线| 中文国语毛片高清视频| 国产精品视频看| 日本xxxxxxxxx18| 26uuu国产电影一区二区| 东京热av一区| 风间由美一区二区三区在线观看| 欧美一级视频在线| 精品一区二区三区视频 | 国产一区不卡在线| 色呦色呦色精品| 奇米精品一区二区三区四区 | 国产成人av电影在线| 手机在线免费毛片| 国产综合色视频| 性生活一级大片| 国产精品影视天天线| 国产资源中文字幕| 国产精品一区免费在线观看| 中文字幕第22页| 精彩视频一区二区| 国产精欧美一区二区三区白种人| 麻豆久久久久久久| 第四色婷婷基地| 九色porny丨国产精品| 亚洲欧美日本一区二区三区| 久久99精品网久久| 午夜精品中文字幕| 国产原创一区二区| 国内av免费观看| 成人在线视频一区二区| www.四虎在线| 久久综合色8888| 国产1区2区在线观看| 国产精品免费久久| 永久免费看mv网站入口| 亚洲一区二区在线视频| 国产一级在线播放| 福利视频一区二区| 日韩欧美国产另类| 欧美日韩高清在线播放| 国产老妇伦国产熟女老妇视频| 7799精品视频| 蜜桃av中文字幕| 亚洲视频电影图片偷拍一区| 爱久久·www| 久久福利视频导航| 国产色婷婷在线| 国产福利精品av综合导导航| 欧美男男gaygay1069| 99porn视频在线| 窝窝社区一区二区| 伊人久久大香线蕉成人综合网| 欧美在线看片| ww国产内射精品后入国产| 日韩综合小视频| 中文字幕在线观看视频www| av不卡免费电影| 18啪啪污污免费网站| 夜夜嗨av一区二区三区中文字幕| 国产精品人人人人| 欧美疯狂性受xxxxx喷水图片| 蜜桃视频在线观看www| 国产一区二区三区视频| 中日韩高清电影网| 清纯唯美亚洲综合| 欧美国产亚洲精品| 日韩高清国产精品| 欧美日韩91| 精品久久久噜噜噜噜久久图片| 国产精品77777| 亚洲色图 激情小说| 亚洲一区二区精品3399| 中文字幕在线播出| 亚洲国产成人精品电影| 欧美三级黄网| 777午夜精品福利在线观看| 亚洲午夜剧场| 欧洲精品码一区二区三区免费看| 91高清一区| 色婷婷综合久久久久中文字幕| 国产激情视频一区二区在线观看| 日韩精品电影一区二区| 一区二区欧美在线观看| 亚洲天堂中文在线| 亚洲美女久久久| 波多野结衣久久| 国产在线视频2019最新视频| 精品影片在线观看的网站| 一本大道东京热无码aⅴ| 蜜桃视频一区二区三区在线观看 | 国产亚洲一区字幕| 久久综合久久鬼| 91.com视频| 成人h小游戏| 国产精品jvid在线观看蜜臀| 韩国女主播一区二区三区| 天天做天天爱天天高潮| 青青草精品视频| 久久久视频6r| 欧美视频在线免费| 日本黄色一区二区三区| 欧美激情va永久在线播放| 一区二区三区| 亚洲精品无人区| 日本va欧美va欧美va精品| 草草地址线路①屁屁影院成人| 亚洲资源中文字幕| www.激情五月.com| 久久国产精彩视频| 国产精品美女久久久久| 91手机视频在线| 久久99国产精品久久99果冻传媒| 欧美黄色一级生活片| 日本精品一级二级| 免费黄色在线视频网站| 人人做人人澡人人爽欧美| 天堂一区二区三区四区| www.中文字幕在线| 91网站最新网址| 色一情一乱一伦| 亚洲一区第一页| 日韩精品第一| 一区二区三区四区五区视频 | 欧美性猛交xxxx免费看久久久| 日韩一卡二卡在线| 91精品国产高清| 国产91精品对白在线播放| 国产av人人夜夜澡人人爽| 中文幕一区二区三区久久蜜桃| 制服丝袜在线一区| 日韩一区二区久久久| 青草伊人久久| 男女日批视频在线观看| 99精品欧美一区二区蜜桃免费 | 日本一区二区在线视频| 秋霞av亚洲一区二区三| 久久人妻无码aⅴ毛片a片app| 欧美一个色资源| ririsao久久精品一区| 激情伦成人综合小说| 老牛国产精品一区的观看方式| 黄色片网站免费| 欧美高清hd18日本| 免费电影视频在线看| 久久国产一区二区| 日韩精品乱码av一区二区| 美国一级黄色录像| 日韩一区二区免费在线电影| 嗯~啊~轻一点视频日本在线观看| 蜜桃视频在线观看成人| 美女免费视频一区二区| 免费在线观看亚洲| 精品调教chinesegay| 日本午夜免费一区二区| 欧美大黑帍在线播放| 久久蜜桃av一区二区天堂| 中文字幕在线播放av| 欧美激情乱人伦一区| 深爱激情综合网| 人妻激情偷乱视频一区二区三区| 精品久久久在线观看| 自拍视频在线| 国产午夜精品一区| 蜜桃av一区二区三区电影| 久久丫精品久久丫| 亚洲香蕉av在线一区二区三区| 美女日韩一区| www.欧美日本| 亚洲一二三四在线| 91在线不卡| 国产乱码精品一区二区三区卡| 日韩av电影天堂| 日韩污视频在线观看| 日韩亚洲第一页| 任你躁在线精品免费| 一级黄色免费毛片|