标签: ip

将IP重定向到域

Google搜索结果显示我的网页为(ip)/mypage.html而不是https://www.mydomain.com/mypage.html.我相信解决方案是将ip重定向到域.我发现了很多非常类似的方法,但是没有一个能为我工作.我有一个将http重定向到https的现有规则.这就是我的.htaccess文件目前的样子:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^11\.11\.11\.111$ [NC]
RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} ^([a-z.]+)?mydomain\.com$ [NC]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.mydomain.com/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

ip dns .htaccess redirect

9
推荐指数
2
解决办法
4万
查看次数

从C#中的IP获取本地网络上的机器MAC地址

我正在尝试编写一个函数,它将一个IP address参数作为参数并在我的本地网络上查询该机器MAC address.

我已经看到了许多获得本地计算机自己的示例MAC address,但是没有(我发现)似乎在查询本地网络计算机.

我知道这样的任务是可以实现的,因为这种Wake on LAN扫描软件扫描本地IP范围并返回所有机器上的MAC地址/主机名.

谁能告诉我在哪里开始尝试编写一个函数来实现C#中的这个功能?任何帮助,将不胜感激.谢谢

编辑:

根据Marco Mp在下面的评论,使用了ARP表. arp班

c# ip port network-programming mac-address

9
推荐指数
3
解决办法
3万
查看次数

识别独特的访客,先进的方式?(PHP/Java的)

我是一个主要的,所谓的"顶级名单"的创始人.用户可以通过获得他们的顶级参赛者的投票,将他们的网站提交到顶级名单并获得更高的位置.

普通游客年轻,主要在13-20岁之间.它们带来了好处,但也有缺点.在过去的5年里,我一直在积极打击那些使用机器人获得选票的"骗子".这些机器人使用代理,不同的用户代理,甚至设法解决多种CAPTCHA问题(reCAPTCHA,SolveMedia和自定义验证码).自从我引入了一个随机布局的新系统并在每个页面加载时加载15个不同的CAPTCHA系统中的1个以来,这些机器人的使用已大大减少.它似乎不再是一个问题.

