Well, you don't want to use syncrepl with 2.2. Trust me, I've been
there. Make sure to start with an upgrade to 2.3.27 before even testing
any of this.
"Pull-based" replication is refreshOnly; the slave decides when to connect
and pull some data.
"Push-based" replication is refreshAndPersist; the slave connects to the
master at startup, then the master pushes changes as they happen.
Either one of them involving the slave connecting to the master one or
more times; it sounds like you might need a firewall change.