I guess being a bit out of my depth here doesn't help, but here goes:
Joe, who is at home dialling into an ISP that dynamically assigns IP addresses, goes to a form on our website, fills it in and sends it. The process page sits on our web server. It takes the variable and send the result on to a third party site which does some stuff. But the third party site requires a pre-determined IP address to validate the request.
If my code (see above) does the work, the request is not sent directly to the third party site with my (valid) web server IP. The form is sent back to the client with the modified header which then sends the request on to the third party with the client's (unvalid) IP.
So, rather than using the header() function which sends the form results back to the client and so uses the wrong IP, I want the
http://000.000.000.000/action?$var_a=$var_a&var_b=$var_b&var_c=$var_c&var_d=$var_d
to come directly from my webserver with its valid IP address.
Hope this makes more sense. If not, I'll try to be clearer.