04d - IFS

NetServer per tutti – parte 1

IBM i NetServer è un servizio che consente ai client Windows di accedere alle cartelle e alle code di stampa condivise di IBM i.

Con questo articolo inizia una raccolta di informazioni, concetti, how-to e suggerimenti per configurare, gestire ed utilizzare IBM i NetServer.

Introduzione a NetServer

IBM i Support for Windows Network Neighborhood (ovvero IBM i NetServer) è un servizio che consente ai client Windows di accedere alle cartelle e alle code di stampa condivise di IBM i. IBM i NetServer consente ai PC con sistema operativo Windows di accedere a IFS e alle stampanti che sono gestiti dalla piattaforma IBM i.
I PC client presenti nella rete usano le funzioni di condivisione file e stampanti incluse nel proprio sistema operativo.

Non è necessario installare nessun software aggiuntivo sul PC per usare le risorse di IBM i NetServer.

I client Linux con software Samba installato possono anch’essi accedere senza problemi alle risorse condivise di IBM i NetServer. Per ulteriori informazioni consultare la documentazione IBM: https://www.ibm.com/docs/en/i/7.5?topic=netserver-accessing-i-linux-samba-client-support.

NetServer è pienamente compatibile con il protocollo standard CIFS (Common Internet File System), ormai deprecato, e SMB (Server Message Block) ed utilizza la sua implementazione col protocollo NetBIOS su TCP/IP.

Figura tratta dal redbook IBM “AS/400 Netserver advantage”
Schema della struttura dei protocolli utilizzati da IBM i NetServer

IBM i NetServer e le sue risorse sono identificate nella rete tramite UNC (Universal Naming Convention) nella forma \\server-name\share-name\file-path.

NetServer fu introdotto nella versione V4R2.

Configurare NetServer

Occorre collegarsi a Navigator for i con un utente che abbia almeno le autorizzazioni speciali *IOSYSCFG e *SECADM.
Sul server deve essere installato il prodotto IBM i 57xxSS1 opzione 12 (host servers).

Per ulteriori informazioni sull’uso di Navigator for i potete consultare il video tutorial Power Coffee 1/2022.

Dall’icona Rete scegliere la voce Server > Server TCP/IP.

Per visualizzare o modificare la configurazione scegliere la voce Proprietà dal menu contestuale.

Per poter attivare le modifche cliccare sul pulsante Espandi all’avvio successivo.

Le modifiche apportate saranno attive al successivo riavvio del servizio NetServer.

Il nome sistema proposto di default coincide con la matricola della macchina; è possibile modificarlo ma è importante assicurarsi che sia unico all’interno della rete.
Un nome non univoco può causare il non avvio di NetServer con errore CPIB683 RC5 RC3420.
E’ consigliabile che il nome NetServer coincida con il nome di sistema. Per visualizzare il nome di sistema utilizzare il comando DSPNETA.

Nella scheda “Avanzate” specificare il CCSID 850 oppure 1252.

Nella scheda “Sicurezza” è possibile (ma NON consigliato) specificare un ID Utente ospite. Tale utente verrà utilizzato quando dal client si tenta di accedere ad una risorsa condivisa SENZA specificare un ID utente.

Per quanto possa sembrare comodo avere un ID utente ospite per non essere costretti a specificare un ID utente di collegamento al momento dell’utilizzo delle risorse condivise, è una pratica da sconsigliare. Avere accesso alle risorse condivise di NetServer tramite un utente “generico” di fatto abbassa il livello di sicurezza del sistema uniformando le diverse autorizzazioni di accesso agli oggetti dipendenti dall’utente che effettivamente si sta collegando.

Se si desidera nascondere dalle risorse di rete visualizzabili da un client il NetServer si può deselezionare nella scheda “Avanzate” l’opzione “Invia annunci di ricerca”. Conoscendo il nome o l’indirizzo IP di NetServer si potrà comunque accedere alle risorse condivise.

Aggiungere nella tabella host (menu CFGTCP punto 10) il nome assegnato a NetServer abbinato al suo indirizzo IP.
Impostare nelle proprietà di dominio TCP/IP (menu CFGTCP punto 12) la priorità ricerca nome host = *LOCAL.
Un errata impostazione di questi parametri può causare il non avvio di NetServer con errore CPIB683 RC13.

Avviare e arrestare NetServer

Sempre da Navigator for i è possibile gestire tramite il menu contestuale l’avvio o l’arresto di NetServer.

Oppure da riga comandi 5250 utilizzare i comandi STRTCPSVR *NETSVR per avviare oppure ENDTCPSVR *NETSVR per arrestare (disponibili da V4R4).

Se si utilizza NetServer anche per la condivisione delle code di stampa bisogna avviare i server host con il comando STRHOSTSVR *NETPRT.

Da V4R4 NetServer è avviato automaticamente all’avvio di TCP/IP.

E’ possibile avviare od arrestare NetServer richiamando le API:

  • Avvio NetServer: CALL QZLSSTRS PARM('0' X'00000000')
  • Arresto NetServer: CALL QZLSENDS PARM(X'00000000')

Verificare lo stato di NetServer

Una volta avviato correttamente il servizio NetServer si troverà nel sottosistema QSERVER il lavoro QZLSSERVER (a meno che non siano stati modificati i parametri di default relativi ai lavori NetServer).

Verificare anche che sia attivo il lavoro QNPSERVD nel sottosistema QSYSWRK.

