📄 traceroutectltable.h
字号:
/* *Copyright(c)2004,Cisco URP imburses and Network Information Center in Beijing University of Posts and Telecommunications researches. * *All right reserved * *File Name:traceRouteCtlTable.h *File Description:The head file of traceRouteCtlTable.c * *Current Version:1.0 *Author:ChenJing *Date:2004.8.20 *//* * Note: this file originally auto-generated by mib2c using * : mib2c.create-dataset.conf,v 5.3 2002/12/05 00:29:45 hardaker Exp $ */#ifndef TRACEROUTECTLTABLE_H#define TRACEROUTECTLTABLE_Hconfig_require(header_complex);struct traceRouteCtlTable_data { char *traceRouteCtlOwnerIndex; /* string */ size_t traceRouteCtlOwnerIndexLen; char *traceRouteCtlTestName; /* string */ size_t traceRouteCtlTestNameLen; long traceRouteCtlTargetAddressType; char *traceRouteCtlTargetAddress; size_t traceRouteCtlTargetAddressLen; long traceRouteCtlByPassRouteTable; unsigned long traceRouteCtlDataSize; unsigned long traceRouteCtlTimeOut; unsigned long traceRouteCtlProbesPerHop; unsigned long traceRouteCtlPort; unsigned long traceRouteCtlMaxTtl; unsigned long traceRouteCtlDSField; long traceRouteCtlSourceAddressType; char *traceRouteCtlSourceAddress; size_t traceRouteCtlSourceAddressLen; long traceRouteCtlIfIndex; char *traceRouteCtlMiscOptions; size_t traceRouteCtlMiscOptionsLen; unsigned long traceRouteCtlMaxFailures; long traceRouteCtlDontFragment; unsigned long traceRouteCtlInitialTtl; unsigned long traceRouteCtlFrequency; long traceRouteCtlStorageType; long traceRouteCtlAdminStatus; char *traceRouteCtlDescr; size_t traceRouteCtlDescrLen; unsigned long traceRouteCtlMaxRows; char *traceRouteCtlTrapGeneration; size_t traceRouteCtlTrapGenerationLen; long traceRouteCtlCreateHopsEntries; oid *traceRouteCtlType; size_t traceRouteCtlTypeLen; long traceRouteCtlRowStatus; int storageType; u_long timer_id; unsigned long traceRouteProbeHistoryMaxIndex; struct traceRouteResultsTable_data *traceRouteResults; struct traceRouteProbeHistoryTable_data *traceRouteProbeHis; struct traceRouteHopsTable_data *traceRouteHops;};struct traceRouteResultsTable_data { /* struct pingResultsTable_data *next; */ char *traceRouteCtlOwnerIndex; /* string */ size_t traceRouteCtlOwnerIndexLen; char *traceRouteCtlTestName; /* string */ size_t traceRouteCtlTestNameLen; long traceRouteResultsOperStatus; unsigned long traceRouteResultsCurHopCount; unsigned long traceRouteResultsCurProbeCount; long traceRouteResultsIpTgtAddrType; char *traceRouteResultsIpTgtAddr; size_t traceRouteResultsIpTgtAddrLen; unsigned long traceRouteResultsTestAttempts; unsigned long traceRouteResultsTestSuccesses; char *traceRouteResultsLastGoodPath; size_t traceRouteResultsLastGoodPathLen; int storageType;};struct traceRouteProbeHistoryTable_data { struct traceRouteProbeHistoryTable_data *next; /* index */ char *traceRouteCtlOwnerIndex; /* string */ size_t traceRouteCtlOwnerIndexLen; char *traceRouteCtlTestName; /* string */ size_t traceRouteCtlTestNameLen; unsigned long traceRouteProbeHistoryIndex; unsigned long traceRouteProbeHistoryHopIndex; unsigned long traceRouteProbeHistoryProbeIndex; /* index */ long traceRouteProbeHistoryHAddrType; char *traceRouteProbeHistoryHAddr; size_t traceRouteProbeHistoryHAddrLen; unsigned long traceRouteProbeHistoryResponse; long traceRouteProbeHistoryStatus; long traceRouteProbeHistoryLastRC; char *traceRouteProbeHistoryTime; size_t traceRouteProbeHistoryTimeLen; int storageType;};struct traceRouteHopsTable_data { struct traceRouteHopsTable_data *next; char *traceRouteCtlOwnerIndex; /* string */ size_t traceRouteCtlOwnerIndexLen; char *traceRouteCtlTestName; /* string */ size_t traceRouteCtlTestNameLen; unsigned long traceRouteHopsHopIndex; long traceRouteHopsIpTgtAddressType; char *traceRouteHopsIpTgtAddress; size_t traceRouteHopsIpTgtAddressLen; unsigned long traceRouteHopsMinRtt; unsigned long traceRouteHopsMaxRtt; unsigned long traceRouteHopsAverageRtt; unsigned long traceRouteHopsRttSumOfSquares; unsigned long traceRouteHopsSentProbes; unsigned long traceRouteHopsProbeResponses; char *traceRouteHopsLastGoodProbe; size_t traceRouteHopsLastGoodProbeLen; int storageType;};/* * function declarations */void init_traceRouteCtlTable(void);FindVarMethod var_traceRouteCtlTable;void parse_traceRouteCtlTable(const char *, char *);SNMPCallback store_traceRouteCtlTable;void init_trResultsTable(struct traceRouteCtlTable_data *);WriteMethod write_traceRouteCtlTargetAddressType;WriteMethod write_traceRouteCtlTargetAddress;WriteMethod write_traceRouteCtlByPassRouteTable;WriteMethod write_traceRouteCtlDataSize;WriteMethod write_traceRouteCtlTimeOut;WriteMethod write_traceRouteCtlProbesPerHop;WriteMethod write_traceRouteCtlPort;WriteMethod write_traceRouteCtlMaxTtl;WriteMethod write_traceRouteCtlDSField;WriteMethod write_traceRouteCtlSourceAddressType;WriteMethod write_traceRouteCtlSourceAddress;WriteMethod write_traceRouteCtlIfIndex;WriteMethod write_traceRouteCtlMiscOptions;WriteMethod write_traceRouteCtlMaxFailures;WriteMethod write_traceRouteCtlDontFragment;WriteMethod write_traceRouteCtlInitialTtl;WriteMethod write_traceRouteCtlFrequency;WriteMethod write_traceRouteCtlStorageType;WriteMethod write_traceRouteCtlAdminStatus;WriteMethod write_traceRouteCtlDescr;WriteMethod write_traceRouteCtlMaxRows;WriteMethod write_traceRouteCtlTrapGeneration;WriteMethod write_traceRouteCtlCreateHopsEntries;WriteMethod write_traceRouteCtlType;WriteMethod write_traceRouteCtlRowStatus;#define TRACEROUTETRAPGENERATION_PATHCHANGE 0x80#define TRACEROUTETRAPGENERATION_TESTFAILED 0x40#define TRACEROUTETRAPGENERATION_TESTCOMPLETED 0x20#define TRACEROUTETRAPGENERATION_NULL 0x00/* * column number definitions for table traceRouteCtlTable */#define COLUMN_TRACEROUTECTLOWNERINDEX 1#define COLUMN_TRACEROUTECTLTESTNAME 2#define COLUMN_TRACEROUTECTLTARGETADDRESSTYPE 3#define COLUMN_TRACEROUTECTLTARGETADDRESS 4#define COLUMN_TRACEROUTECTLBYPASSROUTETABLE 5#define COLUMN_TRACEROUTECTLDATASIZE 6#define COLUMN_TRACEROUTECTLTIMEOUT 7#define COLUMN_TRACEROUTECTLPROBESPERHOP 8#define COLUMN_TRACEROUTECTLPORT 9#define COLUMN_TRACEROUTECTLMAXTTL 10#define COLUMN_TRACEROUTECTLDSFIELD 11#define COLUMN_TRACEROUTECTLSOURCEADDRESSTYPE 12#define COLUMN_TRACEROUTECTLSOURCEADDRESS 13#define COLUMN_TRACEROUTECTLIFINDEX 14#define COLUMN_TRACEROUTECTLMISCOPTIONS 15#define COLUMN_TRACEROUTECTLMAXFAILURES 16#define COLUMN_TRACEROUTECTLDONTFRAGMENT 17#define COLUMN_TRACEROUTECTLINITIALTTL 18#define COLUMN_TRACEROUTECTLFREQUENCY 19#define COLUMN_TRACEROUTECTLSTORAGETYPE 20#define COLUMN_TRACEROUTECTLADMINSTATUS 21#define COLUMN_TRACEROUTECTLDESCR 22#define COLUMN_TRACEROUTECTLMAXROWS 23#define COLUMN_TRACEROUTECTLTRAPGENERATION 24#define COLUMN_TRACEROUTECTLCREATEHOPSENTRIES 25#define COLUMN_TRACEROUTECTLTYPE 26#define COLUMN_TRACEROUTECTLROWSTATUS 27#endif /* TRACEROUTECTLTABLE_H *//* * Copyright (c) 1988, 1989, 1991, 1994, 1995, 1996, 1997, 1998, 1999, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */#ifndef lintstatic const char copyright[] = "@(#) Copyright (c) 1988, 1989, 1991, 1994, 1995, 1996, 1997, 1998, 1999, 2000\n\The Regents of the University of California. All rights reserved.\n";static const char rcsid[] = "@(#)$Id: traceRouteCtlTable.h,v 1.1 2004/08/24 15:15:03 dts12 Exp $ (LBL)";#endif/* * traceroute host - trace the route ip packets follow going to "host". * * Attempt to trace the route an ip packet would follow to some * internet host. We find out intermediate hops by launching probe * packets with a small ttl (time to live) then listening for an * icmp "time exceeded" reply from a gateway. We start our probes * with a ttl of one and increase by one until we get an icmp "port * unreachable" (which means we got to "host") or hit a max (which * defaults to 30 hops & can be changed with the -m flag). Three * probes (change with -q flag) are sent at each ttl setting and a * line is printed showing the ttl, address of the gateway and * round trip time of each probe. If the probe answers come from * different gateways, the address of each responding system will * be printed. If there is no response within a 5 sec. timeout * interval (changed with the -w flag), a "*" is printed for that * probe. * * Probe packets are UDP format. We don't want the destination * host to process them so the destination port is set to an * unlikely value (if some clod on the destination is using that * value, it can be changed with the -p flag). * * A sample use might be: * * [yak 71]% traceroute nis.nsf.net. * traceroute to nis.nsf.net (35.1.1.48), 30 hops max, 56 byte packet * 1 helios.ee.lbl.gov (128.3.112.1) 19 ms 19 ms 0 ms * 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms * 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms * 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 39 ms * 5 ccn-nerif22.Berkeley.EDU (128.32.168.22) 39 ms 39 ms 39 ms * 6 128.32.197.4 (128.32.197.4) 40 ms 59 ms 59 ms * 7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 59 ms * 8 129.140.70.13 (129.140.70.13) 99 ms 99 ms 80 ms * 9 129.140.71.6 (129.140.71.6) 139 ms 239 ms 319 ms * 10 129.140.81.7 (129.140.81.7) 220 ms 199 ms 199 ms
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -