Wouldn't you be better doing it over an IPsec Tunnel ?
SNMP isn't NAT friendly :-
https://www.ietf.org/rfc/rfc3027.txt
4.8 SNMP
SNMP is a network management protocol based on UDP. SNMP payload may
contain IP addresses or may refer IP addresses through an index into
a table. As a result, when devices within a private network are
managed by an external node, SNMP packets transiting a NAT device may
contain information that is not relevant in external domain. In some
cases, as described in [SNMP-ALG], an SNMP ALG may be used to
transparently convert realm-specific addresses into globally unique
addresses. Such an ALG assumes static address mapping and bi-
directional NAT. It can only work for the set of data types (textual
conventions) understood by the SNMP-ALG implementation and for a
given set of MIB modules. Furthermore, replacing IP addresses in the
SNMP payload may lead to communication failures due to changes in
message size or changes in the lexicographic ordering.
Making SNMP ALGs completely transparent to all management
applications is not an achievable task. The ALGs will run into
problems with SNMPv3 security features, when authentication (and
optionally privacy) is enabled, unless the ALG has access to security
keys. [NAT-ARCH] also hints at potential issues with SNMP management
via NAT.
Alternately, SNMP proxies, as defined in [SNMP-APPL], may be used in
conjunction with NAT to forward SNMP messages to external SNMP
engines (and vice versa). SNMP proxies are tailored to the private
domain context and can hence operate independent of the specific
managed object types being accessed. The proxy solution will require
the external management application to be aware of the proxy
forwarder and the individual nodes being managed will need to be
configured to direct their SNMP traffic (notifications and requests)
to the proxy forwarder.
Also SNMP data isn't encrypted.