If the users connected to router B's LAN can ping 172.16.10.1, can they also ping the proxy server at 172.16.10.2? The problem could be the default gateway on the proxy server is not pointing to the ethernet interface on Router A. If this is happening, the traffic from B could be getting to the proxy server but not getting routed back through Router A (this would be caused by the proxy server not having a route for the 20 network). You can verify this by running some debugs on the 2 routers to see what is happening to the traffic.
If the 172.16.10.x/24 users are able to get out to the internet, another workaround would be to NAT the 172.17.20.x network to an address on the 172.16.10x network. You could try configuring something like this:
Router A
int e0
ip nat outside
int s0
ip nat inside
!
ip nat inside source list 1 interface e0 overload
access-list 1 permit 172.16.20.0 0.0.0.255