sqlmap设置ip代理
http.proxyHost:设置 HTTP 访问所使用的代理服务器地址。该属性名的前缀可以改为 https、ftp 等,分别用于设置 HTTP 访问、安全 HTTP 访问和 FTP 访问所用的代理服务器地址。
http.proxyPort:设置 HTTP 访问所使用的代理服务器端口。该属性名的前缀可以改为 https、ftp 等,分别用于设置 HTTP 访问、安全 HTTP 访问和 FTP 访问所用的代理服务器端口。
ListProxy select(URI uri):实现该方法让代理选择器根据不同的 URI 来使用不同的代理服务器,该方法就是代理选择 器管理网络连接使用代理服务器的关键。
connectFailed(URI uri, SocketAddress sa, IOException ioe):当系统通过默认的代理服务器建立连接失败后,代理选择器 将会自动调用该方法。通过重写该方法可以对连接代理服务器失败的情形进行处理。
上面程序中三行粗体字代码设置 Java 打开 HTTP 访问时的代理服务器属性sqlmap设置ip代理,其中前两行代码设置代理服务器的地址和 端口,第三行代码设置该代理 HTTP 访问哪些主机时不需要使用代理服务器。上面程序的①行代码处直接打开一个 URLConnection,但系统会为打开该 URLConnection 时使用代理服务器。
系统默认的 ProxySelector 会检测各种系统属性和 URL 协议,然后决定怎样连接不同的主机。当然,程序也可以调用 ProxySelector 类的 setDefaultI()静态方法来设置默认代理服务器,也可以调用 getDefault()方法获得系统当前默认的代理 服务器。
程序可以通过 System 类来设置系统的代理服务器属性,关于代理服务器常用的属性名有如下三个:
系统默认的代理服务器选择器也重写了 connectFailed 方法,它重写该方法的处理策略是:当系统设置的代理服务器失 败时,默认代理选择器将会采用直连的方式连接远程资源,所以当运行上面程序等待了足够长时间时,程序依然可以打 印出该远程资源的所有内容。
运行上面程序,将会看到程序长时间等待,因为 192.168.0.96 通常并不是有效的代理服务器(当然,如果读者运行的机 器恰好可以使用地址为 192.168.0.96 的代理服务器又另当别论)。
系统提供了默认的 ProxySelector 子类作为代理选择器,开发者可以实现自己的代理选择器,程序可以通过继承 ProxySelector 来实现自己的代理选择器。继承 ProxySelector 需要重写两个方法:
前面介绍的直接使用 Proxy 对象可以在打开 URLConnection 或 Socket 时指定代理服务器,使用这种方式需要每次打开 连显式设置代理服务器。如果想让系统打开连接时总是具有默认的代理服务器,则可以使用ProxySelector, 它可以它根据不同的连接使用不同的代理服务器。
我们有两种方法设置这种系统属性, 一种是命令行下运行 Java 程序的时候,通过参数付值 一种是在 java 源程序中设置。
http.nonProxyHosts:设置 HTTP 访问中不需要使用代理服务器的远程主机,可以使用*通配符,如果有多个地址,多个 地址用竖线()分隔。