In using SUDS, I have found that when I try to create a client using the WSDL dynamically from the Web Service I want to access, say:
client = suds.client.Client("http://somewebservice/ws/servicev1?wsdl")
In parsing the WSDL, it appears that the SUDS client will attempt to contact  If we get a local copy of the WSDL and specify that, it doesn't attempt to resolve it.  I was surprised to discover that the parser is treating the references as anything but namespaces.  I'm not sure what the difference between the dynamic copy and the local copy is.  At any rate, this problem requires us to open up our firewall so we can communicate with  Our SUDS application is designed to work with a number of different versions of the web service but we don't control that service.  So, we want to be able to dynamically use the WSDL the web service offers up rather than try to manage static copies.
Has anyone experienced this problem?  Is there a way to work around it w/o resorting to static copies of WSDL files?