# Blockscout IP Address Verification

**Issue**: Scripts reference `192.168.11.140` but container uses DHCP

---

## Configuration Source

The IP `192.168.11.140` comes from:

1. **`config/network.conf`**:
   ```bash
   PUBLIC_START_IP="192.168.11.140"
   ```

2. **`scripts/deployment/deploy-explorer.sh`** (line 118-119):
   ```bash
   ip_octet=140
   ip_address="${PUBLIC_SUBNET:-192.168.11}.${ip_octet}"  # = 192.168.11.140
   ```

3. **Container Configuration**:
   - Container VMID 5000 is configured with `ip=dhcp`
   - This means it gets its IP from DHCP, not a static assignment
   - The actual IP may differ from `192.168.11.140`

---

## Verification

To check the actual IP assigned to Blockscout container:

```bash
# Check actual IP
ssh root@192.168.11.10 "pct exec 5000 -- hostname -I"

# Or check via Proxmox API
ssh root@192.168.11.10 "pvesh get /nodes/pve2/lxc/5000/config --output-format json-pretty | grep net0"
```

---

## Solution Options

### Option 1: Verify Actual IP and Update Scripts

If the container has a different IP, update all scripts to use the actual IP:

```bash
# Find actual IP
ACTUAL_IP=$(ssh root@192.168.11.10 "pct exec 5000 -- hostname -I | awk '{print \$1}'")

# Update scripts
sed -i "s/192\.168\.11\.140/$ACTUAL_IP/g" scripts/*.sh
```

### Option 2: Configure Static IP Reservation

Configure DHCP server to always assign `192.168.11.140` to the container's MAC address:

1. Get container MAC address:
   ```bash
   ssh root@192.168.11.10 "pvesh get /nodes/pve2/lxc/5000/config --output-format json-pretty | grep hwaddr"
   ```

2. Configure DHCP reservation in Omada Controller or DHCP server

### Option 3: Change Container to Static IP

Modify container configuration to use static IP:

```bash
ssh root@192.168.11.10 "pct set 5000 --net0 name=eth0,bridge=vmbr0,ip=192.168.11.140/24,gw=192.168.11.1"
```

Then restart container:
```bash
ssh root@192.168.11.10 "pct reboot 5000"
```

---

## Current Status

- **Expected IP**: `192.168.11.140` (from configuration)
- **Container Config**: `ip=dhcp` (dynamic assignment)
- **Actual IP**: Unknown (needs verification)

---

**Action Required**: Verify actual IP and either:
1. Update scripts to use actual IP, OR
2. Configure static IP reservation/assignment