人们现在已经开始进行手工作弊.他们使用的浏览器插件几乎可以在每个页面加载时更改其IP地址(例如:https://addons.mozilla.org/en-us/firefox/addon/ipflood/).我真的似乎无法找到解决这个问题的方法,但这是一个非常大的问题.很难相信,但这些孩子甚至手动解决5000个验证码问题,这需要很长时间.

我的问题是,有人能帮我想办法解决这个问题吗?我一直在使用cookie和会话设置,但他们已经开始注意并删除它们.我将介绍用户帐户,并通过帐户投票更有趣,但我不想要帐户.我怀疑是否存在,但还有其他方法可以打击作弊(可能就像一个Java网络应用程序,如果可能的话,它会逃避浏览器设置的代理并将真正的IP传递给页面?)?或者我应该放弃并雇用人员进行日常检查,以确定该网站是否有可能获得如此多的选票?

php java ip

9
推荐指数
1
解决办法
1097
查看次数

识别可疑登录的可靠方法是什么?

我有兴趣在我的Web应用程序上实现一个功能,该功能会在用户上次访问后发生可疑登录时向用户发出警告.

我的膝盖反应是使用客户端的IP地址,但经过我的研究后,这似乎是一个糟糕的主意.动态分配和NAT表明这不可靠.

我的第二个想法是使用地理定位服务.但我能找到的是基于IP或在我的价格范围之外.

我的第三个想法是实现类似Facebook的"注册此设备"提示,但我不确定它是如何以可靠的方式工作的.

有没有人对如何以合理的置信度识别设备或位置有任何想法?

javascript php ip web-applications

9
推荐指数
1
解决办法
837
查看次数

使用TCP KeepAlive检测套接字断开

我正在开发一个服务器,通过TCP/IP托管第三方设备,并且遇到突然的连接丢失(设备通过蜂窝连接).我需要找到一种方法来检测断开连接,而无需将数据写入设备本身.

我已经看过使用TCP keepalive功能,但Java似乎不允许任何调整keepalive操作的时间.

这样做有什么建议的方法吗?

我的简化套接字代码如下:

public class Test2Socket {
    public static void main(String[] args) {
        try {
            ServerSocket skt = new ServerSocket(1111);

            Socket clientSocket = skt.accept();

            clientSocket.setKeepAlive(true);

            System.out.println("Connected..");

            BufferedReader input = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

            String inputLine;

            while((inputLine = input.readLine()) != null)
            {
                System.out.println(inputLine);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

任何反馈将不胜感激.

java sockets ip multithreading tcp

9
推荐指数
1
解决办法
2万
查看次数

将GoDaddy裸域添加到Heroku应用程序

Heroku 自定义域名

我为我的Heroku应用设置了两个自定义域名.

example.com        example.com.herokudns.com
*.example.com      wildcard.example.com.herokudns.com
Run Code Online (Sandbox Code Playgroud)

域配置

我按如下方式配置了域名:

  1. 我添加了一个指向的CNAME记录.工作良好.*wildcard.example.com.herokudns.com

  2. URL使用GoDaddy的域转发工具转发,因为我只能将IP地址指定为A记录.


问题

域转发指向example.com.herokudns.com.不幸的是,GoDaddy会自动添加http://,因此它实际上无法打开我的应用程序,而是显示一条Heroku消息:

这里什么也没有.


目标

设置我的GoDaddy根域以指向我的Heroku应用程序.


注意: GoDaddy会自动添加指向的A记录@>>++FWD1++<<

ip dns url shared-hosting heroku

9
推荐指数
1
解决办法
4231
查看次数

Perl按位并给我时髦的结果

我正在编写一个perl脚本来比较使用perls按位AND运算符的两个IP地址.但我得到了一些非常时髦的结果.我是perl的新手所以也许有人可以给我一些指示.

继承我的小脚本:

#!/usr/bin/perl

$address = "172.34.12.0";
$address2 = "255.255.255.0";

@octets = split (/\./,$address);
@octets2 = split (/\./,$address2);

#Funky results when doing a bitwise AND
#This outputs "050 24 00 0" What's going on here?
print $octets[0] & $octets2[0], "\n";
print $octets[1] & $octets2[1], "\n";
print $octets[2] & $octets2[2], "\n";
print $octets[3] & $octets2[3], "\n";

#Results are what I want when doing it as literals
#This outputs "172 34 12 0"
print 172 & 255, "\n";
print 34 & 255, "\n"; …
Run Code Online (Sandbox Code Playgroud)

ip perl parsing bit-manipulation

8
推荐指数
5
解决办法
499
查看次数

获取我的设备的WiFi直接IP地址

我试图获取我的设备的IP地址,但都是徒劳的,没有成功.我试过了

public String getP2PIpAddr() {
       WifiManager wifiManager = (WifiManager) getSystemService(WIFI_P2P_SERVICE);
       WifiInfo wifiInfo = wifiManager.getConnectionInfo();
       int ip = wifiInfo.getIpAddress();

       String ipString = String.format(
       "%d.%d.%d.%d",
       (ip & 0xff),
       (ip >> 8 & 0xff),
       (ip >> 16 & 0xff),
       (ip >> 24 & 0xff));

       return ipString;
    }
Run Code Online (Sandbox Code Playgroud)

但它给我0.0.0.0,没有其他方法也工作..帮助!!

java ip android wifi-direct

8
推荐指数
2
解决办法
9884
查看次数

将LAN IP地址分配给Docker容器,与主机的IP地址不同

我不熟悉Unix网络,添加虚拟接口等,现在尝试学习它.我们正试图将我们的应用程序停靠.
我的要求是:将ip分配给可从外部应用程序/浏览器访问的docker容器.

容器ip应该可以从同一网络中的不同计算机ping通.我不想使用端口转发.

  1. 我想访问一个docker容器,就像我们使用ip地址访问VM一样.[没有端口映射,-p标志.如果我在容器内运行Apache或Tomcat之类的任何服务器,则应使用容器ip和端口访问它.例如:http:// container_ip:8443]
    在docker中这可能吗?

  2. 在我的Unix机器上运行ifconfig(RHEL 7.1)显示docker0,ens,lo和veth接口.没有eth0.有点困惑.

ip port containers public docker

8
推荐指数
2
解决办法
4978
查看次数

C raw socket的sendto地址的用途?

我在Linux机器上通过C中的原始套接字发送一些ping数据包.

int sock_fd = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
Run Code Online (Sandbox Code Playgroud)

这意味着我在写入套接字时指定了IP包头(IP_HDRINCL隐含).

写入套接字send失败,告诉我需要指定一个地址.

如果我使用sendto那么它的工作原理.对于sendto我必须指定一个sockaddr_in结构来使用,其中包括场sin_family,sin_portsin_addr.

但是,我注意到了一些事情:

  • sin_familyAF_INET-创建插座时已经指定.
  • sin_port自然是未使用的(端口不是IP的概念).
  • 无论我使用什么地址,只要它是外部地址(IP数据包指定8.8.8.8和sin_addr指定1.1.1.1)都无关紧要.

似乎没有一个额外的字段在sendto很大程度上实际使用.那么,是否存在技术原因导致我必须使用sendtosend不仅仅是API中的疏忽?

c sockets linux ip raw-sockets

8
推荐指数
1
解决办法
2646
查看次数