рджрд┐рди рдХрд╛ рдЕрдЪреНрдЫрд╛ рд╕рдордп, рд╣реИрдмреНрд░рд╛
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ ISA 2006 рд▓реЙрдЧ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд╢реБрд▓реНрдХ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рд▓реЙрдЧ рдХреЛ MSDE рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрдЧрд▓рд╛,
SQL рд╕рд░реНрд╡рд░ рдкреНрд░рдмрдВрдзрди рд╕реНрдЯреВрдбрд┐рдпреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ (рдирд┐рд╢реБрд▓реНрдХ рд╡рд┐рддрд░рд┐рдд), рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ MSFW рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ,
рдЬреИрд╕рд╛ рдХрд┐ CYRILL рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ"рдПрдХ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ" рдЪреБрдиреЗрдВ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рддрд┐рдерд┐ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдВ:
SELECT ClientIP, ClientUserName, ClientAgent, bytesrecvd, bytessent, logTime, uri
FROM WebProxyLog
WHERE ClientIP='_ip_adress_' ORDER BY logtime ASC
рдЕрдиреБрд░реЛрдз рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреВрд░реНрдг рдкреНрд░рд╕рдиреНрдирддрд╛ рдХреЗ рд▓рд┐рдП рдореИрдВ `ClientIP` рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рд╕реНрдкрд╖реНрдЯ Ipv4 рдореЗрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд╕рд╛рде рд╣реА рдЖрдИрдкреА рдкрддреЗ рдХреЗ рдмрдЬрд╛рдп рдХреЙрд▓рдо` uri` рдореЗрдВ рд╣реЛрд╕реНрдЯ рдирд╛рдоред
рддреЛ, рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╡рд┐рдзрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░, `ClientIP` рдХреЛ рдареАрдХ рдХрд░реЗрдВ
рдЯреАрдПрд╕-рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рд╕рд╛рде рдЖрдИрдПрд╕рдП рд▓реЙрдЧ рдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯрд┐рдк рдХреЛ рдкрд╛рд░реНрд╕ рдХреИрд╕реЗ рдХрд░реЗрдВ , рд▓реЗрдЦрдХ - рдПрдХ рд╡реАрдХрд▓ред
рдореИрдВ рдЕрдкрдирд╛ рдореБрдлреНрдд рдЕрдиреБрд╡рд╛рдж рдЙрджреНрдзреГрдд рдХрд░рддрд╛ рд╣реВрдВ:
рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдИрдПрд╕рдП рд▓реЙрдЧ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯрдЖрдИрдкреА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИ
рдЕрдХреНрд╕рд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рд╕реЗ рдПрдХ рдкреНрд░рд╢реНрди рдХреЗ рд╕рд╛рде рдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ - ISA рдХреНрд▓рд╛рдЗрдВрдЯрдЖрдИрдкреА рдХреЛ рдкрд░рд┐рдЪрд┐рдд IPv4 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреИрд╕реЗ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдореБрдЭреЗ ISA рд▓реЙрдЧ рдореЗрдВ ClientIP рдирд┐рдпрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдирд╣реАрдВ рдорд┐рд▓рд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдерд╛ рдХрд┐ рдпрд╣ рдмрд╛рдЗрдирд░реА рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдПрдХ рд▓реЙрдиреНрдЧ INT рдорд╛рди рдерд╛ред
рдЗрд╕ рддрд░реНрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд░реВрдкрд╛рдВрддрд░рдг рдирд┐рдпрдо рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
1. рд╕рдВрдЦреНрдпрд╛ рдХреЛ 32-рдмрд┐рдЯ рдмрд╛рдЗрдирд░реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВ;
2. рдЗрд╕реЗ 8 рдмрд┐рдЯреНрд╕ рдХреЗ 4 рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ;
3. рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХреЛ рдПрдХ рджрд╢рдорд▓рд╡ рдорд╛рди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдбреЙрдЯ рдХреЗ рд╕рд╛рде рдЕрд▓рдЧ рдХрд░рддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ ISA рд▓реЙрдЧ рдореЗрдВ ClientIP рдорд╛рди рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрд╛ рд╣реИ:
create function ufn_getIPAddr(@nIP bigint)
returns nvarchar(20)
as
begin
declare @binIP varbinary(4)
declare @h1 varbinary(1)
declare @h2 varbinary(1)
declare @h3 varbinary(1)
declare @h4 varbinary(1)
declare @strIP nvarchar(20)
SELECT @binIP = CONVERT(VARBINARY(4),@nIP )
select @h1 = SUBSTRING(@binIP,1,1)
select @h2 = SUBSTRING(@binIP,2,1)
select @h3 = SUBSTRING(@binIP,3,1)
select @h4 = SUBSTRING(@binIP,4,1)
select @strIP = CONVERT(nvarchar(3),CONVERT(int,@h1))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h2))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h3))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h4))
--print @strIP
return @strIP
end
create function ufn_getIPAddr(@nIP bigint)
returns nvarchar(20)
as
begin
declare @binIP varbinary(4)
declare @h1 varbinary(1)
declare @h2 varbinary(1)
declare @h3 varbinary(1)
declare @h4 varbinary(1)
declare @strIP nvarchar(20)
SELECT @binIP = CONVERT(VARBINARY(4),@nIP )
select @h1 = SUBSTRING(@binIP,1,1)
select @h2 = SUBSTRING(@binIP,2,1)
select @h3 = SUBSTRING(@binIP,3,1)
select @h4 = SUBSTRING(@binIP,4,1)
select @strIP = CONVERT(nvarchar(3),CONVERT(int,@h1))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h2))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h3))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h4))
--print @strIP
return @strIP
end
рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдЙрджрд╛рд╣рд░рдг я╝Ъ
dbo.ufn_getIPAddr (3232240156) рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
рдкрд░рд┐рдгрд╛рдо я╝Ъ
192.168.18.28
рдпрд╣ рд▓реЗрдЦ Wacle рдХреА рд╕рдВрдкрддреНрддрд┐ рд╣реИред
рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ wacle.wang@gmail.com рдкрд░ рд▓рд┐рдЦреЗрдВ
рдЕрдм рд╣рдо рдореЗрдЬрдмрд╛рди рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдлрд┐рд░ рд╕реЗ,
CYRILL`a рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛
рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕реНрдерд╛рдкрдирд╛ рдирд┐рд░реНрджреЗрд╢:
1. ISA рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП HostLogger.dll рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред
2. рдХрдорд╛рдВрдб рдкреНрд░реЙрдореНрдкреНрдЯ рдкрд░, рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: regsvr32 HostLogger.dll
рдЕрдм рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреНрд╡реЗрд░реА рджреЛрд╣рд░рд╛рддреЗ рд╣реИрдВ:
"рдПрдХ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ" рдЪреБрдиреЗрдВ, рд╡рд╛рдВрдЫрд┐рдд рддрд┐рдерд┐ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд░реЗрдВ:
create function ufn_getIPAddr(@nIP bigint)
returns nvarchar(20)
as
begin
declare @binIP varbinary(4)
declare @h1 varbinary(1)
declare @h2 varbinary(1)
declare @h3 varbinary(1)
declare @h4 varbinary(1)
declare @strIP nvarchar(20)
SELECT @binIP = CONVERT(VARBINARY(4),@nIP )
select @h1 = SUBSTRING(@binIP,1,1)
select @h2 = SUBSTRING(@binIP,2,1)
select @h3 = SUBSTRING(@binIP,3,1)
select @h4 = SUBSTRING(@binIP,4,1)
select @strIP = CONVERT(nvarchar(3),CONVERT(int,@h1))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h2))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h3))+'.'
+CONVERT(nvarchar(3),CONVERT(int,@h4))
--print @strIP
return @strIP
end
рдЕрдм рдлрд┐рд░ рд╕реЗ, "рдПрдХ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ" рдЪреБрдиреЗрдВ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рддрд┐рдерд┐ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдЬреБрдбрд╝реЗрдВ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдз рдмрдирд╛рдПрдБ:
SELECT dbo.ufn_getIPAddr(ClientIP), ClientUserName, ClientAgent, bytesrecvd, bytessent, logTime, uri
FROM WebProxyLog
WHERE dbo.ufn_getIPAddr(ClientIP)='_ip_adress_' ORDER BY logtime ASC
рдФрд░ рд╣рдореЗрдВ рдХрд╛рдлреА рд╕реБрдкрд╛рдЪреНрдп рдбреЗрдЯрд╛ рдорд┐рд▓рддрд╛ рд╣реИред рдЗрд╕ рдкрджреНрдзрддрд┐ рдореЗрдВ рдПрдХ рдЦрд╛рдореА рд╣реИ - рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рджрд┐рди рддрдХ рд╕реАрдорд┐рдд рдПрдХ рдирдореВрдирд╛ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдпрд╛рдиреА рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдореВрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдЗрд╕реА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╡рд┐рдзрд┐ рдХрд╛рдлреА рдЙрдкрдпреБрдХреНрдд рд╣реИред