Unable to update nameservers: Nameserver [ns2.example.co.uk] doesn’t exist at the registry.
Especially if you’ve recently set a new glue up.
In the OpenSRS domain manager it says:
** IMPORTANT: Before adding additional name servers to your configuration, you should be sure that the name server has setup correctly. 24 – 48 hours after you submit a request for an additional name server, it will be in the rotation for authoritative lookups and if it is not setup correctly, your site will take a long time to resolve when visitors try to find you.
You can ignore this for now, here’s what you need to do first…
You, or your admin who has access to the OpenSRS reseller interface needs to find the page in there entitled “Add Nameserver to All Foreign Registries” as per these instructions:
Add Nameserver to All Foreign Registries
This interface allows you to add Registered Nameservers to all of the Registries to which the OpenSRS system is connected. If you want to use a COM/NET/ORG nameserver (default.opensrs.net) on a .BIZ domain, you have to first add it to the “foreign” .BIZ Registry using this option. The reason for this is because each Registry keeps a database of “registered nameservers”, and new nameservers at “foreign” registries need to be explicitly added before they can be used to resolve domains in that TLD. Use this interface when you get the error “Unable to add nameservers: Command failed: unable to verify existence of nameserver” when trying to add a foreign nameserver to a domain.
To add a nameserver to all foreign registries
Once you do that you should see a message that says:
.com registry: Successfully added
.asia registry: Successfully added
.xxx registry: Successfully added
.com.au registry: Successfully added
.biz registry: Successfully added
.bz registry: Successfully added
.ca registry: Successfully added
.cc registry: Successfully added
.com.cn registry: Successfully added
.co registry: Successfully added
.in registry: Successfully added
.info registry: Successfully added
.es registry: Successfully added
.me registry: Successfully added
.mobi registry: Successfully added
.name registry: Successfully added
.nl registry: Successfully added
.org registry: Successfully added
.tv registry: Successfully added
.us registry: Successfully added
.ws registry: Successfully added
.pro registry: Successfully added
Or similar.
Now we give it 24-48 hours, then you can set custom name servers on your domain via the OpenSRS manage interface.
]]>The reason this email address was getting so much spam is because it was harvested by a website spider bot, as the email address was placed on company website by the previous webmaster.
DO NOT put your email address or any email addresses directly on your website, instead use a form.
Back then there was only examples of support for US, but very little support in the UK.
One thing I did find was the Office Of Fair Trading Spam Tips but they were not very useful, the JunkBusters.com website has some nice tips on “junk email“, if only something existed like this for the UK.
I discovered that in the US you can send your junk/spam email to [email protected] and they will pursue law enforcement actions against people sending the emails.
After I read the NEW RULES ON EMAIL MARKETING article, I figured I could issue a complaint with the Information Commissioner via this form.
Update: In 2010 the BBC offered an article entitled: “How can I stop getting spam emails?” which seems to offer sufficient advice, there’s also a whole heap of resources in the Dmoz “email spam” directory.
]]>As we said recently, there’s been lots of speculation as to whether PageRank is dead or not. It isn’t, just Google are moving the goals a bit. Basically, they don’t want you to focus on PageRank but it’s still massively important to them.
All this talk of dead, reminds me of the Monty Python dead parrot sketch, only in this case, it isn’t dead. An anti-dead-parrot if you will.
So what’s with all the news about PageRank being dead? Google just changed their code, that’s all…
Originally, everyone used the code in the Internet Explorer plugin, then the Firefox plugin came along.
The common thing about both was the URL they used to lookup the PageRank:
http://toolbarqueries.google.com/search?client=navclient-auto&ch=%s&features=Rank&q=info:%s
Note: The first %s is the checkhash, while the second is the actual URL you’re looking up.
Back in August, James Slater was investigating the new Google Related chrome plugin only to discover the new PageRank lookup URLs:
http://toolbarqueries.google.com/tbr?client=navclient-auto&ch=%s&features=Rank&q=info:%s
Also, if you used to use the host “www.google.com” this no longer works either, use “toolbarqueries.google.com” instead.
As part of our ongoing commitment to our PageRank lookup tool, not only have we fixed our code, but we’ve released working PageRank scripts to GitHub.
PageRank is dead, long live PageRank.
]]>So, perhaps I was a bit hasty writing off WhoisX.
The list of profanities was discovered in the Javascript on the website, however Google reacted quickly and switched this to a URL lookup instead of a Javascript one therefore keeping the list away from prying eyes.
However, what this does mean is now we have an API to play with:
This will return a true JSON response:
{“response”: “true”}
While looking up something like “lol” will return a false response:
http://www.wdyl.com/profanity?q=lol
{“response”: “false”}
All in all a pretty simple and easy way to figure out whether Google thinks it is a bad word or not.
On the down side, you can’t easily use it on your site, as, if you try to call it by AJAX you’ll be faced by the following error:
XMLHttpRequest cannot load http://www.wdyl.com/profanity. Origin http://example.org is not allowed by Access-Control-Allow-Origin.
On the upside, we don’t want to do that anyway, we can to use it from PHP.
<?php $q=isset($_REQUEST['q'])?urlencode($_REQUEST['q']):''; readfile('http://www.wdyl.com/profanity?q='.$q); ?>
That’s right, that’s all there is to it. Simply copy that into the a file called “profanity.php” and you’re ready to go!
Now you can do a JSON call to your ‘profanity.php’ to tell you whether the word is bad or not.
If that’s not enough, you could try using the Google Profanity API to avoid displaying ads on pages that contain profanities.
Now if only there was a way to avoid the Scunthorp problem…
Going back to the reported Adsense problem on WhoisX.co.uk, the example query was:
adult-hardcore-sex.cuntspace.me.uk
Passing this to the API returned false.
But, changing all the non-word characters to spaces has a different effect:
adult hardcore sex cuntspace me uk
{“response”: “true”}
This is done in PHP using a simple regular expression:
echo preg_replace(‘/[\W+]/’,’ ‘,’adult-hardcore-sex.cuntspace.me.uk’);
I’m not sure this exactly solves the Scunthorp problem, but it definitely does identify “sex” as an adult theme which is perfect.
Now to turn it into a usable function:
<?php function is_profanity($q,$json=0) { $q=urlencode(preg_replace('/[\W+]/',' ',$q)); $p=file_get_contents('http://www.wdyl.com/profanity?q='.$q); if ($json) { return $p; } $p=json_decode($p); return ($p->response=='true')?1:0; } $q=isset($_REQUEST['q'])?$_REQUEST['q']:''; echo is_profanity($q); ?>
We can use this function to check whether the query is considered a profanity or not. If it is, it will return a 1, otherwise a 0 is returned.
This function can now be used to include kittens (or whatever) rather than Google Adsense Ads on a pages with “adult themed” content.
Brilliant!
Now to submit for reconsideration…
]]>It began as a small project to help people check whether a domain was available or not. When a domain was available the visitor was linked to a place they could buy the domain.
We developed out the project into more of a whois lookup service because this was useful to customers who wanted to see details about their domain using a web service rather than understanding how to do a whois lookup from the command line.
However, we soon came to realise that the site was causing a high load on the server because it was being hammered by bots. These bots were visiting thousands of URLs in an attempt to get WhoisX to generate a link back to them. Little do they know that, that’s not how it works.
The project was revamped with a whole load of new features including caching and load checking, which worked very well.
It no longer just did domain lookups either, it did hostnames (showing the “domain parts” making it easy to navigate), ip lookups, country code lookups, reverse ip lookups, mail server lookups and various dns queries all displayed within a few seconds.
We expanded the “social” aspect to make it easier to share and made it ad supported using Google Adwords.
Personally, I found the tool very useful to quickly check a domain, or drop a link into an email so customers could check for themselves.
This was all working great. The tool was useful to us and it was bringing in a small revenue, so it was all worth while.
However, this ended when Google emailed with the subject “AdSense ad serving has been disabled to your site”, the email went on to say:
Hello,
During a recent review of your account we found that you are currently
displaying Google ads in a manner that is not compliant with our program
policies
(https://www.google.com/support/adsense/bin/answer.py?answer=48182&stc=aspe-1pp-en).————————————————–
EXAMPLE PAGE: http://whoisx.co.uk/adult-hardcore-sex.cuntspace.me.ukPlease note that this URL is an example and that the same violations may
exist on other pages of this website or other sites in your network.VIOLATION(S) FOUND:
LINKS TO ADULT CONTENT: As stated in our program policies, AdSense
publishers are not permitted to place Google ads on pages with adult or
mature content. This includes displaying ads on pages that provide links
for or drive traffic to adult or mature sites. More information about this
policy can be found in our help center
(https://www.google.com/adsense/support/as/bin/answer.py?hl=en&answer=105957).ADULT SEARCH RESULTS: As stated in our program policies, AdSense
publishers are not permitted to place Google ads on pages with adult or
mature content. This includes search results pages for adult or mature
terms, images or videos with adult keywords or tags, and user generated
comments that are mature in nature. More information about this policy can
be found in our help center (
https://www.google.com/adsense/support/as/bin/answer.py?hl=en&answer=105957
).ACTION TAKEN: We have disabled ad serving to your site.
ACCOUNT STATUS: ACTIVE
Your AdSense account remains active. However, please note that our team
reserves the right to disable your account at any time. As such, we
encourage you to become familiar with our program policies and monitor
your network accordingly.Issue ID# XXXXXXX
————————————————–
Thank you for your cooperation.Sincerely,
The Google AdSense Team
—————-
For more information regarding this email, please visit our Help Center:
https://www.google.com/adsense/support/bin/answer.py?answer=113058&stc=aspe-ai4-en.
Although I agree with Google’s terms, this was an outside case and I couldn’t understand why they had chosen the example they had, since the “visit website” link on the page links to a website that doesn’t exist.
At the very worst, the URL contains an adult word, which is almost impossible to filter due to the “Scunthorpe problem” and that Google have not supplied a “bad word list” for us to work off.
This meant that without spending a lot of time on developing a very complex filter system so that ads aren’t displayed on pages containing potentially bad words, there was very little we could do about it.
So, this signals the end for WhoisX as we know it.
Consider this 30 days that the site will be closing down in it’s current form.
However, we do have plans to open a new domain lookup service, supported by Phurix in it’s place.
Watch this space!
]]>On the Internet IP addresses are allocated in blocks to ISPs in each country by regional registries, making it possible to identify which country an IP address originated in.
Often, if you are connected to the Internet behind a router, you share an online IP address with everyone else on your local area network (LAN).
Sometimes you need to know your external IP address and using something like ipconfig will only return your LAN IP address (something like 192.168.0.1).
That is why many “what is my ip” websites exist, making it easy for you to lookup your external IP address.
My favourite IP lookup service has been for a long time one run by NASDAQ-100 content delivery specialists “Akamai Technologies”:
It’s brilliant in its simplicity but it’s not very pretty.
We decided to do something different. We made a pretty “What is my IP address?” lookup:
Part of its beauty is that the audience its aimed at is able to quickly read and understand the information at a glance, without any prompts. While those who don’t understand it can marvel at its pretty form and ponder over its usefulness.
The other part of its beauty is that it’s highly parsable.
It’s easy to parse the IP address, mainly because the presentation (CSS) is separate from the markup (HTML), but also because of the headers.
Here’s a short demonstration to show how you can use the headers to get the IP address using this tool:
<?php $h=get_headers(‘http://ip.phurix.net’,1); echo trim($h[‘Location’],’/’); ?>
However, this method isn’t very portable, so may not be suitable if you’re checking against multiple sources at once.
So instead, we can also demonstrate using a simple regular expression and a function that can get http contents (such as file_get_contents() in PHP).
<?php echo preg_replace(‘/.*?(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}).*/s’,’$1′,file_get_contents(‘http://ip.phurix.net’));?>
The brilliance in this little snippet is that it will work with any useful “What is my IP?” lookup website.
So as you can see, it’s really easy to work with as a pretty API as well.
Beyond the IP address, you only need to look at the source code to understand that it’s easy to parse the other details.
I hope you found this useful!
]]>One of the features we wanted was to display the Google PageRank of a domain right there in the lookup along side the whois details.
At the time we didn’t know how to pull this information and there was very limited details on it, so some research was required which resulted in a PageRank PHP script.
Over time, the resulting “pagerank.php” script became very popular and was developed further by fixing bugs and making it easier to use.
Now we wanted to show off our work in the form of a demo, so we launched a website…
We’ve had a demo of the PageRank Viewer online since 2010, but this week we’ve developed a whole new site along side entirely new code.
The original code we used was reverse engineered from the Internet Explorer toolbar, however it was much later that improved code based on the Google Toolbar for Mozilla Firefox surfaced.
The code from the Google Toolbar for Mozilla Firefox was interesting. By downloading the plugin “xpi” file, unzipping it and taking a look at the javascript you are able to see that Google regards PageRank quite highly or has sense of humour:
HASH_SEED_=”Mining PageRank is AGAINST GOOGLE’S TERMS OF SERVICE. Yes, I’m talking to you, scammer.”;
The simplicity of this code made it very easy to port over to any scripting language. So along side the launch of the all new PageRank Viewer website, we’re also shipping code in PHP, Python, Perl, TCL, C++ and D, all with the new code so you can write your own solution.
We bring this to you just in time too, there’s a perceived deprecation of PageRank after Google didn’t offer any official PageRank tool in their Google Chrome web browser.
PageRank was removed from webmaster tools, dismissed by a Google employee who said:
“it was silly to tell people not to think about it, but then to show them the data, implying that they should look at it”
Although we agree with the point Google is trying to make, we felt there is still a lot of value on PageRank to webmasters.
For example, Google have made it very clear that having a reliable web hosting provider will help with ranking.
With that in mind, we decided to redevelop the PageRank Viewer and release new code to improve availability of PageRank lookups.
We welcome the all new PageRank Viewer to the family as a Phurix Labs project.
Enjoy!
]]>Coinb.in is what is known as a “Bitcoin eWallet Service” with an easily accessible API aimed at web developers, to allow the acceptance of bitcoins and to process the payments automatically and anonymously from our network via an unbranded interface, at no fee, without having to run a bitcoin client.
Coinb.in works by providing your customer with a unique wallet address, which is linked to your account. The coinb.in service then checks the Bitcoin p2p network at regular intervals. Once the payment has been confirmed, you will receive a notification by email and the transaction data will be sent to a script of your choice, which can then be used to process the order and populate your database.
There are a number of different ways to implement Coinb.in. The most simple and least complex way would be to implement a “buy it now” button, which does not require the user to register first.
For example, on a small project we run, called Gallush the following code could be added to a product page as a bitcoin “buy it now” button.
<script src="http://coinb.in/merchant.js"></script> <script> var cb = {'uid':'2', 'amount':'3.00', 'fromcurrency':'USD', 'description':'Starter shell. 1 month', 'ref':'I10', 'requestemail':1, 'callback':'http://www.gallush.com/btc-payments.php'}; </script> <a href="javascript:;" onClick="coinbin(cb);">Buy it now!</a>
Here’s an example: Buy it now!
The html and javascript above, would generate a link that would require no site registration because when it is clicked it will request that the visitor enters in their email address before they can continue, because of the &requestemail parameter being set.
Once the user has provided their email address, coinb.in will convert 3 USD to the equivalent value in bitcoins, and return this value plus an address to make a payment to.
The &description parameter should contain a full description of the purchase and the &reference parameter in our example contains the item id (I10).
Once the user had made a payment, and it has been confirmed 6 times, all of the above data and additional transaction data is then sent to the callback URL provided so that it may populate the database and process the order accordingly.
Coinb.in comes complete with, examples, documentation and an API that can output the results into several different formats including XML and JSON objects
Now the question is, would you buy web hosting with bitcoins?
]]>We’ve had them too, a lot of people have and this has been going on for a very long time.
Why has nobody done anything about this?
Well, they have tried…
On 21 March 2002, accreditted ICANN Registrar TuCows owned OpenSRS sent out the following email to all of their resellers:
Subject: OpenSRS Live Reseller Update 03/21/02 Greetings - Please find following an update on OpenSRS. 1. Unsolicited renewal offers from third parties 1. Unsolicited renewal offers from third parties ------------------- We would like to advise you of a business practice that is becoming common in the domain marketplace and may result in you losing customers. With increasing frequency, companies are making unsolicited offers directed towards existing registrants of other firms. A company will send a letter (sometimes email, sometimes postal) to a domain registrant thanking them for either registering, or renewing their domain name. The letter will also invite them, in language that suggests a prior business relationship exists with the soliciting company, to make some change to the domain, or to renew it, which would result in the name being transferred to the new organization. We recommend taking the following steps to ensure that your registrants understand these issues: a) regular general updates to your clients so they are familiar with your company name and the services you provide to them b) specific updates (as warranted, see example below) with respect to these activities, who is perpetuating them and what to look out for, as well as the consequences (service interruptions, etc...) c) warning registrants explicitly about this issue in your renewal notices; registrants often receive offers when their domain is approaching renewal. Specifically alerting registrants to unsolicited offers before the expiry date should increase registrant knowledge and decrease unintentional transfers. d) warning registrants explicitly in the customizable message that is sent to the administrative contact to approve a transfer away from you. If your clients do inadvertently respond to these offers, the 'Transfer Away' email is your last chance to inform them of the facts of the situation. Once recent example is an aggressive solicitation campaign by the Domain Registry of Canada/America. Their language encourages renewal with them, instead of the registrant's current registration service provider. We have found that a large number of registrants who receive these notices believe that the letter is from their existing registration service provider, and do not understand that they are in fact requesting a transfer to a new company, who may not provide similar services. Below is a sample message you can customize and use: "A company calling itself "Domain Registry of Canada" or "Domain Registry of America" is targeting <RSP> customers to renew their domains. They obtained our customers' contact information through the publicly accessible WHOIS database, and are sending renewal notices through regular mail in an envelope and on stationary intentionally designed to appear to be an official government notice. It has been brought to our attention that these letters have been causing a great deal of confusion among our customers. We hope to clear up any confusion with this email. You absolutely SHOULD NOT send any money to "Domain Registry of Canada"/"Domain Registry of America" in order to renew your domain, as <RSP> is your domain name provider. If you have already sent money, we suggest contacting your bank or credit card company regarding your options of having payment stopped or reversed. We regret that this notice is necessary, but feel it is important to notify our clients of this issue. If you have any questions regarding this or any other issue, please do not hesitate to contact us at <supportaddress>." +------------ Building strong relationships with your clients including regular contact will ensure they are clear that you are their supplier. The stronger these relationships are, the fewer registrants will act on these misleading messages, and the more customers you will retain. These are some of the things you can do to protect your business. We also are continuing to pursue and assess legal and policy initiatives that are at our disposal where the behavior of the company is in conflict with accreditation requirements or is possible illegal. As always - thanks for your continued support of OpenSRS! Thanks - Ken Joy Product Manager, OpenSRS
So, What’s changed since then?
Even though this sparked a court case (which never came to light), the message still applies to this day.
The “Domain Registry of America” (also known as the “Domain Registry Group”) are still sending out notices as part of a “domain slamming” campaign, while OpenSRS are reminding people not to trust them.
In 2009, OpenSRS went on to remind people by reposting the information, saying:
We get calls daily from domain holders who have fallen victim to domain slamming
So, who can do something about this?
In 2001, the federal Competition Bureau (of Canada) issued a warning about documents that appeared to be invoices sent out by a business called the “Internet Registry of Canada.”
Action was taken again in 2003, this time by the Federal Trade Commission (FTC), but this hasn’t stopped them.
In 2008, ICANN, the task force behind .com and .net domains said:
“we are aware of accredited registrars in North America with officers that have been convicted of mail fraud, that continue to be associated with the deceptive marketing practices employed by the Domain Registry of America. We do not consider this an acceptable situation. Accreditation processes must be reviewed, and that review must be released for public scrutiny”
While also in 2009, the Advertising Standards Authority (UK) went on to issue an adjudication on the “Domain Registry of America”.
What can I do to stop this?
The advice is to apply the following:
KEEP any notices or letters you have received and take a digital copy (scan or photo) as they can be used as evidence.
Although you can also send a complaint to ICANN (the non-profit organization that oversees the use of Internet domains) their advice is to file a formal complaint with consumer protection entities and advertising watchdogs such as:
If in doubt, contact your domain registrar.
Update @ 25/07/11
We submitted a complaint to ASA, who replied saying that “recipients are unlikely to respond to the advertisement in error”.
Although we agree with ASA (having read their full response), it is still strongly advise that you continue to use domain locking and WHOIS privacy as form of protection against domain slamming attempts.
]]>A decision had to be made.
You see, the context of the HM2K blog has always had a subtle undertone of my business and the work I do online. That business is Phurix web hosting.
Phurix has always supported me and the blog, but unfortunately, because of other commitments I have less and less time to write and publish.
At first I thought the best solution would be to shut down the blog and call it a day, while a colleague said he thinks I should keep it online.
I’ve been thinking about a solution for a long time but then, while I was on holiday, it hit me.
Merge it into the Phurix brand and it made sense too:
A proposal was put forward and it went better than expected, it all seemed to fit together nicely. Perfect!
The decision was made and I have no regrets.
Today, we started by introducing a new “Phurix Labs” theme to HM2K.com, so that’s phase one is done.
Over the next few days, the website will be migrated from here to “labs.phurix.net” (where it now belongs). That’s phaze two.
Thanks for reading and I hope you continue to support the new Phurix Labs project.
These are exciting times, watch this space!
About Phurix
Since 2004, Phurix has offered affordable and reliable hosting services with a no nonsense approach. Phurix will continue to provide a high quality of service and engage with customers to ensure its future and growth.
Authorised cPanel Partner and OpenSRS partner.
About Phurix Labs
Phurix Labs is where we experiment with ideas and findings. You’ll find all sorts of useful tools and information.
]]>