/*
 * ip/ports.def: tcp/udp port definitions
 *
 * Eliot Dresselhaus
 * August, 2005
 *
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sublicense, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 *
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 *
 *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 *  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
 *  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
 *  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 *  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

/*
PORT NUMBERS

(last updated 18 October 2005) 

The port numbers are divided into three ranges: the Well Known Ports,
the Registered Ports, and the Dynamic and/or Private Ports.

The Well Known Ports are those from 0 through 1023.

The Registered Ports are those from 1024 through 49151

The Dynamic and/or Private Ports are those from 49152 through 65535


************************************************************************
* PLEASE NOTE THE FOLLOWING:                                           *
*                                                                      *
* 1. UNASSIGNED PORT NUMBERS SHOULD NOT BE USED.  THE IANA WILL ASSIGN *
* THE NUMBER FOR THE PORT AFTER YOUR APPLICATION HAS BEEN APPROVED.    *
*                                                                      *
* 2. ASSIGNMENT OF A PORT NUMBER DOES NOT IN ANY WAY IMPLY AN          *
* ENDORSEMENT OF AN APPLICATION OR PRODUCT, AND THE FACT THAT NETWORK  *
* TRAFFIC IS FLOWING TO OR FROM A REGISTERED PORT DOES NOT MEAN THAT   *
* IT IS "GOOD" TRAFFIC. FIREWALL AND SYSTEM ADMINISTRATORS SHOULD      *
* CHOOSE HOW TO CONFIGURE THEIR SYSTEMS BASED ON THEIR KNOWLEDGE OF    *
* THE TRAFFIC IN QUESTION, NOT WHETHER THERE IS A PORT NUMBER          *
* REGISTERED OR NOT.                                                   *
************************************************************************


WELL KNOWN PORT NUMBERS

The Well Known Ports are assigned by the IANA and on most systems can
only be used by system (or root) processes or by programs executed by
privileged users.

Ports are used in the TCP [RFC793] to name the ends of logical
connections which carry long term conversations.  For the purpose of
providing services to unknown callers, a service contact port is
defined.  This list specifies the port used by the server process as
its contact port.  The contact port is sometimes called the
"well-known port".

To the extent possible, these same port assignments are used with the
UDP [RFC768].

The range for assigned ports managed by the IANA is 0-1023.
*/
ip_port (TCPMUX, 1)
ip_port (COMPRESS_NET_MANAGEMENT, 2)
ip_port (COMPRESS_NET, 3)
ip_port (RJE, 5)
ip_port (ECHO, 7)
ip_port (DISCARD, 9)
ip_port (SYSTAT, 11)
ip_port (DAYTIME, 13)
ip_port (QOTD, 17)
ip_port (MSP, 18)
ip_port (CHARGEN, 19)
ip_port (FTP_DATA, 20)
ip_port (FTP, 21)
ip_port (SSH, 22)
ip_port (TELNET, 23)
ip_port (SMTP, 25)
ip_port (NSW_FE, 27)
ip_port (MSG_ICP, 29)
ip_port (MSG_AUTH, 31)
ip_port (DSP, 33)
ip_port (TIME, 37)
ip_port (RAP, 38)
ip_port (RLP, 39)
ip_port (GRAPHICS, 41)
ip_port (NAME, 42)
ip_port (NAMESERVER, 42)
ip_port (NICNAME, 43)
ip_port (MPM_FLAGS, 44)
ip_port (MPM, 45)
ip_port (MPM_SND, 46)
ip_port (NI_FTP, 47)
ip_port (AUDITD, 48)
ip_port (TACACS, 49)
ip_port (RE_MAIL_CK, 50)
ip_port (LA_MAINT, 51)
ip_port (XNS_TIME, 52)
ip_port (DNS, 53)
ip_port (XNS_CH, 54)
ip_port (ISI_GL, 55)
ip_port (XNS_AUTH, 56)
ip_port (XNS_MAIL, 58)
ip_port (NI_MAIL, 61)
ip_port (ACAS, 62)
ip_port (WHOIS_PLUS_PLUS, 63)
ip_port (COVIA, 64)
ip_port (TACACS_DS, 65)
ip_port (ORACLE_SQL_NET, 66)
ip_port (BOOTPS, 67)
ip_port (BOOTPC, 68)
ip_port (TFTP, 69)
ip_port (GOPHER, 70)
ip_port (NETRJS_1, 71)
ip_port (NETRJS_2, 72)
ip_port (NETRJS_3, 73)
ip_port (NETRJS_4, 74)
ip_port (DEOS, 76)
ip_port (VETTCP, 78)
ip_port (FINGER, 79)
ip_port (WWW, 80)
ip_port (HOSTS2_NS, 81)
ip_port (XFER, 82)
ip_port (MIT_ML_DEV, 83)
ip_port (CTF, 84)
ip_port (MIT_ML_DEV1, 85)
ip_port (MFCOBOL, 86)
ip_port (KERBEROS, 88)
ip_port (SU_MIT_TG, 89)
ip_port (DNSIX, 90)
ip_port (MIT_DOV, 91)
ip_port (NPP, 92)
ip_port (DCP, 93)
ip_port (OBJCALL, 94)
ip_port (SUPDUP, 95)
ip_port (DIXIE, 96)
ip_port (SWIFT_RVF, 97)
ip_port (TACNEWS, 98)
ip_port (METAGRAM, 99)
ip_port (NEWACCT, 100)
ip_port (HOSTNAME, 101)
ip_port (ISO_TSAP, 102)
ip_port (GPPITNP, 103)
ip_port (ACR_NEMA, 104)
ip_port (CSO, 105)
ip_port (CSNET_NS, 105)
ip_port (3COM_TSMUX, 106)
ip_port (RTELNET, 107)
ip_port (SNAGAS, 108)
ip_port (POP2, 109)
ip_port (POP3, 110)
ip_port (SUNRPC, 111)
ip_port (MCIDAS, 112)
ip_port (IDENT, 113)
ip_port (SFTP, 115)
ip_port (ANSANOTIFY, 116)
ip_port (UUCP_PATH, 117)
ip_port (SQLSERV, 118)
ip_port (NNTP, 119)
ip_port (CFDPTKT, 120)
ip_port (ERPC, 121)
ip_port (SMAKYNET, 122)
ip_port (NTP, 123)
ip_port (ANSATRADER, 124)
ip_port (LOCUS_MAP, 125)
ip_port (NXEDIT, 126)
ip_port (LOCUS_CON, 127)
ip_port (GSS_XLICEN, 128)
ip_port (PWDGEN, 129)
ip_port (CISCO_FNA, 130)
ip_port (CISCO_TNA, 131)
ip_port (CISCO_SYS, 132)
ip_port (STATSRV, 133)
ip_port (INGRES_NET, 134)
ip_port (EPMAP, 135)
ip_port (PROFILE, 136)
ip_port (NETBIOS_NS, 137)
ip_port (NETBIOS_DGM, 138)
ip_port (NETBIOS_SSN, 139)
ip_port (EMFIS_DATA, 140)
ip_port (EMFIS_CNTL, 141)
ip_port (BL_IDM, 142)
ip_port (IMAP, 143)
ip_port (UMA, 144)
ip_port (UAAC, 145)
ip_port (ISO_TP0, 146)
ip_port (ISO_IP, 147)
ip_port (JARGON, 148)
ip_port (AED_512, 149)
ip_port (SQL_NET, 150)
ip_port (HEMS, 151)
ip_port (BFTP, 152)
ip_port (SGMP, 153)
ip_port (NETSC_PROD, 154)
ip_port (NETSC_DEV, 155)
ip_port (SQLSRV, 156)
ip_port (KNET_CMP, 157)
ip_port (PCMAIL_SRV, 158)
ip_port (NSS_ROUTING, 159)
ip_port (SGMP_TRAPS, 160)
ip_port (SNMP, 161)
ip_port (SNMPTRAP, 162)
ip_port (CMIP_MAN, 163)
ip_port (CMIP_AGENT, 164)
ip_port (XNS_COURIER, 165)
ip_port (S_NET, 166)
ip_port (NAMP, 167)
ip_port (RSVD, 168)
ip_port (SEND, 169)
ip_port (PRINT_SRV, 170)
ip_port (MULTIPLEX, 171)
ip_port (CL1, 172)
ip_port (XYPLEX_MUX, 173)
ip_port (MAILQ, 174)
ip_port (VMNET, 175)
ip_port (GENRAD_MUX, 176)
ip_port (XDMCP, 177)
ip_port (NEXTSTEP, 178)
ip_port (BGP, 179)
ip_port (RIS, 180)
ip_port (UNIFY, 181)
ip_port (AUDIT, 182)
ip_port (OCBINDER, 183)
ip_port (OCSERVER, 184)
ip_port (REMOTE_KIS, 185)
ip_port (KIS, 186)
ip_port (ACI, 187)
ip_port (MUMPS, 188)
ip_port (QFT, 189)
ip_port (GACP, 190)
ip_port (PROSPERO, 191)
ip_port (OSU_NMS, 192)
ip_port (SRMP, 193)
ip_port (IRC, 194)
ip_port (DN6_NLM_AUD, 195)
ip_port (DN6_SMM_RED, 196)
ip_port (DLS, 197)
ip_port (DLS_MON, 198)
ip_port (SMUX, 199)
ip_port (SRC, 200)
ip_port (AT_RTMP, 201)
ip_port (AT_NBP, 202)
ip_port (AT_3, 203)
ip_port (AT_ECHO, 204)
ip_port (AT_5, 205)
ip_port (AT_ZIS, 206)
ip_port (AT_7, 207)
ip_port (AT_8, 208)
ip_port (QMTP, 209)
ip_port (Z39_50, 210)
ip_port (TI914CG, 211)
ip_port (ANET, 212)
ip_port (IPX, 213)
ip_port (VMPWSCS, 214)
ip_port (SOFTPC, 215)
ip_port (CAILIC, 216)
ip_port (DBASE, 217)
ip_port (MPP, 218)
ip_port (UARPS, 219)
ip_port (IMAP3, 220)
ip_port (FLN_SPX, 221)
ip_port (RSH_SPX, 222)
ip_port (CDC, 223)
ip_port (MASQDIALER, 224)
ip_port (DIRECT, 242)
ip_port (SUR_MEAS, 243)
ip_port (INBUSINESS, 244)
ip_port (LINK, 245)
ip_port (DSP3270, 246)
ip_port (SUBNTBCST_TFTP, 247)
ip_port (BHFHS, 248)
ip_port (RAP1, 256)
ip_port (SET, 257)
ip_port (YAK_CHAT, 258)
ip_port (ESRO_GEN, 259)
ip_port (OPENPORT, 260)
ip_port (NSIIOPS, 261)
ip_port (ARCISDMS, 262)
ip_port (HDAP, 263)
ip_port (BGMP, 264)
ip_port (X_BONE_CTL, 265)
ip_port (SST, 266)
ip_port (TD_SERVICE, 267)
ip_port (TD_REPLICA, 268)
ip_port (HTTP_MGMT, 280)
ip_port (PERSONAL_LINK, 281)
ip_port (CABLEPORT_AX, 282)
ip_port (RESCAP, 283)
ip_port (CORERJD, 284)
ip_port (FXP, 286)
ip_port (K_BLOCK, 287)
ip_port (NOVASTORBAKCUP, 308)
ip_port (ENTRUSTTIME, 309)
ip_port (BHMDS, 310)
ip_port (ASIP_WEBADMIN, 311)
ip_port (VSLMP, 312)
ip_port (MAGENTA_LOGIC, 313)
ip_port (OPALIS_ROBOT, 314)
ip_port (DPSI, 315)
ip_port (DECAUTH, 316)
ip_port (ZANNET, 317)
ip_port (PKIX_TIMESTAMP, 318)
ip_port (PTP_EVENT, 319)
ip_port (PTP_GENERAL, 320)
ip_port (PIP, 321)
ip_port (RTSPS, 322)
ip_port (TEXAR, 333)
ip_port (PDAP, 344)
ip_port (PAWSERV, 345)
ip_port (ZSERV, 346)
ip_port (FATSERV, 347)
ip_port (CSI_SGWP, 348)
ip_port (MFTP, 349)
ip_port (MATIP_TYPE_A, 350)
ip_port (MATIP_TYPE_B, 351)
ip_port (BHOETTY, 351)
ip_port (DTAG_STE_SB, 352)
ip_port (BHOEDAP4, 352)
ip_port (NDSAUTH, 353)
ip_port (BH611, 354)
ip_port (DATEX_ASN, 355)
ip_port (CLOANTO_NET_1, 356)
ip_port (BHEVENT, 357)
ip_port (SHRINKWRAP, 358)
ip_port (NSRMP, 359)
ip_port (SCOI2ODIALOG, 360)
ip_port (SEMANTIX, 361)
ip_port (SRSSEND, 362)
ip_port (RSVP_TUNNEL, 363)
ip_port (AURORA_CMGR, 364)
ip_port (DTK, 365)
ip_port (ODMR, 366)
ip_port (MORTGAGEWARE, 367)
ip_port (QBIKGDP, 368)
ip_port (RPC2PORTMAP, 369)
ip_port (CODAAUTH2, 370)
ip_port (CLEARCASE, 371)
ip_port (ULISTPROC, 372)
ip_port (LEGENT_1, 373)
ip_port (LEGENT_2, 374)
ip_port (HASSLE, 375)
ip_port (NIP, 376)
ip_port (TNETOS, 377)
ip_port (DSETOS, 378)
ip_port (IS99C, 379)
ip_port (IS99S, 380)
ip_port (HP_COLLECTOR, 381)
ip_port (HP_MANAGED_NODE, 382)
ip_port (HP_ALARM_MGR, 383)
ip_port (ARNS, 384)
ip_port (IBM_APP, 385)
ip_port (ASA, 386)
ip_port (AURP, 387)
ip_port (UNIDATA_LDM, 388)
ip_port (LDAP, 389)
ip_port (UIS, 390)
ip_port (SYNOTICS_RELAY, 391)
ip_port (SYNOTICS_BROKER, 392)
ip_port (META5, 393)
ip_port (EMBL_NDT, 394)
ip_port (NETCP, 395)
ip_port (NETWARE_IP, 396)
ip_port (MPTN, 397)
ip_port (KRYPTOLAN, 398)
ip_port (ISO_TSAP_C2, 399)
ip_port (WORK_SOL, 400)
ip_port (UPS, 401)
ip_port (GENIE, 402)
ip_port (DECAP, 403)
ip_port (NCED, 404)
ip_port (NCLD, 405)
ip_port (IMSP, 406)
ip_port (TIMBUKTU, 407)
ip_port (PRM_SM, 408)
ip_port (PRM_NM, 409)
ip_port (DECLADEBUG, 410)
ip_port (RMT, 411)
ip_port (SYNOPTICS_TRAP, 412)
ip_port (SMSP, 413)
ip_port (INFOSEEK, 414)
ip_port (BNET, 415)
ip_port (SILVERPLATTER, 416)
ip_port (ONMUX, 417)
ip_port (HYPER_G, 418)
ip_port (ARIEL1, 419)
ip_port (SMPTE, 420)
ip_port (ARIEL2, 421)
ip_port (ARIEL3, 422)
ip_port (OPC_JOB_START, 423)
ip_port (OPC_JOB_TRACK, 424)
ip_port (ICAD_EL, 425)
ip_port (SMARTSDP, 426)
ip_port (SVRLOC, 427)
ip_port (OCS_CMU, 428)
ip_port (OCS_AMU, 429)
ip_port (UTMPSD, 430)
ip_port (UTMPCD, 431)
ip_port (IASD, 432)
ip_port (NNSP, 433)
ip_port (MOBILEIP_AGENT, 434)
ip_port (MOBILIP_MN, 435)
ip_port (DNA_CML, 436)
ip_port (COMSCM, 437)
ip_port (DSFGW, 438)
ip_port (DASP, 439)
ip_port (SGCP, 440)
ip_port (DECVMS_SYSMGT, 441)
ip_port (CVC_HOSTD, 442)
ip_port (HTTPS, 443)
ip_port (SNPP, 444)
ip_port (MICROSOFT_DS, 445)
ip_port (DDM_RDB, 446)
ip_port (DDM_DFM, 447)
ip_port (DDM_SSL, 448)
ip_port (AS_SERVERMAP, 449)
ip_port (TSERVER, 450)
ip_port (SFS_SMP_NET, 451)
ip_port (SFS_CONFIG, 452)
ip_port (CREATIVESERVER, 453)
ip_port (CONTENTSERVER, 454)
ip_port (CREATIVEPARTNR, 455)
ip_port (MACON_TCP, 456)
ip_port (SCOHELP, 457)
ip_port (APPLEQTC, 458)
ip_port (AMPR_RCMD, 459)
ip_port (SKRONK, 460)
ip_port (DATASURFSRV, 461)
ip_port (DATASURFSRVSEC, 462)
ip_port (ALPES, 463)
ip_port (KPASSWD, 464)
ip_port (URD, 465)
ip_port (DIGITAL_VRC, 466)
ip_port (MYLEX_MAPD, 467)
ip_port (PHOTURIS, 468)
ip_port (RCP, 469)
ip_port (SCX_PROXY, 470)
ip_port (MONDEX, 471)
ip_port (LJK_LOGIN, 472)
ip_port (HYBRID_POP, 473)
ip_port (TN_TL_W1, 474)
ip_port (TCPNETHASPSRV, 475)
ip_port (TN_TL_FD1, 476)
ip_port (SS7NS, 477)
ip_port (SPSC, 478)
ip_port (IAFSERVER, 479)
ip_port (IAFDBASE, 480)
ip_port (PH, 481)
ip_port (BGS_NSI, 482)
ip_port (ULPNET, 483)
ip_port (INTEGRA_SME, 484)
ip_port (POWERBURST, 485)
ip_port (AVIAN, 486)
ip_port (SAFT, 487)
ip_port (GSS_HTTP, 488)
ip_port (NEST_PROTOCOL, 489)
ip_port (MICOM_PFS, 490)
ip_port (GO_LOGIN, 491)
ip_port (TICF_1, 492)
ip_port (TICF_2, 493)
ip_port (POV_RAY, 494)
ip_port (INTECOURIER, 495)
ip_port (PIM_RP_DISC, 496)
ip_port (DANTZ, 497)
ip_port (SIAM, 498)
ip_port (ISO_ILL, 499)
ip_port (ISAKMP, 500)
ip_port (STMF, 501)
ip_port (ASA_APPL_PROTO, 502)
ip_port (INTRINSA, 503)
ip_port (CITADEL, 504)
ip_port (MAILBOX_LM, 505)
ip_port (OHIMSRV, 506)
ip_port (CRS, 507)
ip_port (XVTTP, 508)
ip_port (SNARE, 509)
ip_port (FCP, 510)
ip_port (PASSGO, 511)
ip_port (EXEC, 512)
ip_port (LOGIN, 513)
ip_port (SHELL, 514)
ip_port (PRINTER, 515)
ip_port (VIDEOTEX, 516)
ip_port (TALK, 517)
ip_port (NTALK, 518)
ip_port (UTIME, 519)
ip_port (EFS, 520)
ip_port (RIPNG, 521)
ip_port (ULP, 522)
ip_port (IBM_DB2, 523)
ip_port (NCP, 524)
ip_port (TIMED, 525)
ip_port (TEMPO, 526)
ip_port (STX, 527)
ip_port (CUSTIX, 528)
ip_port (IRC_SERV, 529)
ip_port (COURIER, 530)
ip_port (CONFERENCE, 531)
ip_port (NETNEWS, 532)
ip_port (NETWALL, 533)
ip_port (MM_ADMIN, 534)
ip_port (IIOP, 535)
ip_port (OPALIS_RDV, 536)
ip_port (NMSP, 537)
ip_port (GDOMAP, 538)
ip_port (APERTUS_LDP, 539)
ip_port (UUCP, 540)
ip_port (UUCP_RLOGIN, 541)
ip_port (COMMERCE, 542)
ip_port (KLOGIN, 543)
ip_port (KSHELL, 544)
ip_port (APPLEQTCSRVR, 545)
ip_port (DHCPV6_CLIENT, 546)
ip_port (DHCPV6_SERVER, 547)
ip_port (AFPOVERTCP, 548)
ip_port (IDFP, 549)
ip_port (NEW_RWHO, 550)
ip_port (CYBERCASH, 551)
ip_port (DEVSHR_NTS, 552)
ip_port (PIRP, 553)
ip_port (RTSP, 554)
ip_port (DSF, 555)
ip_port (REMOTEFS, 556)
ip_port (OPENVMS_SYSIPC, 557)
ip_port (SDNSKMP, 558)
ip_port (TEEDTAP, 559)
ip_port (RMONITOR, 560)
ip_port (MONITOR, 561)
ip_port (CHSHELL, 562)
ip_port (NNTPS, 563)
ip_port (9PFS, 564)
ip_port (WHOAMI, 565)
ip_port (STREETTALK, 566)
ip_port (BANYAN_RPC, 567)
ip_port (MS_SHUTTLE, 568)
ip_port (MS_ROME, 569)
ip_port (METER, 570)
ip_port (METER1, 571)
ip_port (SONAR, 572)
ip_port (BANYAN_VIP, 573)
ip_port (FTP_AGENT, 574)
ip_port (VEMMI, 575)
ip_port (IPCD, 576)
ip_port (VNAS, 577)
ip_port (IPDD, 578)
ip_port (DECBSRV, 579)
ip_port (SNTP_HEARTBEAT, 580)
ip_port (BDP, 581)
ip_port (SCC_SECURITY, 582)
ip_port (PHILIPS_VC, 583)
ip_port (KEYSERVER, 584)
ip_port (IMAP4_SSL, 585)
ip_port (PASSWORD_CHG, 586)
ip_port (SUBMISSION, 587)
ip_port (CAL, 588)
ip_port (EYELINK, 589)
ip_port (TNS_CML, 590)
ip_port (HTTP_ALT, 591)
ip_port (EUDORA_SET, 592)
ip_port (HTTP_RPC_EPMAP, 593)
ip_port (TPIP, 594)
ip_port (CAB_PROTOCOL, 595)
ip_port (SMSD, 596)
ip_port (PTCNAMESERVICE, 597)
ip_port (SCO_WEBSRVRMG3, 598)
ip_port (ACP, 599)
ip_port (IPCSERVER, 600)
ip_port (SYSLOG_CONN, 601)
ip_port (XMLRPC_BEEP, 602)
ip_port (IDXP, 603)
ip_port (TUNNEL, 604)
ip_port (SOAP_BEEP, 605)
ip_port (URM, 606)
ip_port (NQS, 607)
ip_port (SIFT_UFT, 608)
ip_port (NPMP_TRAP, 609)
ip_port (NPMP_LOCAL, 610)
ip_port (NPMP_GUI, 611)
ip_port (HMMP_IND, 612)
ip_port (HMMP_OP, 613)
ip_port (SSHELL, 614)
ip_port (SCO_INETMGR, 615)
ip_port (SCO_SYSMGR, 616)
ip_port (SCO_DTMGR, 617)
ip_port (DEI_ICDA, 618)
ip_port (COMPAQ_EVM, 619)
ip_port (SCO_WEBSRVRMGR, 620)
ip_port (ESCP_IP, 621)
ip_port (COLLABORATOR, 622)
ip_port (ASF_RMCP, 623)
ip_port (CRYPTOADMIN, 624)
ip_port (DEC_DLM, 625)
ip_port (ASIA, 626)
ip_port (PASSGO_TIVOLI, 627)
ip_port (QMQP, 628)
ip_port (3COM_AMP3, 629)
ip_port (RDA, 630)
ip_port (IPP, 631)
ip_port (BMPP, 632)
ip_port (SERVSTAT, 633)
ip_port (GINAD, 634)
ip_port (RLZDBASE, 635)
ip_port (LDAPS, 636)
ip_port (LANSERVER, 637)
ip_port (MCNS_SEC, 638)
ip_port (MSDP, 639)
ip_port (ENTRUST_SPS, 640)
ip_port (REPCMD, 641)
ip_port (ESRO_EMSDP, 642)
ip_port (SANITY, 643)
ip_port (DWR, 644)
ip_port (PSSC, 645)
ip_port (LDP, 646)
ip_port (DHCP_FAILOVER, 647)
ip_port (RRP, 648)
ip_port (CADVIEW_3D, 649)
ip_port (OBEX, 650)
ip_port (IEEE_MMS, 651)
ip_port (HELLO_PORT, 652)
ip_port (REPSCMD, 653)
ip_port (AODV, 654)
ip_port (TINC, 655)
ip_port (SPMP, 656)
ip_port (RMC, 657)
ip_port (TENFOLD, 658)
ip_port (MAC_SRVR_ADMIN, 660)
ip_port (HAP, 661)
ip_port (PFTP, 662)
ip_port (PURENOISE, 663)
ip_port (ASF_SECURE_RMCP, 664)
ip_port (SUN_DR, 665)
ip_port (MDQS, 666)
ip_port (DOOM, 666)
ip_port (DISCLOSE, 667)
ip_port (MECOMM, 668)
ip_port (MEREGISTER, 669)
ip_port (VACDSM_SWS, 670)
ip_port (VACDSM_APP, 671)
ip_port (VPPS_QUA, 672)
ip_port (CIMPLEX, 673)
ip_port (ACAP, 674)
ip_port (DCTP, 675)
ip_port (VPPS_VIA, 676)
ip_port (VPP, 677)
ip_port (GGF_NCP, 678)
ip_port (MRM, 679)
ip_port (ENTRUST_AAAS, 680)
ip_port (ENTRUST_AAMS, 681)
ip_port (XFR, 682)
ip_port (CORBA_IIOP, 683)
ip_port (CORBA_IIOP_SSL, 684)
ip_port (MDC_PORTMAPPER, 685)
ip_port (HCP_WISMAR, 686)
ip_port (ASIPREGISTRY, 687)
ip_port (REALM_RUSD, 688)
ip_port (NMAP, 689)
ip_port (VATP, 690)
ip_port (MSEXCH_ROUTING, 691)
ip_port (HYPERWAVE_ISP, 692)
ip_port (CONNENDP, 693)
ip_port (HA_CLUSTER, 694)
ip_port (IEEE_MMS_SSL, 695)
ip_port (RUSHD, 696)
ip_port (UUIDGEN, 697)
ip_port (OLSR, 698)
ip_port (ACCESSNETWORK, 699)
ip_port (EPP, 700)
ip_port (LMP, 701)
ip_port (IRIS_BEEP, 702)
ip_port (ELCSD, 704)
ip_port (AGENTX, 705)
ip_port (SILC, 706)
ip_port (BORLAND_DSJ, 707)
ip_port (ENTRUST_KMSH, 709)
ip_port (ENTRUST_ASH, 710)
ip_port (CISCO_TDP, 711)
ip_port (TBRPF, 712)
ip_port (NETVIEWDM1, 729)
ip_port (NETVIEWDM2, 730)
ip_port (NETVIEWDM3, 731)
ip_port (NETGW, 741)
ip_port (NETRCS, 742)
ip_port (FLEXLM, 744)
ip_port (FUJITSU_DEV, 747)
ip_port (RIS_CM, 748)
ip_port (KERBEROS_ADM, 749)
ip_port (RFILE, 750)
ip_port (PUMP, 751)
ip_port (QRH, 752)
ip_port (RRH, 753)
ip_port (TELL, 754)
ip_port (NLOGIN, 758)
ip_port (CON, 759)
ip_port (NS, 760)
ip_port (RXE, 761)
ip_port (QUOTAD, 762)
ip_port (CYCLESERV, 763)
ip_port (OMSERV, 764)
ip_port (WEBSTER, 765)
ip_port (PHONEBOOK, 767)
ip_port (VID, 769)
ip_port (CADLOCK, 770)
ip_port (RTIP, 771)
ip_port (CYCLESERV2, 772)
ip_port (SUBMIT, 773)
ip_port (RPASSWD, 774)
ip_port (ENTOMB, 775)
ip_port (WPAGES, 776)
ip_port (MULTILING_HTTP, 777)
ip_port (WPGS, 780)
ip_port (MDBS_DAEMON, 800)
ip_port (DEVICE, 801)
ip_port (FCP_UDP, 810)
ip_port (ITM_MCELL_S, 828)
ip_port (PKIX_3_CA_RA, 829)
ip_port (DHCP_FAILOVER2, 847)
ip_port (GDOI, 848)
ip_port (ISCSI, 860)
ip_port (RSYNC, 873)
ip_port (ICLCNET_LOCATE, 886)
ip_port (ICLCNET_SVINFO, 887)
ip_port (ACCESSBUILDER, 888)
ip_port (CDDBP, 888)
ip_port (OMGINITIALREFS, 900)
ip_port (SMPNAMERES, 901)
ip_port (IDEAFARM_CHAT, 902)
ip_port (IDEAFARM_CATCH, 903)
ip_port (XACT_BACKUP, 911)
ip_port (APEX_MESH, 912)
ip_port (APEX_EDGE, 913)
ip_port (FTPS_DATA, 989)
ip_port (FTPS, 990)
ip_port (NAS, 991)
ip_port (TELNETS, 992)
ip_port (IMAPS, 993)
ip_port (IRCS, 994)
ip_port (POP3S, 995)
ip_port (VSINET, 996)
ip_port (MAITRD, 997)
ip_port (BUSBOY, 998)
ip_port (GARCON, 999)
ip_port (PUPROUTER, 999)
ip_port (CADLOCK2, 1000)
ip_port (SURF, 1010)

