diff --git a/lib/geocoder/lookups/base.rb b/lib/geocoder/lookups/base.rb
index cb41337b95347aa1730fcd234196d73e2974c3a0..22a7c349546c1ed9316a618524305c9b70e02080 100644
--- a/lib/geocoder/lookups/base.rb
+++ b/lib/geocoder/lookups/base.rb
@@ -169,6 +169,8 @@ module Geocoder
         parse_raw_data fetch_raw_data(query)
       rescue SocketError => err
         raise_error(err) or warn "Geocoding API connection cannot be established."
+      rescue Errno::ECONNREFUSED => err
+        raise_error(err) or warn "Geocoding API connection refused."
       rescue TimeoutError => err
         raise_error(err) or warn "Geocoding API not responding fast enough " +
           "(use Geocoder.configure(:timeout => ...) to set limit)."
diff --git a/test/test_helper.rb b/test/test_helper.rb
index 2309827b16d10b49e1aa5f1dffaaf79f4b8fdf0d..d872af3d1c85eaf88d23d5e8e5112744747ba3e5 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -110,6 +110,7 @@ module Geocoder
       def make_api_request(query)
         raise TimeoutError if query.text == "timeout"
         raise SocketError if query.text == "socket_error"
+        raise Errno::ECONNREFUSED if query.text == "connection_refused"
         read_fixture fixture_for_query(query)
       end
     end
diff --git a/test/unit/error_handling_test.rb b/test/unit/error_handling_test.rb
index e999af9468256d0ad3853021c43c91d52305aa2c..29f2ccbb1d9878c107bd64b49a942fdc9c849785 100644
--- a/test/unit/error_handling_test.rb
+++ b/test/unit/error_handling_test.rb
@@ -41,4 +41,16 @@ class ErrorHandlingTest < GeocoderTestCase
       end
     end
   end
+
+  def test_always_raise_connection_refused_error
+    Geocoder.configure(:always_raise => [Errno::ECONNREFUSED])
+    Geocoder::Lookup.all_services_except_test.each do |l|
+      next if l == :maxmind_local # local, does not raise timeout
+      lookup = Geocoder::Lookup.get(l)
+      set_api_key!(l)
+      assert_raises Errno::ECONNREFUSED do
+        lookup.send(:results, Geocoder::Query.new("connection_refused"))
+      end
+    end
+  end
 end