Implementing replication over the Internet

  • Hi,

    I am having some trouble implementing replication over the Internet.

    Could somebody point me to a good reference, especially regarding login issues: what permissions should the login used by the Agent have, which login should be recognized on the remote server, etc.

    Tks in advance

    Thierry Sommelet

  • You have to use IP addresses to make this work. The first hurdle is getting through the firewall/proxy server. You need to startup the Server Network Utility on the publisher and create a connection with the same name as the server, but using an IP address, and the TCP/IP netlib.

    Mike

    SQL Server MVP

    http://www.mssqlserver.com


    Mike
    SQL Server MVP
    http://www.mssqlserver.com

  • Well, I would disagree. I have never used an lmhosts file and do not recommend doing it. I have not had a single problem implementing the way I described. I have 59 systems using replication in production with 2 more coming online this month. There are over 10,000 SQL Servers doing replication across all of those installations. 48 of them have web front ends to the data. Not a single one has ever had a problem with this configuration. It is the recommended practice and has been proven to work with tens of thousands of server participating in replication.

    You can try to "stop the propogation of a bad configuration practice" if you choose. Your setup worked for you, in 1 installation. The setup I documented has worked for hundreds of installations with zero problems and zero support issues.

    lmhosts is an old, archaic way to manage your DNS resolution.

    Mike

    SQL Server MVP

    http://www.mssqlserver.com


    Mike
    SQL Server MVP
    http://www.mssqlserver.com

  • This is also the SERVER network utility and NOT the CLIENT network utility. This entry exists on the SQL Server, NOT on the client.

    The Client Network Utility does support IP addresses. I've been in dozens of places where you had no name resolution AT ALL due to security. Everything was addressed by IP address. We mapped all of the IP addresses into friendly names using the Client Network Utility and didn't have any problems.

    A hallmark of incorrect or non-existent name resolution services implemented on the network is when you have to use hosts and lmhosts files.

    Mike

    SQL Server MVP

    http://www.mssqlserver.com


    Mike
    SQL Server MVP
    http://www.mssqlserver.com

  • Steve, Im curious - you said LMHOSTS and not HOSTS? Also, I am currently using the Client Utility configured with an alias to an IP to access a SQL server over the internet without issue.

    I can see where you might achieve a small performance gain by using *Hosts compared to resolving a name via DNS or WINS, but how much?

    Mike, in terms of administration, why would you consider using Hosts wrong compared to using the Server utility? Both require manual configuration for these situations, both require you to remember to transfer the settings if you move SQL to a different box. What about adding entries to DNS or WINS to create aliases that way?

    Thierry - have you had any luck with your problem? Let us know how you're doing!

    Andy

  • Thanks to all of you for your answers. Actually, I have just managed to implement my snapshot replication over the net: I am using the Client Network utility to name my server, but my issue was with getting the Agent to connect to this server to push my DB: I seem to have found the right set of authorizations now and it works, although I can't really say I would be able to tell exactly what is needed and what is not.

    My question was on how to find this info to make sure I don't give more authorizations than needed to the Agent.

    Regards,

    Thierry

  • If my memory serves me correctly. WINs does NetBios Machine name to IP lookups. DNS does domain name to IP lookups. Host files work in conjunction with DNS and Lmhost files work in conjunction with WINs. At least this was true with NT3.51 and 4.0. LMHOST entries avoid the necessity to go to a wins server for netbios name lookups, thus saving time. When I took my NT administration class I seem to remember that it was a common practice and something we were taught to enter remote wins servers into LMHOST files with the caching option. This allowed machines on one subnet to find wins servers on other subnets easily. I would imagine that if you are refering to a sql server by its machine name there must be some wins activity or netbios broadcast going on. Assuming this is the case I can see where adding an entry to the LMHOST file would drastically cut down on the time to do the lookup and possibly avoid timeouts (especiall when the internet is involved). However, I also would think that using the IP address of the sql machine instead of the nebios machine name would avoid the use of wins or netbios broadcasts entirely. If this is true I would say its probably better to use the IP address, although I would have to run netmonitor and analyze the packets to see what is really going on. I don't really see anything wrong with using host or lmhost files. I add commonly used domain names to my local host file all the time to avoid the lookups. You would rarely find a unix machine out there without a host file. There are some administration issues in larger networks and frequently changing networks.

  • Hey Steve,

    I think overall we do a fair job of keeping an open mind here at SQLServerCentral, though Im sure at times we do bias towards certains ideas or directions based on our own experience. Experience is what makes discussion areas like this one a valuable resource. Our goal is to help our readers find an answer and more importantly, why that is answer is "right" - the context is as important as the answer.

    I personally enjoy challenging the status quo - there is a lot to be learned from looking at the opposite side of an idea - even if you think its a waste of time. An easy trap for any of us to fall into is learning something once based on a situation, then never re-investigating as technology moves forward.

    In this particular case I think we didn't do a particularly good job as a community in helping Thierry with his question. Especially when dealing with someone new to SQL or a part of SQL, let's start them with the basics and move from there. If we need to start a separate thread to hash out something more complex or controversial, lets do it!

    Finally, Im not sure who the 'ego' comment you posted referred to, but I do appreciate the point you were trying to make. If you feel like you are being shut out, ignored, whatever, I'd appreciate it if you'd address it to either myself or one of the other site owners directly via email, we'll take a look and see if we can't get it fixed - even if we're the offenders!

    Andy

Viewing 8 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic. Login to reply