I can't see much difference between your server.conf, and mine.. so I doubt the problem is there. I notice you don't have:
local 111.222.333.444 #main public ip
Maybe significant..
As for iptables I am doing:
iptables -A FORWARD -s 10.8.1.0/24 -j ACCEPT
iptables -A FORWARD -s 10.8.2.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.1.0/24 -j SNAT --to-source 123.123.255.120
iptables -t nat -A POSTROUTING -s 10.8.2.0/24 -j SNAT --to-source 123.123.255.121
You are doing?:
iptables -A FORWARD -s 172.17.0.0/24 -j ACCEPT
iptables -A FORWARD -s 172.18.0.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 172.17.0.0/24 -j SNAT --to-source 123.123.255.120
iptables -t nat -A POSTROUTING -s 172.18.0.0/24 -j SNAT --to-source 123.123.255.121
Now I notice a problem. You are changing the 2nd octet (172.x and 172.y) and specifying /24
I don't know network addressing schemes *that* well, but I am pretty sure its illegal syntax. /24 cannot be used to change 172.x.0.0 ..... its only used for 172.18.x.0....
So you might want to make a switch to the 3rd octet, OR, replace /24 with something else.