日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

Spring Boot Actuator

發(fā)布時(shí)間:2025/4/5 javascript 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot Actuator 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

https://www.baeldung.com/spring-boot-actuators

1. Overview

In this article, we’re going to introduce Spring Boot Actuator.?We’ll cover the basics first, then discuss in detail what’s available in Spring Boot 1.x vs 2.x.

We’ll learn how to use, configure and extend this monitoring tool in Spring Boot 1.x. Then, we’ll discuss how to do the same using Boot 2.x and WebFlux taking advantage of the reactive programming model.

Spring Boot Actuator is available since April 2014, together with the first Spring Boot release.

With the?release of Spring Boot 2, Actuator has been redesigned, and new exciting endpoints were added.

This guide is split into 3 main sections:

  • What is an Actuator?
  • Spring Boot 1.x Actuator
  • Spring Boot 2.x Actuator

2. What is an Actuator?

In essence, Actuator brings production-ready features to our application.

Monitoring our app, gathering metrics, understanding traffic or the state of our database becomes trivial with this dependency.

The main benefit of this library is that we can get production grade tools without having to actually implement these features ourselves.

Actuator is mainly used to?expose operational information about the running application?– health, metrics, info, dump, env, etc. It uses HTTP endpoints or JMX beans to enable us to interact with it.

Once this dependency is on the classpath several endpoints are available for us out of the box. As with most Spring modules, we can easily configure or extend it in many ways.

2.1. Getting started

To enable Spring Boot Actuator we’ll just need to add the?spring-boot-actuator?dependency to our package manager. In Maven:

1 2 3 4 <dependency> ????<groupId>org.springframework.boot</groupId> ????<artifactId>spring-boot-starter-actuator</artifactId> </dependency>

Note that this remains valid regardless of the Boot version, as versions are specified in Spring Boot Bill of Materials (BOM).

3. Spring Boot 1.x Actuator

In 1.x Actuator follows a R/W model, that means we can either read from it or write to it. E.g. we can retrieve metrics or the health of our application. Alternatively, we could gracefully terminate our app or change our logging configuration.

In order to get it working, Actuator requires Spring MVC to expose its endpoints through HTTP. No other technology is supported.

3.1. Endpoints

In 1.x, Actuator brings its own security model. It takes advantage of Spring Security constructs, but needs to be configured independently from the rest of the application.

Also, most endpoints are sensitive – meaning they’re not fully public, or in other words, most information will be omitted – while a handful is not e.g.?/info.

Here are some of the most common endpoints Boot provides out of the box:

  • /health?– Shows application health information (a simple?‘status’?when accessed over an unauthenticated connection or full message details when authenticated); it’s not sensitive by default
  • /info –?Displays arbitrary application info; not sensitive by default
  • /metrics –?Shows ‘metrics’ information for the current application; it’s also sensitive by default
  • /trace –?Displays trace information (by default the last few HTTP requests)

We can find the full list of existing endpoints over?on the official docs.

3.2. Configuring Existing Endpoints

Each endpoint can be customized with properties using the following format:?endpoints.[endpoint name].[property to customize]

Three properties are available:

  • id –?by which this endpoint will be accessed over HTTP
  • enabled?– if true then it can be accessed otherwise not
  • sensitive?– if true then need the authorization to show crucial information over HTTP

For example, add the following properties will customize the /beans?endpoint:

1 2 3 endpoints.beans.id=springbeans endpoints.beans.sensitive=false endpoints.beans.enabled=true

3.3.?/health?Endpoint

The?/health?endpoint is used to check the health or state of the running application.?It’s usually exercised by monitoring software to alert us if the running instance goes down or gets unhealthy for other reasons. E.g. Connectivity issues with our DB, lack of disk space…

By default only health information is shown to unauthorized access over HTTP:

1 2 3 { ????"status" : "UP" }

This health information is collected from all the beans implementing the?HealthIndicator?interface configured in our application context.

Some information returned by?HealthIndicator?is sensitive in nature – but we can configure?endpoints.health.sensitive=false?to expose more detailed information like disk space, messaging broker connectivity, custom checks etc.

