IPアドレスの古い不要なDHCP予約を削除する

大規模な組織では、空きIPアドレスを監査する必要がある場合があります。 ユーザーはその場所に出入りし、出入りします。IPアドレスは予約されたままですが、背後には誰もいません。 そのような「死んだ魂」の検索を行います。



MS DHCPログからレポートを取得する方法の例を見てみましょう。



アドレス空間の使用に関するレポートを生成する技術は、2つの部分で構成されています。



1)DHCP更新イベントの分離と



2)SQL処理。



\\ dhcp_server \ c $ \ Windows \ System32 \ dhcpフォルダには、DHCPサーバーのログがあります。 それらのコピーは、ローカルまたはネットワークドライブ上の1つのフォルダーに収集する必要があります。 たとえば、c:\ tmp



これらのファイルから、すべてのdhcpリース更新更新イベントを取得できます。



cmd



C:



cd c:\tmp\








1)最初の段階では、重要な行を強調します。 処理するすべての* .logファイル名をコンマで区切ってリストします。 何らかの方法でファイル名を変更することで、数週間でファイルを収集できます。



c:\tmp>for /f "tokens=1,2,3,4,5,6,7,8 delims=," %a in (DhcpSrvLog-Mon.log,DhcpSrvLog-Tue.log,DhcpSrvLog-Wed.log,DhcpSrvLog-Thu.log,DhcpSrvLog-Fri.log,DhcpSrvLog-Sat.log,DhcpSrvLog-Sun.log) do if [%e] NEQ [] echo %b,%c,%d,%e,%f,%g >> text.csv







2)ヘッダー「日付、時刻、説明、IP、ホスト名、MAC」をtext2.csvファイルの最初の行に追加し、残りの行に更新イベントを入力します。



c:\tmp>echo Date,Time,Description,IP,Hostname,MAC >> text2.csv







c:\tmp>for /f "tokens=1,2,3,4,5,6 delims=," %a in (text.csv) do if "%c" EQU "Renew" echo %a,%b,%c,%d,%e,%f >> text2.csv







text2.csvを毎週保存し、連結によって1つのファイルに収集できます。 たとえば、1か月間、6か月間など、アドレスが使用されていないことを確認する必要がある場合、この期間にtext2.csvファイルを保存し、次の操作の前に接着する必要があります。



3)レポート生成:



c:\tmp >"c:\Program Files (x86)\Log Parser 2.2\LogParser.exe" -i:csv -o:TPL -tpl:dhcp2.tpl "SELECT IP, hostname, mac, max(to_timestamp(add(add(Date, ' '),time), 'MM/dd/yy HH:mm:ss')) as timestamp, EXTRACT_TOKEN(ip, 0, '.') as octet1, EXTRACT_TOKEN(ip, 1, '.') as octet2, EXTRACT_TOKEN(ip, 2, '.') as octet3, EXTRACT_TOKEN(ip, 3, '.') as octet4, add(strrepeat('0',sub(3, to_int(strlen(octet4)))),octet4) as octet4lz, add(strrepeat('0',sub(3, to_int(strlen(octet3)))),octet3) as octet3lz INTO text2.html FROM text2.csv group by IP,mac,hostname order by octet1,octet2,octet3lz,octet4lz"







これにより、text2.htmlファイルが作成され、DHCPを介してアドレスを受信する「ライブ」コンピューターを確認できます。



「-o:TPL -tpl:dhcp2.tpl」を「-o:CSV」に、「text2.html」を「b8.csv」に置き換えると、出力ファイルをExcelにインポートできます。



"c:\Program Files (x86)\Log Parser 2.2\LogParser.exe" -i:csv -o:CSV "SELECT IP, hostname, mac, max(to_timestamp(add(add(Date, ' '),time), 'MM/dd/yy HH:mm:ss')) as timestamp, EXTRACT_TOKEN(ip, 0, '.') as octet1, EXTRACT_TOKEN(ip, 1, '.') as octet2, EXTRACT_TOKEN(ip, 2, '.') as octet3, EXTRACT_TOKEN(ip, 3, '.') as octet4, add(strrepeat('0',sub(3, to_int(strlen(octet4)))),octet4) as octet4lz, add(strrepeat('0',sub(3, to_int(strlen(octet3)))),octet3) as octet3lz INTO b8.csv FROM text2.csv group by IP,mac,hostname order by octet1,octet2,octet3lz,octet4lz"







LogParserのダウンロードはこちら:



www.microsoft.com/en-us/download/details.aspx?id=24659



All Articles