Quando uno o più client si collegano alle risorse NetServer verranno avviati uno o più lavori QZLSFILE (per accesso a non threadsafe file system, come QDLS, NFS, QFileSvr.400 e QNetWare) e/o QZLSFILET (da V5R4 per accesso a threadsafe file system, come Root, QOpenSys, User-Defined (UDFS), QNTC, QSYS.LIB, QOPT, e QLANSrv).

Da Navigator for i si può verificare lo stato di NetServer e i lavori ad esso correlati.

Si può verificare lo stato della connessione tramite il comando NETSTAT *CNN.

Si devono trovare 4 righe in ascolto sulle porte locali “netbios” (137, 138 e 139).

Oppure con l’istruzione SQL:

select LOCAL_PORT "Porta", LOCAL_PORT_NAME "Nome porta", TCP_STATE "Stato", NETWORK_CONNECTION_TYPE "Tipo conn.", BIND_USER "Utente", NUMBER_OF_ASSOCIATED_JOBS "Num.lavori"
  from QSYS2.NETSTAT_INFO
  where LOCAL_ADDRESS = '0.0.0.0'
    and LOCAL_PORT between 137 and 139
  order by LOCAL_PORT;

Per ogni client collegato ad un risorsa NetServer si troverà una riga sulla porta locale CIFS (445).

Oppure con l’istruzione SQL:

select REMOTE_ADDRESS "Indirizzo rem.", REMOTE_PORT "Porta rem.", LOCAL_PORT "Porta", LOCAL_PORT_NAME "Nome porta", TCP_STATE "Stato", BYTES_SENT_REMOTELY "Bytes inv.", BYTES_RECEIVED_LOCALLY "Bytes ric.", NUMBER_OF_ASSOCIATED_JOBS "Num.lavori"
  from NETSTAT_INFO
  where LOCAL_ADDRESS not in('0.0.0.0', '127.0.0.1', '::')
     and LOCAL_PORT = 445
  order by LOCAL_PORT, REMOTE_ADDRESS;

Mantenersi aggiornati

Così come per tutti i prodotti del sistema operativo è importante tenersi aggiornati con le PTF. L’elenco delle PTF raccomandate per NetServer è disponibili nei seguenti documenti IBM:

IBM i NetServer e SMB

SMB 1.0 (disponibile da Windows XP e Server 2003) è supportato fino alla versione IBM i 7.4 compresa.

SMB 2.0 (disponibile da Windows Vista, Windows 7 e Server 2008) è supportato dalla versione IBM i 7.2.

SMB 3.0 (disponibile da Windows 8, 10, 11 e Server 2012, 2016, 2019, 2022) è supportato dalla versione IBM i 7.4.

Ulteriori informazioni nel documento IBM https://www.ibm.com/support/pages/what-versions-smb-are-supported-ibm-i-netserver e nel documento MicroSoft https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-smb2/a64e55aa-1152-48e4-8206-edd96444e7f7

Backup

NetServer utilizza file in IFS per memorizzare le configurazioni. I file che sarebbe opportuno aggiungere ai backup regolari sono nella cartella /QIBM/UserData/OS400/NetServer:

  • qazlscfg: informazioni di configurazione
  • qazlsshr: informazioni sulle risorse condivise
  • qazlsextxxx: informazioni sulle conversioni di testo

Se si usa NetServer come server di dominio aggiungere anche la cartella /QIBM/UserData/OS400/NetServer/NetLogon.

Bibliografia

La pagina principale della documentazione IBM su NetServer è consultabile a questo link: https://www.ibm.com/docs/en/i/7.5?topic=services-i-netserver. Altre risorse utili le trovate nel documento allegato:


Nel prossimo articolo parleremo di come condividere le risorse di IFS tramite NetServer.

Related Posts
NetServer per tutti – parte 2

Una mini-guida a puntate per la configurazione, gestione, uso e risoluzione dei problemi di IBM i NetServer

NetServer per tutti – parte 3

Una mini-guida a puntate per la configurazione, gestione, uso e risoluzione dei problemi di IBM i NetServer

NetServer per tutti – parte 4

Una mini-guida a puntate per la configurazione, gestione, uso e risoluzione dei problemi di IBM i NetServer

NetServer per tutti – parte 5

Una mini-guida a puntate per la configurazione, gestione, uso e risoluzione dei problemi di IBM i NetServer

Recent Posts

Gestione dei file video bloccati su IBM i: una soluzione efficace

Riceviamo e pubblichiamo ben volentieri questo "tip & trick" di Patrick Rizzi che presenta una tecnica che permette di intervenire…

2 settimane ago

Monitoraggio Messaggi QSYSOPR: SQL per Ottenere Messaggi e Reply

Prendo spunto da una risposta di Michael Mayer sulle mailing list di Midrange.com a chi chiedeva come monitorare i messaggi…

2 settimane ago

Perché l’ERP è la Chiave del Successo per le Imprese Moderne

Le imprese sono sempre più alla ricerca di strumenti che possano migliorare l'efficienza, la collaborazione e la gestione delle risorse.…

2 mesi ago

ACS Access Client Solution 1.1.9.5

I primi di Aprile è uscita la "Spring Version" di ACS Access Client Solution, versione 1.1.9.5 Interessanti novità soprattutto in…

7 mesi ago

Tim Rowe and Scott Forstie – Promo video for CEC 2024 – Milan

Se non vi bastava la ricca agenda delle sessioni del Common Europe Congress 2024, 3-6 Giugno Milano, ecco un altro…

7 mesi ago

Code for IBM i 2.10.0 – Debug IBM i con Visual Studio Code

Le funzioni di debug con Visual Studio Code sono disponibili da qualche tempo ma questa nuova versione 2.10.0 semplifica la…

7 mesi ago