We could also?implement our own custom health indicator?– which can collect any type of custom health data specific to the application and automatically expose it through the?/health?endpoint:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 @Component public class HealthCheck implements HealthIndicator { ?? ????@Override ????public Health health() { ????????int errorCode = check(); // perform some specific health check ????????if (errorCode != 0) { ????????????return Health.down() ??????????????.withDetail("Error Code", errorCode).build(); ????????} ????????return Health.up().build(); ????} ????? ????public int check() { ????????// Our logic to check health ????????return 0; ????} }

Here’s how the output would look like:

1 2 3 4 5 6 7 8 9 10 11 12 { ????"status" : "DOWN", ????"myHealthCheck" : { ????????"status" : "DOWN", ????????"Error Code" : 1 ?????}, ?????"diskSpace" : { ?????????"status" : "UP", ?????????"free" : 209047318528, ?????????"threshold" : 10485760 ?????} }

3.4.?/info?Endpoint

We can also customize the data shown by the?/info?endpoint – for example:

1 2 3 info.app.name=Spring Sample Application info.app.description=This is my first spring boot application info.app.version=1.0.0

And the sample output:

1 2 3 4 5 6 7 { ????"app" : { ????????"version" : "1.0.0", ????????"description" : "This is my first spring boot application", ????????"name" : "Spring Sample Application" ????} }

3.5.?/metrics?Endpoint

The metrics endpoint publishes information about OS, JVM as well as application level metrics. Once enabled, we get information such as memory, heap, processors, threads, classes loaded, classes unloaded, thread pools along with some HTTP metrics as well.

Here’s what the output of this endpoint looks like out of the box:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 { ????"mem" : 193024, ????"mem.free" : 87693, ????"processors" : 4, ????"instance.uptime" : 305027, ????"uptime" : 307077, ????"systemload.average" : 0.11, ????"heap.committed" : 193024, ????"heap.init" : 124928, ????"heap.used" : 105330, ????"heap" : 1764352, ????"threads.peak" : 22, ????"threads.daemon" : 19, ????"threads" : 22, ????"classes" : 5819, ????"classes.loaded" : 5819, ????"classes.unloaded" : 0, ????"gc.ps_scavenge.count" : 7, ????"gc.ps_scavenge.time" : 54, ????"gc.ps_marksweep.count" : 1, ????"gc.ps_marksweep.time" : 44, ????"httpsessions.max" : -1, ????"httpsessions.active" : 0, ????"counter.status.200.root" : 1, ????"gauge.response.root" : 37.0 }

In order to gather custom metrics, we have support for ‘gauges’, that is, single value snapshots of data, and ‘counters’ i.e. incrementing/decrementing metrics.

Let’s implement our own custom metrics into the?/metrics?endpoint. For example, we’ll customize the login flow to record a successful and failed login attempt:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 @Service public class LoginServiceImpl { ????private final CounterService counterService; ????? ????public LoginServiceImpl(CounterService counterService) { ????????this.counterService = counterService; ????} ????? ????public boolean login(String userName, char[] password) { ????????boolean success; ????????if (userName.equals("admin") && "secret".toCharArray().equals(password)) { ????????????counterService.increment("counter.login.success"); ????????????success = true; ????????} ????????else { ????????????counterService.increment("counter.login.failure"); ????????????success = false; ????????} ????????return success; ????} }

Here’s what the output might look like:

1 2 3 4 5 6 { ????... ????"counter.login.success" : 105, ????"counter.login.failure" : 12, ????... }

Note that login attempts and other security related events are available out of the box in Actuator as audit events.

3.6. Creating A New Endpoint

Besides using the existing endpoints provided by Spring Boot, we could also create an entirely new one.

Firstly, we’d need to have the new endpoint implement the?Endpoint<T>?interface:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 @Component public class CustomEndpoint implements Endpoint<List<String>> { ????? ????@Override ????public String getId() { ????????return "customEndpoint"; ????} ????@Override ????public boolean isEnabled() { ????????return true; ????} ????@Override ????public boolean isSensitive() { ????????return true; ????} ????@Override ????public List<String> invoke() { ????????// Custom logic to build the output ????????List<String> messages = new ArrayList<String>(); ????????messages.add("This is message 1"); ????????messages.add("This is message 2"); ????????return messages; ????} }

In order to access this new endpoint, its?id?is used to map it, i.e. we could exercise it hitting?/customEndpoint.

Output:

1 [ "This is message 1", "This is message 2" ]

3.7. Further Customization

For security purposes, we might choose to expose the actuator endpoints over a non-standard port – the?management.port?property can easily be used to configure that.

Also, as we already mentioned, in 1.x. Actuator configures its own security model, based on Spring Security but independent from the rest of the application.
Hence, we can change the?management.address?property to restrict where the endpoints can be accessed from over the network:

1 2 3 4 5 6 7 8 #port used to expose actuator management.port=8081 #CIDR allowed to hit actuator management.address=127.0.0.1 #Whether security should be enabled or disabled altogether management.security.enabled=false

Besides, all the built-in endpoints except?/info?are sensitive by default. If the application is using Spring Security – we can secure these endpoints by defining the default security properties – username, password, and role – in the application.properties file:

1 2 3 security.user.name=admin security.user.password=secret management.security.role=SUPERUSER

4. Spring Boot 2.x Actuator

In 2.x Actuator keeps its fundamental intent, but simplifies its model, extends its capabilities and incorporate better defaults.

Firstly, this version becomes technology agnostic. Also, it simplifies its security model by merging it with the application one.

Lastly, among the various changes, it’s important to keep in mind that some of them are breaking. This includes HTTP request/responses as well as Java APIs.

Furthermore, the latest version supports now the CRUD model, as opposed to the old RW (read/write) model.

4.1. Technology Support

With its second major version, Actuator is now technology-agnostic whereas in 1.x it was tied to MVC, therefore to the Servlet API.

In 2.x Actuator defines its model, pluggable and extensible without relying on MVC for this.

Hence, with this new model, we’re able to take advantage of MVC as well as WebFlux as an underlying web technology.

Moreover, forthcoming technologies could be added by implementing the right adapters.

Lastly, JMX remains supported to expose endpoints without any additional code.

4.2. Important Changes

Unlike in previous versions,?Actuator comes with most endpoints disabled.

Thus, the only two available by default are?/health?and?/info.

Would we want to enable all of them, we could set?management.endpoints.web.exposure.include=*.?Alternatively, we could list endpoints which should be enabled.

Actuator now shares the security config with the regular App security rules. Hence, the security model is dramatically simplified.

Therefore, to tweak Actuator security rules, we could just add an entry for?/actuator/**:

1 2 3 4 5 6 7 8 @Bean public SecurityWebFilterChain securityWebFilterChain( ??ServerHttpSecurity http) { ????return http.authorizeExchange() ??????.pathMatchers("/actuator/**").permitAll() ??????.anyExchange().authenticated() ??????.and().build(); }

We can find further details on the?brand new Actuator official docs.

Also,?by default, all Actuator endpoints are now placed under the?/actuator?path.

Same as in the previous version, we can tweak this path, using the new property?management.endpoints.web.base-path.

4.3. Predefined Endpoints

Let’s have a look at some available endpoints, most of them were available in 1.x already.

Nonetheless,?some endpoints have been added, some removed and some have been restructured:

  • /auditevents –?lists security audit-related events such as user login/logout. Also, we can filter by principal or type among others fields
  • /beans – returns all available beans in our?BeanFactory. Unlike?/auditevents, it doesn’t support filtering
  • /conditions –?formerly known as /autoconfig, builds a report of conditions around auto-configuration
  • /configprops –?allows us to fetch all?@ConfigurationProperties?beans
  • /env –?returns the current environment properties. Additionally, we can retrieve single properties
  • /flyway –?provides details about our Flyway database migrations
  • /health –?summarises the health status of our application
  • /heapdump –?builds and returns a heap dump from the JVM used by our application
  • /info –?returns general information. It might be custom data, build information or details about the latest commit
  • /liquibase – behaves like?/flyway?but for Liquibase
  • /logfile –?returns ordinary application logs
  • /loggers –?enables us to query and modify the logging level of our application
  • /metrics –?details metrics of our application. This might include generic metrics as well as custom ones
  • /prometheus –?returns metrics like the previous one, but formatted to work with a Prometheus server
  • /scheduledtasks –?provides details about every scheduled task within our application
  • /sessions –?lists HTTP sessions given we are using Spring Session
  • /shutdown –?performs a graceful shutdown of the application
  • /threaddump –?dumps the thread information of the underlying JVM

4.4. Health Indicators

Just like in the previous version, we can add custom indicators easily. Opposite to other APIs, the abstractions for creating custom health endpoints remain unchanged. However,?a new interface?ReactiveHealthIndicator?has been added to implement reactive health checks.

Let’s have a look at a simple custom reactive health check:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 @Component public class DownstreamServiceHealthIndicator implements ReactiveHealthIndicator { ????@Override ????public Mono<Health> health() { ????????return checkDownstreamServiceHealth().onErrorResume( ??????????ex -> Mono.just(new Health.Builder().down(ex).build()) ????????); ????} ????private Mono<Health> checkDownstreamServiceHealth() { ????????// we could use WebClient to check health reactively ????????return Mono.just(new Health.Builder().up().build()); ????} }

A handy feature of health indicators is that we can aggregate them as part of a hierarchy.?Hence, following the previous example, we could group all downstream services under a?downstream-services?category. This category would be healthy as long as every nested?service?was reachable.

Composite health checks are present in 1.x through?CompositeHealthIndicator.?Also, in 2.x we could use?CompositeReactiveHealthIndicator?for its reactive counterpart.

Unlike in Spring Boot 1.x, the?endpoints.<id>.sensitive?flag has been removed. To hide the complete health report, we can take advantage of the new?management.endpoint.health.show-details.?This flag is false by default.

4.5. Metrics in Spring Boot 2

In Spring Boot 2.0, the in-house metrics were replaced with Micrometer support.?Thus, we can expect breaking changes. If our application was using metric services such as?GaugeService or CounterService?they will no longer be available.

Instead, we’re expected to interact with?Micrometer?directly. In Spring Boot 2.0, we’ll get a bean of type?MeterRegistry?autoconfigured for us.

Furthermore, Micrometer is now part of Actuator’s dependencies. Hence, we should be good to go as long as the Actuator dependency is in the classpath.

Moreover, we’ll get a completely new response from the?/metrics?endpoint:

1 2 3 4 5 6 7 8 9 { ??"names": [ ????"jvm.gc.pause", ????"jvm.buffer.memory.used", ????"jvm.memory.used", ????"jvm.buffer.count", ????// ... ??] }

As we can observe in the previous example, there are no actual metrics as we got in 1.x.

To get the actual value of a specific metric, we can now navigate to the desired metric, i.e.,?/actuator/metrics/jvm.gc.pause?and get a detailed response:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 { ??"name": "jvm.gc.pause", ??"measurements": [ ????{ ??????"statistic": "Count", ??????"value": 3.0 ????}, ????{ ??????"statistic": "TotalTime", ??????"value": 7.9E7 ????}, ????{ ??????"statistic": "Max", ??????"value": 7.9E7 ????} ??], ??"availableTags": [ ????{ ??????"tag": "cause", ??????"values": [ ????????"Metadata GC Threshold", ????????"Allocation Failure" ??????] ????}, ????{ ??????"tag": "action", ??????"values": [ ????????"end of minor GC", ????????"end of major GC" ??????] ????} ??] }

As we can see, metrics now are much more thorough. Including not only different values but also some associated meta-data.

4.6. Customizing the?/info?Endpoint

The?/info?endpoint remains unchanged.?As before, we can add git details using the Maven or Gradle respective dependency:

1 2 3 4 <dependency> ????<groupId>pl.project13.maven</groupId> ????<artifactId>git-commit-id-plugin</artifactId> </dependency>

Likewise,?we could also include build information including name, group, and version using the Maven or Gradle plugin:

1 2 3 4 5 6 7 8 9 10 11 <plugin> ????<groupId>org.springframework.boot</groupId> ????<artifactId>spring-boot-maven-plugin</artifactId> ????<executions> ????????<execution> ????????????<goals> ????????????????<goal>build-info</goal> ????????????</goals> ????????</execution> ????</executions> </plugin>

4.7. Creating a Custom Endpoint

As we pointed out previously, we can create custom endpoints. However, Spring Boot 2 has redesigned the way to achieve this to support the new technology-agnostic paradigm.

Let’s create an Actuator endpoint to query, enable and disable feature flags in our application:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 @Component @Endpoint(id = "features") public class FeaturesEndpoint { ????private Map<String, Feature> features = new ConcurrentHashMap<>(); ????@ReadOperation ????public Map<String, Feature> features() { ????????return features; ????} ????@ReadOperation ????public Feature feature(@Selector String name) { ????????return features.get(name); ????} ????@WriteOperation ????public void configureFeature(@Selector String name, Feature feature) { ????????features.put(name, feature); ????} ????@DeleteOperation ????public void deleteFeature(@Selector String name) { ????????features.remove(name); ????} ????public static class Feature { ????????private Boolean enabled; ????????// [...] getters and setters ????} }

To get the endpoint, we need a bean. In our example, we’re using?@Component?for this. Also, we need to decorate this bean with?@Endpoint.

The path of our endpoint is determined by the?id?parameter of?@Endpoint, in our case, it’ll route requests to?/actuator/features.

Once ready, we can start defining operations using:

  • @ReadOperation –?it’ll map to HTTP?GET
  • @WriteOperation?– it’ll map to HTTP?POST
  • @DeleteOperation?– it’ll map to HTTP?DELETE

When we run the application with the previous endpoint in our application, Spring Boot will register it.

A quick way to verify this would be checking the logs:

1 2 3 4 5 6 7 8 9 10 11 [...].WebFluxEndpointHandlerMapping: Mapped "{[/actuator/features/{name}], ??methods=[GET], ??produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" [...].WebFluxEndpointHandlerMapping : Mapped "{[/actuator/features], ??methods=[GET], ??produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" [...].WebFluxEndpointHandlerMapping : Mapped "{[/actuator/features/{name}], ??methods=[POST], ??consumes=[application/vnd.spring-boot.actuator.v2+json || application/json]}" [...].WebFluxEndpointHandlerMapping : Mapped "{[/actuator/features/{name}], ??methods=[DELETE]}"[...]

In the previous logs, we can see how WebFlux is exposing our new endpoint. Would we switch to MVC, It’ll simply delegate on that technology without having to change any code.

Also, we have a few important considerations to keep in mind with this new approach:

  • There are no dependencies with MVC
  • All the metadata present as methods before (sensitive, enabled…)?no longer exists. We can, however, enable or disable the endpoint using?@Endpoint(id = “features”, enableByDefault = false)
  • Unlike in 1.x, there is no need to extend a given interface anymore
  • In contrast with the old Read/Write model, now we can define?DELETE?operations using?@DeleteOperation

4.8. Extending Existing Endpoints

Let’s imagine we want to make sure the production instance of our application is never a?SNAPSHOT?version. We decided to do this by changing the HTTP status code of the Actuator endpoint that returns this information, i.e.,?/info.If our app happened to be a?SNAPSHOT. We would get a different?HTTP?status code.

We can easily extend the behavior of a predefined endpoint using the?@EndpointExtension?annotations, or its more concrete specializations?@EndpointWebExtension?or?@EndpointJmxExtension:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 @Component @EndpointWebExtension(endpoint = InfoEndpoint.class) public class InfoWebEndpointExtension { ????private InfoEndpoint delegate; ????// standard constructor ????@ReadOperation ????public WebEndpointResponse<Map> info() { ????????Map<String, Object> info = this.delegate.info(); ????????Integer status = getStatus(info); ????????return new WebEndpointResponse<>(info, status); ????} ????private Integer getStatus(Map<String, Object> info) { ????????// return 5xx if this is a snapshot ????????return 200; ????} }

4.9. Enable All Endpoints

In order to access the actuator endpoints using HTTP, we need to both enable and expose them. By default, all endpoints but?/shutdown?are enabled.? Only the?/health?and?/info?endpoints are exposed by default.

We need to add the following configuration to expose all endpoints :

1 management.endpoints.web.exposure.include=*

To explicitly enable a specific endpoint (for example?/shutdown),?we use:

1 management.endpoint.shutdown.enabled=true

To expose all enabled endpoints except one (for example?/loggers), we use:

1 2 management.endpoints.web.exposure.include=* management.endpoints.web.exposure.exclude=loggers

5. Summary

In this article, we talked about Spring Boot Actuator. We started defining what Actuator means and what it does for us.

Next, we focused on Actuator for the current Spring Boot version, 1.x. discussing how to use it, tweak it an extend it.

Then, we discussed Actuator in Spring Boot 2. We focused on what’s new, and we took advantage of WebFlux to expose our endpoint.

Also, we talked about the important security changes that we can find in this new iteration. We discussed some popular endpoints and how they have changed as well.

Lastly, we demonstrated how to customize and extend Actuator.

轉(zhuǎn)載于:https://www.cnblogs.com/davidwang456/articles/10268315.html

總結(jié)

以上是生活随笔為你收集整理的Spring Boot Actuator的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

国产99久久久精品 | 怡红院av久久久久久久 | 久久精品视频中文字幕 | 999电影免费在线观看 | 亚洲一区二区精品在线 | 日日夜夜网站 | 色婷五月天 | 久久综合九色综合欧美狠狠 | 亚洲精品一区二区在线观看 | 久久精品人人做人人综合老师 | 亚洲国产精品小视频 | 日韩电影久久久 | 日韩免费在线一区 | 午夜久久影视 | 日精品在线观看 | 在线国产能看的 | 久久久精品福利视频 | 国产精品久久久久久久免费大片 | 精品96久久久久久中文字幕无 | 中文字幕在线看视频 | 亚洲国产精品资源 | 日韩免费av网址 | 国内视频在线观看 | 丝袜美腿亚洲综合 | 摸阴视频| 久久视频在线观看免费 | 97精品在线| 久久私人影院 | 黄色在线观看免费网站 | 日韩有色 | 免费特级黄色片 | 91视频高清完整版 | 超碰在线97观看 | 天天色天天射天天操 | 91九色网址 | 99精品视频免费在线观看 | 999视频在线播放 | 国产高清在线视频 | 六月丁香六月婷婷 | 五月开心色 | 色偷偷88888欧美精品久久久 | 国产黄色精品在线 | 免费网址你懂的 | 久久国产精品99久久人人澡 | 国产大尺度视频 | 91亚洲精品国偷拍自产在线观看 | 亚洲黄色大片 | 日韩精品不卡在线观看 | 日韩欧美在线免费 | 国产精品久久久久永久免费观看 | 久久伦理电影网 | 99爱精品在线| 中文在线a天堂 | 日韩免费 | 国产黄色片一级 | 911在线 | 久久a热6| 国产精品剧情在线亚洲 | 伊人久久在线观看 | 一区二区三区手机在线观看 | 公与妇乱理三级xxx 在线观看视频在线观看 | 亚洲精品视频在线观看免费视频 | 欧美激情综合色综合啪啪五月 | 成人精品福利 | 亚洲 成人 欧美 | 久久国产精品久久国产精品 | 色综合中文字幕 | 日本二区三区在线 | 99精品国产高清在线观看 | 在线视频婷婷 | a级国产乱理论片在线观看 伊人宗合网 | 一区二区在线影院 | 国语久久 | 久久精品成人 | 国产成人一级 | 成人av片免费看 | 中文资源在线官网 | 成年人视频在线观看免费 | 中文字幕一区二 | 中文有码在线 | 97国产精品亚洲精品 | 亚洲艳情 | 日韩精品一区二区三区免费观看视频 | av在线一 | 成人av一级片 | 天天狠狠干 | 日日天天av | 激情视频国产 | 国产精品 国产精品 | 97电影在线 | 久热电影 | 精品久久久久久一区二区里番 | 亚洲三级黄 | 亚洲少妇激情 | 96国产精品 | 久久成人高清 | 日韩精品综合在线 | 国产一区二区三区高清播放 | 国产一区二区三区在线免费观看 | 激情在线五月天 | 日韩乱理 | 五月婷婷视频在线 | 欧美韩日精品 | 天堂在线一区二区三区 | 91视频在线自拍 | 偷拍久久久 | 国产精品亚洲成人 | 久久国产欧美日韩精品 | 九九热在线精品视频 | 在线观看91视频 | 97国产大学生情侣酒店的特点 | 免费大片av | 九九热在线视频 | 日韩精品中文字幕在线观看 | 国产午夜精品一区二区三区 | 中文字幕资源在线 | 91精品国自产在线偷拍蜜桃 | 午夜精品视频免费在线观看 | 国产精品精品国产色婷婷 | 免费看高清毛片 | 亚洲精品一区二区三区四区高清 | 成 人 黄 色 视频免费播放 | 九九亚洲精品 | 91av播放| 天天干夜夜夜 | 在线观看黄| 国产精品99久久久精品免费观看 | 久久福利精品 | 日韩极品在线 | 国产成人精品亚洲日本在线观看 | 在线 国产 亚洲 欧美 | 日本bbbb摸bbbb | 精品久久免费看 | 久草视频精品 | 久久午夜国产 | 99 视频 高清 | 黄色在线观看www | 久久久久欠精品国产毛片国产毛生 | 国产亚洲精品综合一区91 | 热热热热热色 | 九九色在线观看 | 久久免费视频6 | www视频在线播放 | 69精品在线观看 | 亚洲黄色免费在线 | 四虎国产精品成人免费影视 | 99色国产| 午夜精品99久久免费 | 日韩免费看视频 | 国产乱码精品一区二区三区介绍 | 91精品在线视频 | 看片网站黄色 | 在线看片91 | 日韩一级成人av | 婷婷色av | 日韩欧美在线综合网 | 999久久久久久久久6666 | 国产福利一区二区在线 | av免费观看网址 | 成人一级黄色片 | 人人舔人人爱 | 手机av网站| 九九在线高清精品视频 | 欧美激情精品一区 | 手机成人av在线 | 国产乱对白刺激视频在线观看女王 | 精品国产免费一区二区三区五区 | 一级成人免费视频 | 精品国产电影 | 日韩一区视频在线 | 亚洲在线视频网站 | 日韩影视在线 | 成人免费一级 | 亚洲男男gaygayxxxgv | 91电影福利 | 高清av免费一区中文字幕 | 又长又大又黑又粗欧美 | 久久激情视频 久久 | 色综合天天综合 | 青草视频在线看 | 亚洲精品tv | 粉嫩av一区二区三区四区五区 | av网址aaa| 亚洲欧美日韩一区二区三区在线观看 | 久草视频免费在线播放 | 亚洲高清资源 | 91精品国产99久久久久久久 | 婷婷午夜天 | 91精品999| 最新av在线网址 | 成人在线免费看视频 | 97超碰人人干 | 成人亚洲网 | 激情五月亚洲 | 久久精品中文字幕免费mv | 亚洲精品久久久久中文字幕m男 | 国产精品久久久久久久久久妇女 | 少妇激情久久 | 最新的av网站 | 国产一区视频免费在线观看 | 美女网站视频久久 | 久草视频在线免费播放 | 亚洲一区视频在线播放 | 日韩精品久久久久久 | 欧美精品久久久久a | 亚洲日本欧美在线 | 久久久 精品 | 嫩草91影院| 五月天久久综合 | 青草视频在线免费 | 国产福利一区二区三区视频 | 成人av手机在线 | 成人一级免费视频 | www.久久久com| 色多多污污在线观看 | 久久在线免费视频 | 国产手机视频精品 | 欧美在线一 | 亚洲精品在线国产 | 97色狠狠| 四虎影视8848dvd | 蜜臀av网址| 久久久免费精品 | 深爱激情综合网 | 中文字幕成人在线观看 | 成人av在线观| 亚洲黄色免费在线 | 最新黄色av网址 | 精品视频免费 | 九九在线视频 | 国产 在线观看 | 特级大胆西西4444www | av激情五月 | 啪啪免费视频网站 | 91成人网在线观看 | 99色| 天堂av影院| 国产精品免费观看网站 | 国产亚洲欧洲 | 亚洲精品777 | 日本激情视频中文字幕 | 免费观看性生活大片 | 久久线视频 | 久久情网 | 久久综合色天天久久综合图片 | 精品1区2区3区 | 永久免费毛片在线观看 | 亚洲精品99 | 91成人免费看片 | 欧美在线aaa | 日本公妇在线观看 | 99热这里只有精品免费 | www久久| 五月天六月丁香 | 国产一级电影免费观看 | 日日夜夜天天综合 | 亚洲激情国产精品 | 亚洲精品五月 | 麻豆va一区二区三区久久浪 | 成人久久电影 | 国产黄色av网站 | 中文字幕在线网址 | 97av在线 | 日韩在线一级 | 最新国产中文字幕 | 黄色毛片视频 | 六月丁香婷 | 丁五月婷婷| 开心色激情网 | 在线视频黄 | 久久精品中文字幕 | 亚洲一级二级 | 高清不卡毛片 | 免费日韩精品 | 成在线播放 | 久久男人影院 | 久久久久久97三级 | 一区三区视频 | 中文字幕 国产精品 | 欧美超碰在线 | 国产免费一区二区三区最新6 | 日韩久久精品一区二区三区 | 99久久这里有精品 | 久久精品这里都是精品 | www.五月激情.com| 91看片看淫黄大片 | 亚洲精欧美一区二区精品 | 日本最新一区二区三区 | 精品久久1 | 黄色av影视| 欧美一二三视频 | 91视频在线免费观看 | 天天干天天草天天爽 | 欧美日韩视频免费 | 中文字幕高清免费日韩视频在线 | 热久久免费国产视频 | 中文字幕在线视频一区二区三区 | 国产精品乱码久久 | 亚洲国产中文字幕在线视频综合 | 国产精品久久久久久一区二区 | 亚洲精品自拍视频在线观看 | 国产一级二级在线 | 久久久久欠精品国产毛片国产毛生 | 成人一级视频在线观看 | 99视频在线免费看 | 免费观看国产精品 | 97福利 | 国内丰满少妇猛烈精品播 | 久草免费福利在线观看 | 国产精品成人一区二区三区 | 有码中文字幕在线观看 | 99免费在线播放99久久免费 | 久久综合精品国产一区二区三区 | 亚洲欧洲在线视频 | 手机看片99| 黄色成人av| 亚洲欧美精品一区 | 久久人人精 | 中文字幕美女免费在线 | 丁香婷婷综合网 | 婷婷丁香六月天 | 91在线视频在线 | 欧美在线观看视频 | 奇米影视四色8888 | 亚洲成人免费 | 久久国产精品99国产 | 久久tv | 玖玖视频在线 | 亚洲欧美国产精品va在线观看 | 亚洲资源在线 | 999国内精品永久免费视频 | 人人澡人人爱 | 九九综合久久 | 国产欧美精品一区二区三区 | 奇米网在线观看 | 青草视频在线免费 | 欧美另类巨大 | 在线视频观看成人 | 精品美女久久久久 | 天天插日日插 | 久久久久久久久久久久av | 亚洲91网站 | 免费视频你懂的 | 啪啪凸凸| 九九久久国产精品 | 国产小视频免费在线网址 | 人人狠狠综合久久亚洲 | 国产999| 国产一区二区在线精品 | 国产精品一区在线观看 | 国产一级免费片 | 久久免费国产电影 | 亚洲精品国偷自产在线91正片 | 日本中文字幕在线一区 | 97热久久免费频精品99 | 99热精品国产 | 国际精品久久 | 高清一区二区三区 | 国产亚洲精品av | 玖玖在线免费视频 | 一区在线电影 | 超碰在线个人 | 国产精品成人品 | 久久av黄色| 亚洲一级黄色大片 | 色婷婷精品大在线视频 | 午夜精品一区二区三区在线视频 | 国产综合在线视频 | 在线观看视频99 | 久久夜色精品国产欧美乱 | 亚洲精品玖玖玖av在线看 | 日韩免费观看视频 | 最新日韩精品 | 国产日韩一区在线 | 亚洲成人家庭影院 | 在线播放91| 国产婷婷精品av在线 | 超碰夜夜 | 黄色毛片一级 | 天天综合导航 | 中文字幕精品三区 | 亚洲成人精品在线观看 | 天天综合导航 | 欧美伦理一区 | 最新国产视频 | 色婷婷国产精品一区在线观看 | 玖玖视频精品 | 国产亚洲精品久久久久久移动网络 | 久久人91精品久久久久久不卡 | 欧美一区成人 | 国内成人av| 草草草影院 | 日韩欧美精品免费 | 国产视频在线免费观看 | 欧美日韩一区二区三区免费视频 | 麻豆精品国产传媒 | 国产r级在线观看 | 狠狠色伊人亚洲综合网站野外 | 美女黄频在线观看 | 丁香久久综合 | 日韩视频免费在线观看 | 久久久久久高潮国产精品视 | 6699私人影院 | 伊人手机在线 | 欧美久草网 | 国产精品白虎 | 中文字幕av播放 | 久久99久久99精品中文字幕 | 狠狠狠狠狠狠操 | 黄色免费大全 | 综合色中文 | 激情av资源 | 字幕网av| 成人蜜桃视频 | 日韩三级久久 | 日韩av视屏在线观看 | 美女视频黄免费的久久 | 免费91在线 | 免费国产黄线在线观看视频 | 亚洲1区 在线 | 午夜精品福利一区二区三区蜜桃 | 免费黄色在线播放 | 怡红院成人在线 | 国产视频一区在线免费观看 | 日本久久精 | 中文字幕亚洲字幕 | 成年人在线免费看 | 人交video另类hd | 在线观看一二三区 | 蜜臀av性久久久久蜜臀av | 欧美xxxxx在线视频 | 久久精品欧美日韩精品 | 国产91国语对白在线 | 奇米网8888| 99精品免费久久久久久久久日本 | 色偷偷97 | av在线播放免费 | 99久久精品国产亚洲 | 色99网 | 日韩精品免费在线 | 成人久久亚洲 | 日韩电影一区二区三区 | 99在线免费观看视频 | 9999国产精品 | 天天干天天操人体 | 亚洲国产日韩欧美 | 麻豆传媒视频在线 | 九九热视频在线免费观看 | 一区二区不卡 | 欧美一进一出抽搐大尺度视频 | 九九热只有这里有精品 | 国产婷婷一区二区 | 久久一区二 | 久久亚洲影视 | 亚洲高清精品在线 | 婷婷婷国产在线视频 | 九九热久久久 | 午夜视频久久久 | 黄色软件在线观看视频 | 国产日韩欧美在线观看 | 娇妻呻吟一区二区三区 | 激情图片区| 中文字幕在线看视频国产中文版 | 黄色小说18| 成人精品影视 | 日本九九视频 | 欧美十八 | 久久不卡免费视频 | 中文字幕在线播放一区二区 | 中文久草| 国内一区二区视频 | 中文有码在线视频 | 三级动图 | 欧美成人h版电影 | 欧美日韩国产网站 | 免费看色视频 | 2018好看的中文在线观看 | 亚洲欧美日韩精品久久奇米一区 | 热久久99这里有精品 | 91在线视频| 成人免费网站在线观看 | 成人性生交大片免费观看网站 | 免费在线观看不卡av | 国产综合视频在线观看 | 久草在线播放视频 | 成人亚洲欧美 | 手机av电影在线 | 久久午夜视频 | 久久国产精品免费观看 | 在线精品视频在线观看高清 | 日日夜夜国产 | 国产一区二区三区免费在线观看 | 亚洲少妇xxxx | 国产精品手机播放 | 精品久久久久久久久久久久久久久久久久 | 国产精品福利在线观看 | 国偷自产中文字幕亚洲手机在线 | 日韩国产精品久久久久久亚洲 | 国模一区二区三区四区 | 久久成人免费电影 | 精品一区二区三区香蕉蜜桃 | 西西人体4444www高清视频 | 在线成人欧美 | 久久久久综合精品福利啪啪 | 九九涩涩av台湾日本热热 | 91精品婷婷国产综合久久蝌蚪 | 国产日韩视频在线 | 天天曰天天曰 | 91精品久久久久久久99蜜桃 | 久久99热精品这里久久精品 | 免费午夜视频在线观看 | 久久久噜噜噜久久久 | 蜜臀久久99精品久久久无需会员 | 99精品免费在线 | 国产精品久久久久av福利动漫 | 日韩三区在线观看 | 麻豆极品 | 99精品热视频 | 99精品国产福利在线观看免费 | 91成人免费| 808电影免费观看三年 | 婷婷色网址 | 免费观看一区二区三区视频 | 视频91 | 色综合久久久久 | 六月婷操 | 日女人电影 | 久久综合九色综合欧美狠狠 | 亚洲一区二区精品视频 | 免费的国产精品 | wwwww.国产| 中文字幕资源网 | 国产午夜精品一区二区三区嫩草 | 国产精品一区二区三区在线看 | 国产黄色精品在线观看 | 久久人人爽人人爽人人片av免费 | 深夜免费小视频 | 日本久久91| av午夜电影 | 视频福利在线 | 日韩av影视在线观看 | 久久99久久99精品中文字幕 | 日本精品二区 | 91福利试看| 色在线国产 | 天天综合亚洲 | 美女黄频免费 | 在线v片| 国产精品96久久久久久吹潮 | 超级碰碰碰免费视频 | 一级久久精品 | 久草网免费 | 91激情| 亚州精品天堂中文字幕 | 婷婷丁香导航 | 日韩簧片在线观看 | 日批在线看 | 国内精品在线看 | 日本3级在线观看 | 久久在线一区 | 999久久久欧美日韩黑人 | 成人午夜在线电影 | 91av原创 | 久久午夜剧场 | 日日日干 | 中文字幕在线国产精品 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 97免费| 欧美精品亚洲二区 | 国产综合精品一区二区三区 | 丁香激情综合国产 | 69精品视频 | 久草精品视频在线看网站免费 | 亚洲精品视频网站在线观看 | 久草在线视频网站 | 91精品爽啪蜜夜国产在线播放 | 免费合欢视频成人app | 日韩精品久久久久久 | 人人射人人射 | 成人精品国产免费网站 | 国产亚洲小视频 | www.天天操.com| 天天干.com | 欧美性超爽| 片网址 | 亚洲国产三级 | 啪啪动态视频 | 97综合视频| 久久久国产日韩 | 欧美激情视频一区二区三区 | 在线观看国产日韩欧美 | 成人午夜电影网 | 狠狠的操| 国产性天天综合网 | 中文字幕一区二区三区四区在线视频 | 一区二区精 | 亚洲片在线观看 | 在线观看不卡的av | 欧美日韩国产精品一区二区三区 | 精品高清美女精品国产区 | 成人在线观看免费 | 免费网址你懂的 | 中文字幕第一页在线 | 2019国产精品 | 波多野结衣在线观看一区二区三区 | 日本不卡视频 | 国产精品久久久久高潮 | 久久91久久久久麻豆精品 | 国产黄色a | 天天玩天天干天天操 | 四虎影视成人永久免费观看视频 | 日韩在线播放欧美字幕 | 黄色av一级片 | 欧美在线你懂的 | 91在线观看视频网站 | 97视频在线观看播放 | 国产精品欧美一区二区 | 国产91免费观看 | 国产成人福利在线 | 亚洲精品av中文字幕在线在线 | 夜夜骑天天操 | 久久一视频 | 国产一区二区精品久久91 | 国产精品系列在线观看 | 免费99精品国产自在在线 | 久草在线免费色站 | 精品国产电影一区 | 成人毛片一区 | www国产在线| 亚洲国产视频在线 | 韩国av电影网 | 国内精品久久久久久久影视简单 | 99视频在线观看一区三区 | 天天射天天爱天天干 | 丁香婷婷综合网 | 91在线公开视频 | 激情五月婷婷激情 | 亚洲成人黄色在线 | 六月丁香久久 | 狠狠狠狠狠狠狠狠干 | 欧美一级专区免费大片 | 国产精品成人免费 | 91看片淫黄大片在线播放 | 91精品老司机久久一区啪 | 色www精品视频在线观看 | 色夜影院| 中文字幕色站 | 2023av在线| 亚洲毛片一区二区三区 | 99精品国产aⅴ| 成人xxxx| 美女网站黄免费 | 91一区啪爱嗯打偷拍欧美 | 99精品视频观看 | 国产一级电影 | 欧美动漫一区二区三区 | 久久精品视频网站 | 天天伊人网| 久久免费视频5 | 激情婷婷 | 日韩午夜在线播放 | 日韩美视频 | 婷婷开心久久网 | 国产精品手机在线 | 毛片一级免费一级 | 国产成本人视频在线观看 | 免费色视频 | 久久久久99精品国产片 | 国产小视频你懂的 | 四虎影视国产精品免费久久 | 91精彩视频 | 亚洲视频99 | 亚洲欧洲精品视频 | 国产精品永久久久久久久www | 日韩视频中文字幕在线观看 | 欧美日韩在线播放一区 | 99综合视频 | 午夜精品久久久久久久久久久久 | avsex| 国产一区二区综合 | 国产中的精品av小宝探花 | 亚洲精品日韩在线观看 | 婷婷开心久久网 | 欧美日本中文字幕 | 国产福利在线 | 色婷婷久久久综合中文字幕 | 97香蕉久久超级碰碰高清版 | www操操| 91精品啪在线观看国产 | 欧美一级片在线 | 精品亚洲免费 | 中文字幕亚洲精品在线观看 | 国产中文字幕一区 | 91欧美视频网站 | 探花视频在线观看+在线播放 | 丁香综合av | av免费网站| 中文av日韩 | 久久精品99国产精品日本 | 国产在线观看91 | 人人舔人人插 | 久久8| 中文字幕精品三区 | 国产69精品久久久久9999apgf | 中文字幕在线观看完整 | 久久久黄视频 | 国产热re99久久6国产精品 | 91成人网在线播放 | 久久久天天操 | 天天艹天天爽 | 人人狠狠综合久久亚洲 | 亚洲va在线va天堂 | 人人舔人人射 | 九九有精品 | 亚洲国产手机在线 | 久久久久免费电影 | 开心激情五月婷婷 | 超碰在线人人艹 | 福利视频在线看 | 久久av福利 | 福利视频第一页 | 国产精品网站一区二区三区 | 中文字幕 国产专区 | 人人爽久久久噜噜噜电影 | 午夜精品导航 | 国产黄色精品在线 | 欧美日韩一区二区在线观看 | 国产二区av| 国产一区高清在线 | 国产原创av在线 | 91久久丝袜国产露脸动漫 | 91精品国产九九九久久久亚洲 | 国产精品2020 | 国产麻豆电影在线观看 | 久久综合狠狠综合久久狠狠色综合 | 六月丁香婷婷久久 | 午夜精品福利影院 | 蜜臀久久99精品久久久酒店新书 | 国产精品亚州 | 九九热精品国产 | 日韩精品久久久免费观看夜色 | 四虎成人免费影院 | 天天看天天操 | 亚洲国产精品va在线看黑人 | 欧美激情精品久久久久 | 91九色pron| 91麻豆国产 | 西西www4444大胆视频 | 欧美精品九九99久久 | 久久国产亚洲 | 国产精品18久久久久久久 | 成人免费看片98欧美 | 国产精品久久久久久麻豆一区 | 免费久草视频 | 天天综合网久久综合网 | 美女视频黄在线 | 美女网色| 免费在线中文字幕 | 九九热在线观看视频 | 日本久久久久久久久久久 | 色婷婷电影网 | 福利二区视频 | 国产精品综合久久久久久 | 999超碰 | 91九色porny蝌蚪视频 | 国产精品女同一区二区三区久久夜 | 欧美日韩高清一区二区三区 | 丁香六月五月婷婷 | 欧美人交a欧美精品 | 日本精品视频在线播放 | 日韩视频区 | 激情综合网天天干 | 狠狠综合久久av | 91桃色视频 | 日韩精品最新在线观看 | 91免费视频网站在线观看 | 超碰人人射 | 99精品视频一区 | 国产在线一区二区 | 国产精品久久久久久久99 | 欧美日韩不卡一区二区 | 97超碰.com| 香蕉国产91| 日韩免| 精品亚洲午夜久久久久91 | 国产正在播放 | 最近中文国产在线视频 | 成人一级免费视频 | 国产91成人 | 91一区二区三区在线观看 | 日韩综合视频在线观看 | 国外成人在线视频网站 | 日韩免费视频 | 婷婷色av | 国产亚洲精品久久网站 | 久久99久国产精品黄毛片入口 | 日日碰狠狠躁久久躁综合网 | 91成人久久 | 免费在线| 中文字幕二区三区 | 狠狠狠狠狠狠干 | 天天色天天射天天操 | 97超碰精品| 9797在线看片亚洲精品 | 91亚洲精品国偷拍 | 免费观看国产视频 | 国产九九精品 | 欧美一区二区三区在线观看 | 欧美亚洲精品一区 | 夜夜躁日日躁狠狠久久av | 久久午夜精品视频 | 日日夜夜精品视频 | 久章操| 欧美日韩首页 | 日批在线看 | 国产婷婷在线观看 | 91麻豆网站 | 91精品在线麻豆 | 中文字幕在线观看一区 | 久久久久久久久久久成人 | 免费黄色网址大全 | 欧美成人一区二区 | 日本精品视频一区二区 | 国内精品免费 | 日韩一区二区三免费高清在线观看 | 国产美女视频免费观看的网站 | 日韩一二三区不卡 | 丁香五月亚洲综合在线 | www日韩高清| 亚洲精品小区久久久久久 | 国产精品手机在线 | 天天干,天天射,天天操,天天摸 | 国产成人精品国内自产拍免费看 | 麻豆国产视频下载 | 日本公妇在线观看 | 国产亚洲成人网 | 午夜三级理论 | 久久99亚洲精品久久久久 | 精品久久网站 | 亚洲国产97在线精品一区 | 久av在线 | 国产a级精品 | 91免费的视频在线播放 | 91成人午夜 | 66av99精品福利视频在线 | 91久草视频 | 一本一本久久a久久精品综合妖精 | 夜夜操网站 | 美女久久久久久久久久 | 狠狠色丁香婷婷 | 中文字幕在线观看三区 | 天天天天天干 | 久久国产热| 成人免费视频播放 | 美女视频黄频 | 日韩a在线观看 | 欧美在线a视频 | 亚洲在线精品 | 99热最新地址 | 亚洲综合在线观看视频 | av在线中文 | 青青草在久久免费久久免费 | 中文资源在线官网 | 国产只有精品 | 免费看污在线观看 | www久久九 | 久久久久免费视频 | 成人黄色电影视频 | 中文字幕在线视频第一页 | 日韩欧美精品一区二区 | 亚洲国产精品资源 | 九色精品免费永久在线 | 国产精品一区二区果冻传媒 | 在线精品视频免费观看 | 免费观看完整版无人区 | 亚洲国产欧美在线看片xxoo | 97在线视频免费播放 | 亚洲视频在线观看 | 欧美一区三区四区 | 亚洲永久精品在线 | 久久av高清 | 国产在线欧美日韩 | 国产亚洲精品久久久久秋 | 久久综合九色欧美综合狠狠 | 亚洲成人黄色在线观看 | 国产在线日本 | 亚洲成av人片一区二区梦乃 | 丁香网婷婷 | 麻豆91精品91久久久 | 五月婷丁香 | 国产视频在线免费观看 | 天天干天天弄 | 在线黄色观看 | 日韩中文字幕在线 | 91漂亮少妇露脸在线播放 | 国产不卡视频在线 | 一区二区视频在线播放 | 国产福利一区二区在线 | 亚洲精品国产精品国产 | 日韩欧美视频 | 天天干,天天干 | 国产一区二区在线免费观看 | 久久国产精品一区二区三区 | www日日| 亚洲一本视频 | 亚洲成人黄色网址 | 日日夜夜网| 不卡视频国产 | 免费在线成人av | 久久久久久国产精品美女 | 亚州国产精品视频 | 黄色成人av网址 | 国产黄色精品在线观看 | 日韩视频免费 | 99精品欧美一区二区三区 | 91天堂素人约啪 | 国产黄在线免费观看 | 草久久久 | 特级毛片爽www免费版 | 黄色亚洲大片免费在线观看 | 午夜影院一级片 | 久久免费视频这里只有精品 | 久久久久久国产精品久久 | 特片网久久 | 黄在线免费观看 | 久久99精品国产99久久 | www.天天色.com | 日本久久成人 | 免费在线观看av网站 | 国产黄色高清 | 一本一道久久a久久精品蜜桃 | 日韩啪啪小视频 | 日韩中字在线 | 在线电影日韩 | 五月天综合色 | 免费观看第二部31集 | 天无日天天操天天干 | 九草视频在线观看 | 日产av在线播放 | 国产在线1区 | 成人cosplay福利网站 | 国产精品99久久久精品免费观看 | 精品一区二区三区在线播放 | 黄色毛片在线看 | 九九视频网| 中文字幕在线观看一区二区 | 国产精品久久久 | 精品亚洲男同gayvideo网站 | 中文字幕精品一区 | 在线日本看片免费人成视久网 | 在线播放 亚洲 | 91人人网| 中文字幕永久在线 | 欧美一区二区三区特黄 | 亚洲精品一区二区久 | 亚洲电影av在线 | 国产做爰视频 | 一区二区三区在线观看免费视频 | 色偷偷88888欧美精品久久久 | 黄色成人在线观看 | 麻豆传媒视频在线免费观看 | 久久久综合香蕉尹人综合网 | 麻豆视传媒官网免费观看 | 国产黑丝一区二区 | 亚洲视频 在线观看 | 一区二区视频电影在线观看 | 日韩中文字 | 福利网在线 | 99视频99 | 亚洲国产日韩av | 国产精品一区二区三区免费视频 | 国产精品粉嫩 | 91亚洲视频在线观看 | 国产一区精品在线 | 色综合天天视频在线观看 | 欧美日本在线视频 | 国产高清专区 | 免费成人短视频 | 国产亚洲精品综合一区91 | 美女黄视频免费看 | 国产拍在线 | 2018精品视频 | 国产精品乱码一区二区视频 | 国产一区二区三区久久久 | 中文字幕免费高清 | 亚洲国产中文在线 | 日韩毛片久久久 | 999视频网站 | 欧美 日韩 国产 中文字幕 | 亚洲精品乱码久久久久久9色 | 亚洲精品乱码 | 网站在线观看日韩 | 精品九九九九 | 九九热av | 午夜精品久久久久久久久久久久久久 | 精品久久久久久久久久久久久久久久 | 午夜 在线| 国产在线探花 |