I’m reading a lot about SNMP at the moment. As the author stated, we require a private community string to have write access in SNMP, yet when the author uses Snmpset, he changes the value of the system.sysContact.0 using a public key and I’m a bit confused; could someone please clarify why we can utilize the public community string in this example?

Thank you!

Well I haven’t seen the above lab, this is the general concept.
SNMP v1/v2c having community string types “read-only” and “read-write”. These community strings can be any thing, a passphrase used for authentication.
However, Most of the devices ships with the default community strings settings, “public” Readonly and “private” Readwrite though this is not mandatory. You can set “public” as your Readwrite community string as well.
Depends on the access, you can perform the actions using snmp.

Thank you very much for everything.
I appreciate your support.