2025-03-06 13:00:02 +00:00
2025-03-06 13:00:02 +00:00
2025-03-06 13:00:02 +00:00
2025-03-06 13:00:02 +00:00
2025-03-06 12:53:48 +00:00

SNMPD Custom OID Docker Container

This Docker container runs snmpd with a custom script that provides a specific OID (.1.3.6.1.4.1.38446.1.2.4.1.9.1). The value of this OID increases randomly by a small amount every 4 minutes.

Features

  • Lightweight Docker container based on Alpine Linux.
  • Custom Python script to generate and update the OID value.
  • Configurable SNMP daemon (snmpd) to use the custom script.

Requirements

  • Docker installed on your system.
  • Basic knowledge of Docker commands.

Dependencies

  • snmpd: The SNMP daemon.
  • Python 3: Used to write the custom script.
  • random: Python library for generating random numbers.

How to Use

Step 1: Build the Docker Image

Navigate to the directory containing the Dockerfile and custom_snmp_script.py, then run:

docker build -t snmpd-custom .

Step 2: Run the Docker Container

Start the Docker container with the following command:

docker run -d -p 161:161/udp --name snmpd-custom-container snmpd-custom

Step 3: Verify the Setup

You can verify that the container is running and the SNMP daemon is providing the custom OID by using an SNMP client to query the OID:

snmpwalk -v 2c -c public localhost .1.3.6.1.4.1.38446.1.2.4.1.9.1

You should see the value incrementing randomly every 4 minutes.

Customization

  • Initial Value: You can change the initial value in the custom_snmp_script.py file.
  • Increment Range: Modify the range in the script to change how much the value increments.
  • Update Interval: Adjust the sleep interval in the script to change the frequency of updates.

Notes

  • Ensure that the SNMP community string (public in the example) matches your configuration.
  • The container exposes port 161 for SNMP communication.

License

This project is licensed under the MIT License.

Description
Simulate SNMP response on a specific oid using a script in a Docker container.
Readme 33 KiB
Languages
Dockerfile 57.8%
Python 42.2%