Haben Sie versucht, Ihren einzelnen Aufruf mit TRY-CATCH-Ausnahmeblöcken zu umgeben?
BEGIN TRY
--First Server Connection (Server1) 192.168.1.x
--If the connection isn't available it will raise an exception
exec sp_testlinkedserver @servername = Server1
--SQL statement here
END TRY
BEGIN CATCH
SELECT ERROR_MESSAGE()
END CATCH
BEGIN TRY
--Second Server Connection (Server2) 192.168.2.x
--If the connection isn't available it will raise an exception
exec sp_testlinkedserver @servername = Server2
--SQL statement here
END TRY
BEGIN CATCH
SELECT ERROR_MESSAGE()
END CATCH
sp_testlinkedserver löst vor der Ausführung Ihres Codes eine Ausnahme innerhalb eines try-Blocks aus, stoppt jedoch nicht die Ausführung der gespeicherten Prozedur.