【发布时间】:2012-01-30 07:04:00
【问题描述】:
我为我的一个项目运行服务器。客户端在启动时调用作为 Web 服务运行的更新检查功能。这些请求被记录到文件中。
我使用以下函数记录到文件:
Public Sub Log(ByVal Message As String, ByVal Level As LogEntryLevel, ByVal Additional As Boolean)
Dim base As String = "C:\SERVER\log\"
Dim fileName As String = Date.Now.ToString("dd-MM-yyyy") & ".log"
Dim newString As String = ""
If Not Additional Then
If System.IO.File.Exists(base + fileName) Then newString &= vbNewLine
newString &= Date.Now.ToString("[dd/MM/yyyy HH:mm:ss.fff ") & Level.ToString & "] " & Message
Else
newString &= Message
End If
My.Computer.FileSystem.WriteAllText(base + fileName, newString, True)
End Sub
我使用以下函数来获取客户端 IP 地址:
Public Function getIP() As String
Dim ip As String
ip = Context.Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If ip = String.Empty Then
ip = Context.Request.ServerVariables("REMOTE_ADDR")
End If
Return ip
End Function
日志消息构造如下:
Log(String.Format("Client {0} invoked CheckForUpdate with [{1}]", getIP, ver), LogEntryLevel.INFO, False)
前段时间这被记录了:
[11-12-2011 22:10:20.730 INFO] Client 10.0.1.4, 127.0.0.1 invoked CheckForUpdate with [0.5]
O_O 这个怎么退?这是正常的吗?这可能吗?请求如何来自 localhost (127.0.0.1) 并同时来自远程 IP 地址?服务器被黑了吗?这是一个故障吗?有人可以向我解释一下吗?
- 这是不久前在 XtremeVBTalk.com 上发布的:http://www.xtremevbtalk.com/showthread.php?t=322915 但没有人回答,所以我再次在这里提问。
【问题讨论】:
标签: asp.net vb.net web-services ip-address