我需要在表单提交后在数据库中存储注释用户的IP地址.
是否有任何symfony2函数来获取IP?或任何其他方式获得IP?
我知道正则表达式对于验证IP地址是危险的,因为IP地址可以采用不同的形式.
我见过类似的C和C++问题,这些问题是用C#inet_ntop()中不存在的函数解决的.
我发现的.NET解决方案只处理标准的"ddd.ddd.ddd.ddd"表单.有什么建议?
有什么办法可以让客户端的原始IP地址进入服务器吗?我可以使用request.getRemoteAddr()
,但我似乎总是得到代理或Web服务器的IP.
我想知道客户端用来连接我的IP地址.无论如何我能得到它吗?
在SQL Server中存储IPv4地址的最佳推荐数据类型是什么?
或者有人已经为它创建了用户SQL数据类型(.Net程序集)?
我不需要排序.
我们经常使用example.com进行域名参考.我想知道是否有任何IP地址用作示例IP地址,在教程或笔记等参考文献中提及?我知道可以使用环回接口127.0.0.1,但它一直以本地系统而闻名.
example.com IP地址可以合法地用于此目的吗?
我正在开发Spring MVC控制器项目,我正在从浏览器中进行GET URL调用 -
以下是我通过浏览器进行GET调用的网址 -
http://127.0.0.1:8080/testweb/processing?workflow=test&conf=20140324&dc=all
Run Code Online (Sandbox Code Playgroud)
以下是在浏览器上点击后调用的代码 -
@RequestMapping(value = "processing", method = RequestMethod.GET)
public @ResponseBody ProcessResponse processData(@RequestParam("workflow") final String workflow,
@RequestParam("conf") final String value, @RequestParam("dc") final String dc) {
System.out.println(workflow);
System.out.println(value);
System.out.println(dc);
// some other code
}
Run Code Online (Sandbox Code Playgroud)
问题陈述:-
现在有什么办法,我可以从一些标题中提取IP地址吗?意思是我想知道哪个IP地址,呼叫即将到来,这意味着无论谁在上面调用URL,我都需要知道他们的IP地址.这可能吗?
据我所知,HTTP_X_FORWARDED_FOR
代理服务器设置了一个标头,用于标识通过代理发出HTTP请求的主机的IP地址.我听说过标题HTTP_CLIENT_IP
是出于类似目的设置的.
HTTP_CLIENT_IP
和之间有什么区别HTTP_X_FORWARDED_FOR
?我一直试图获得有效的IPv4验证正则表达式,但没有太多运气.似乎我曾经有过它(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}
,但它会产生一些奇怪的结果:
$ grep --version
grep (GNU grep) 2.7
$ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.1
192.168.1.1
$ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.255
192.168.1.255
$ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.255.255
$ grep -E '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}\b' <<< 192.168.1.2555
192.168.1.2555
Run Code Online (Sandbox Code Playgroud)
我做了一个搜索,看看是否已经被问及回答,但其他答案似乎只是显示如何确定4组1-3个数字,或者不适合我.
有任何想法吗?谢谢!
我需要知道如何使用其IPv4地址获取所有网络接口.或者只是无线和以太网.
要获取所有网络接口详细信息,我使用此:
foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) {
if(ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 ||
ni.NetworkInterfaceType == NetworkInterfaceType.Ethernet) {
Console.WriteLine(ni.Name);
}
}
Run Code Online (Sandbox Code Playgroud)
并获取计算机的所有托管IPv4地址:
IPAddress [] IPS = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress ip in IPS) {
if (ip.AddressFamily == AddressFamily.InterNetwork) {
Console.WriteLine("IP address: " + ip);
}
}
Run Code Online (Sandbox Code Playgroud)
但是如何获得网络接口及其正确的ipv4地址?
我在本地笔记本电脑上安装了XAMPP.我有一个几乎静态的IP.我想把ip给别人从他们的浏览器运行它.我配置了apache httpd-vhosts.conf来监听我的ip地址:80并将带有ip地址和域根的虚拟服务器添加到本地httdocs目录,将servername添加为localhost.Apache无法启动.我该怎么做才能从外部计算机访问我的网站.
ip-address ×10
c# ×2
ipv4 ×2
proxy ×2
.net ×1
client ×1
grep ×1
header ×1
http ×1
java ×1
regex ×1
servlets ×1
spring-mvc ×1
sql ×1
sql-server ×1
symfony ×1
types ×1
validation ×1
xampp ×1