140 lines
2.7 KiB
Markdown
140 lines
2.7 KiB
Markdown
|
|
# NPMplus Not Reachable - Critical Issue
|
||
|
|
|
||
|
|
**Date**: 2026-01-21
|
||
|
|
**Issue**: NPMplus (192.168.11.166) is not reachable from internal network
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Problem
|
||
|
|
|
||
|
|
Testing shows:
|
||
|
|
- ❌ `curl http://192.168.11.166` → Connection refused
|
||
|
|
- ❌ `curl https://192.168.11.166` → Connection refused
|
||
|
|
- ❌ Port 80: NOT REACHABLE
|
||
|
|
- ❌ Port 443: NOT REACHABLE
|
||
|
|
|
||
|
|
**This is a critical issue** - NPMplus itself is not accessible.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Possible Causes
|
||
|
|
|
||
|
|
### 1. NPMplus Container Not Running
|
||
|
|
- Container may have stopped
|
||
|
|
- Docker service may have stopped
|
||
|
|
|
||
|
|
### 2. NPMplus Not Listening on Ports
|
||
|
|
- Nginx inside container may have stopped
|
||
|
|
- Ports may not be bound correctly
|
||
|
|
|
||
|
|
### 3. Network/Firewall Issue
|
||
|
|
- Container network configuration issue
|
||
|
|
- Firewall blocking access to container IP
|
||
|
|
|
||
|
|
### 4. IP Address Changed
|
||
|
|
- Container IP may have changed
|
||
|
|
- DHCP may have assigned different IP
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Diagnosis Steps
|
||
|
|
|
||
|
|
### Step 1: Check Container Status
|
||
|
|
|
||
|
|
```bash
|
||
|
|
ssh root@r630-01
|
||
|
|
pct status 10233
|
||
|
|
```
|
||
|
|
|
||
|
|
**Expected**: `status: running`
|
||
|
|
|
||
|
|
### Step 2: Check Docker Container
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- docker ps | grep npmplus
|
||
|
|
```
|
||
|
|
|
||
|
|
**Expected**: Container should be running and healthy
|
||
|
|
|
||
|
|
### Step 3: Check Listening Ports
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- ss -tlnp | grep -E ":80 |:443 "
|
||
|
|
```
|
||
|
|
|
||
|
|
**Expected**: Should show ports 80 and 443 listening
|
||
|
|
|
||
|
|
### Step 4: Check Container IP
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- ip addr show | grep "inet "
|
||
|
|
```
|
||
|
|
|
||
|
|
**Expected**: Should show 192.168.11.166
|
||
|
|
|
||
|
|
### Step 5: Test from Container Itself
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- curl -I http://localhost:80
|
||
|
|
pct exec 10233 -- curl -I https://localhost:443 -k
|
||
|
|
```
|
||
|
|
|
||
|
|
**Expected**: Should return HTTP response
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Quick Fixes
|
||
|
|
|
||
|
|
### If Container is Stopped
|
||
|
|
|
||
|
|
```bash
|
||
|
|
ssh root@r630-01
|
||
|
|
pct start 10233
|
||
|
|
sleep 10
|
||
|
|
pct status 10233
|
||
|
|
```
|
||
|
|
|
||
|
|
### If Docker Container is Stopped
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- docker ps -a | grep npmplus
|
||
|
|
pct exec 10233 -- docker start npmplus
|
||
|
|
```
|
||
|
|
|
||
|
|
### If Nginx is Not Running
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pct exec 10233 -- docker exec npmplus nginx -t
|
||
|
|
pct exec 10233 -- docker exec npmplus nginx -s reload
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Verification
|
||
|
|
|
||
|
|
After fixes, verify:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# From internal network
|
||
|
|
curl -v http://192.168.11.166 -H "Host: explorer.d-bis.org"
|
||
|
|
curl -v https://192.168.11.166 -H "Host: explorer.d-bis.org" -k
|
||
|
|
|
||
|
|
# Check ports
|
||
|
|
timeout 3 bash -c "echo > /dev/tcp/192.168.11.166/80" && echo "Port 80: OPEN" || echo "Port 80: CLOSED"
|
||
|
|
timeout 3 bash -c "echo > /dev/tcp/192.168.11.166/443" && echo "Port 443: OPEN" || echo "Port 443: CLOSED"
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Summary
|
||
|
|
|
||
|
|
**Critical Issue**: NPMplus is not reachable on its internal IP (192.168.11.166)
|
||
|
|
|
||
|
|
**This must be fixed before external access can work.**
|
||
|
|
|
||
|
|
Even if port forwarding rules are active, external traffic cannot reach NPMplus if it's not accessible internally.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Status**: ❌ **CRITICAL - NPMplus Not Reachable - Must Fix First**
|