06 - Habilitar Receiving 9997 en Indexer

El Splunk Universal Forwarder no podrá enviar datos al indexer hasta que éste abra un receptor TCP en el puerto 9997 (convention Splunk, configurable).

En este proyecto el indexer es local (Splunk Enterprise en este mismo PC), con Splunkd ya Running antes de empezar.

Verificación previa

Get-Service Splunkd
Test-NetConnection 127.0.0.1 -Port 9997   # False -> hay que habilitarlo

Opción 1: Web UI (rápida)

  1. Abrir http://127.0.0.1:8000 (admin).
  2. Settings → Forwarding & receiving → Configure receiving → New.
  3. Puerto: 9997 → Save.
  4. Splunkd recarga la config automatically.

Opción 2: Editar etc\system\local\inputs.conf del indexer (reproducible)

Abrir (como admin):

C:\Program Files\Splunk\etc\system\local\inputs.conf

Añade (o verifica):

[splunktcp://9997]

La stanza vacía es suficiente; Splunk acepta conexiones desde cualquier UF. Para acotar por IP del UF, usar restrictTo = <ip_uf>. En local NO se requiere.

Reinicia:

& 'C:\Program Files\Splunk\bin\splunk.exe' restart

Estado en este PC tras el fix

PS> Test-NetConnection 127.0.0.1 -Port 9997
TcpTestSucceeded : True

Snippet del log elevado:

==== 6/8 Habilitando splunktcp://9997 ====
[...]
[app]
Archivo modificado: C:\Program Files\Splunk\etc\system\local\inputs.conf + stanza añadida

Firewalls

Si el Splunkd está detrás de un firewall y el UF es remoto:

New-NetFirewallRule -DisplayName 'Splunk Receiving 9997' `
    -Direction Inbound -Protocol TCP -LocalPort 9997 -Action Allow -Profile Any

En este PC (loopback) no es necesario.

Verificar recepción desde el UF

En el indexer, búsqueda:

index=_internal sourcetype=splunkd "TcpOutputProc" Connected

O bien:

| rest /services/server/roles

Para confirmar datos llegando:

index=_internal source=*metrics.log group=tcpout
| stats count by fwdip fwdhost

Volver a: 00 - MOC Monitorización PC Local