/** * ARP情報更新関数 */ function UpdArpInfo($cidr) { $ipObj = new UtilIPv4($cidr); //print "Address: {$ipObj->address()}\n"; //print "Netbits: {$ipObj->netbits()}\n"; //print "Netmask: {$ipObj->netmask()}\n"; //print "Inverse: {$ipObj->inverse()}\n"; //print "Network: {$ipObj->network()}\n"; //print "Broadcast: {$ipObj->broadcast()}\n"; $ip_list = $ipObj->getIpAddrList(); foreach ($ip_list as $value) { if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { exec('ping -n 1 -w 1000 ' . $value); } else { exec('/bin/ping -c 1 -w 1 ' . $value); } // for Linux(debian) } return true; }
$SMARTY->assign('confirm_param', UtilString::buildQueryString($param)); } else { $SMARTY->assign('inform_msg', 'パラメータが不正です。'); } break; // デバイス起動 // デバイス起動 case 'wake': if (isset($GET_DATA['mac_addr']) && $GET_DATA['mac_addr'] != '') { if (isset($GET_DATA['ip_addr']) && $GET_DATA['ip_addr'] != '') { $device_name = $GET_DATA['ip_addr']; } else { $device_name = $DEV_LIST[$GET_DATA['mac_addr']]; } UtilLog::writeLog('WOLパケットを送信 Name:' . $device_name . ' MAC:' . $GET_DATA['mac_addr'], 'ACCESS'); $ipObj = new UtilIPv4(CIDR_INFO); if (!WakeOnLan($ipObj->broadcast(), $GET_DATA['mac_addr'])) { $SMARTY->assign('inform_msg', "「{$device_name}」の起動に失敗しました。"); } else { $SMARTY->assign('inform_msg', "「{$device_name}」の起動に成功しました。"); } } else { $SMARTY->assign('inform_msg', 'パラメータが不正です。'); } break; // 追加フォーム(手動) // 追加フォーム(手動) case 'append_form1': $SMARTY->assign('input_msg', 'MACアドレスとデバイス名を入力してください。'); $param = array(); $param['mode'] = 'append';