NetWare Core Protocol
NetWare Core Protocol (NCP) je síťový protokol používaný pro komunikaci klientských stanic se servery v síťovém operačním systému Novell NetWare.
Novell NetWare primárně podporoval klientské stanice s operačním systémem MS-DOS, ale podpora byla později rozšířena i na jiné platformy jako Microsoft Windows, Mac OS, Linux, Windows NT a různé varianty Unixu.
NCP se používá pro přístup souborovým, tiskovým, adresářovým, časovým serverům, k serverům pro přenos zpráv, provádění vzdálených příkazů a k dalším síťovým službám. Díky snadné konfiguraci sítě a malým paměťovým nárokům protokolového zásobníku IPX/SPX se NCP do poloviny 90. let 20. století používalo výhradně s protokolem IPX. Později byl dostupná i implementace pro protokoly TCP/IP, která se postupně stala preferovanou.
Adresářová služba Novell eDirectory používá NCP pro synchronizaci změn dat na serverech ve stromě adresářových služeb.
Technické informace
Původní implementace dostupná pouze pro komunikační protokol IPX s protokolem SAP pro vyhledávání a ohlašování služeb se v současnosti považuje za zastaralou. Novější implementace s protokoly TCP/IP používá TCP/UDP na portu 524 a pro ohlašování služeb používá SLP.
Při přenosu NCP pomocí protokolů IPX/SPX se používá protokol IPX (bez SPX) s hodnotou 17 v poli Typ paketu. Na straně klienta se používá číslo soketu 0x4003, na straně serveru číslo soketu 0x0451.
Protokolová datová jednotka NCP má následující strukturu:
Oktetů | Pole |
---|---|
2 | NCP typ |
1 | Pořadové číslo |
1 | Číslo spojení (spodní oktet) |
1 | Číslo úlohy |
1 | Číslo spojení (horní oktet) |
1 | Návratový kód (pouze v odpovědi) |
1 | Status spojení (pouze v odpovědi) |
proměnný | Datové pole |
Pole NCP Typ určuje typ operace:
Hodnota | Význam |
---|---|
0x1111 | Vytvořit služební spojení |
0x2222 | Žádost o službu |
0x3333 | Odpověď na žádost |
0x5555 | Zrušit služební spojení |
0x7777 | Burst Mode Transfer (dotaz i odppověď) |
0x9999 | Požadavek je zpracováván (Server Busy) |
Jednotlivé požadavky jsou identifikovány pořadovým číslem (modulo 256). Číslo spojení identifikuje spojení klientské stanice se serverem. Servery Novell Netware do verze 2.x podporovaly nejvýše 255 spojení a číslo spojení zabíralo 1 oktet. Ve vyšších verzích bylo rozšířeno na 2 oktety. Číslo úlohy má v požadavcích hodnotu 3 a v odpovědích 1. Datové pole začíná oktetem obsahujícím číslo NCP funkce, které rozlišuje jednotlivé služby.
Číslo | Název operace |
---|---|
0 | Login User Object |
1 | Change User Password |
2 | Map User to Station Set |
3 | Map Object to Number |
4 | Map Number to Object |
5 | Get Station's Logged Information |
8 | Map Number to Group Name |
9 | Get Member Set M of Group G |
10 | Enter Login Area |
12 | Verify Network Serial Number |
13 | Log Network Message |
14 | Get Disk Utilization |
15 | Scan File Information |
16 | Set File Information |
17 | Get File Server Information |
18 | Get Network Serial Number |
19 | Get Internet Address |
20 | Login Object |
21 | Get Object Connection List |
22 | Get Station's Logged Information |
23 | Get Encryption Key |
24 | Login Object Encrypted |
31 | Get Connection List from Object |
50 | Create Bindery Object |
51 | Delete Bindery Object |
52 | Rename Object |
53 | Get Bindery Object Id |
54 | Get Bindery Object Name |
55 | Scan Bindery Object |
56 | Change Bindery Object Security |
57 | Create Property |
58 | Delete Property |
59 | Change Bindery Property Security |
60 | Scan Property |
61 | Read Property Value |
62 | Write Property Value |
63 | Verify Bindery Object Password |
64 | Change Bindery Object Password |
65 | Add Bindery Object to Set |
66 | Delete Bindery Object from Set |
67 | Is Bindery Object In Set? |
68 | Close Bindery |
69 | Open Bindery |
70 | Get Bindery Access Level |
71 | Sacn Bindery Object Trustee Paths |
72 | Get Bindery Object Access Level |
73 | Is Calling Station a Manager? |
74 | Verify Bindery Object Password Encrypted |
75 | Change Bindery Object Password Encrypted |
76 | List Relations of an Object |
100 | Create Queue |
101 | Destroy Queue |
102 | Read Queue Current Status |
103 | Set Queue Current Status |
104 | Create Queue Job and File |
105 | Close File and Start Queue Job |
106 | Remove Job from Queue |
107 | Get Queue Job List |
108 | Read Queue Job Entry |
109 | Change Queue Job Entry |
110 | Change Queue Job Position |
111 | Attach Queue Server to Queue |
112 | Detach Queue Server from Queue |
113 | Service Queue Job |
114 | Finish Servicing Queue Job |
115 | Abort Servicing Queue Job |
116 | Change to Client's Rights |
117 | Restore Queue Server Rights |
118 | Read Queue Server Current Status |
119 | Set Queue Server Current Status |
120 | Get Queue Job Size |
150 | Get Current Account Status |
151 | Submit Account Charge |
152 | Submit Account Hold |
153 | Submit Account Note |
200 | Check Console Privileges |
201 | Get File Server Description Strings |
202 | Set File Server Date and Time |
203 | Disable File Server Login |
204 | Enable File Server Login |
205 | Get File Server Login Status |
206 | Purge All Erased Files |
207 | Disable Transaction Tracking |
208 | Enable Transaction Tracking |
209 | Set Console Broadcast |
210 | Clear Connection Number |
211 | Down File Server |
212 | Get File System Statistics |
213 | TTS Get Statistics |
214 | Get Disk Cache Statistics |
215 | Get Drive Mapping Table |
216 | Get Physical Disk Statistics |
217 | Get Disk Channel Statistics |
218 | Get Connection's Task Information |
219 | Get Connection's Open Files |
220 | Get Connection's Using a File |
221 | Get Physical Record Locks by Connection and File |
222 | Get Physical Record Locks by File |
223 | Get Logical Records by Connection |
224 | Get Logical Record Information |
225 | Get Connection's Semaphores |
226 | Get Semaphore Information |
227 | Get LAN Driver's Configuration Information |
229 | Get Connection's Usage Statistics |
230 | Get Object's Remaining Disk Space |
231 | Get File Server LAN I/O Statistics |
232 | Get File Server Misc Information |
233 | Get Volume Information |
Délka a obsah zbytku datového pole závisí na čísle NCP funkce.
Implementace klientů
- Novell Client for Windows Vista from Novell.
- Novell Client for Windows 2000/XP/2003 from Novell.
- Novell Client for Windows 95/98 from Novell.
- Novell Client for Linux from Novell.
- NetWare Clients for DOS Archivováno 20. 7. 2008 na Wayback Machine from Novell – no longer supported.
- NetWare Client for Mac OS X from Prosoft Engineering.
- The Linux ncpfs page an open-source NCP client implementation for Linux.
- ncpfs, an open-source NCP client implementation for Linux.
- Client Service for NetWare from Microsoft.
Odkazy
Reference
V tomto článku byl použit překlad textu z článku NetWare Core Protocol na anglické Wikipedii.
Související články
Externí odkazy
- NCP specification without description of underlying Netware RPC framework
- Wireshark (an open source protocol analyzer) Documentation - Fields of the NCP packet
- Making Mac OS X play nicely with Novell