Compare commits
	
		
			7 Commits
		
	
	
		
			42d3e8a072
			...
			b5ec1f7982
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					b5ec1f7982 | ||
| 
						 | 
					3fba17eb97 | ||
| 
						 | 
					028d5a4542 | ||
| 
						 | 
					2705f5ef65 | ||
| 
						 | 
					6cbb2d1741 | ||
| 
						 | 
					d5ab2d5a26 | ||
| 
						 | 
					c77053c39c | 
							
								
								
									
										4
									
								
								CHANGELOG
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								CHANGELOG
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					v1.1.13 - Tested and working. Deployed to production with known bugs:
 | 
				
			||||||
 | 
					    * vanity nameserver handling needs more testing
 | 
				
			||||||
 | 
					    * delegated nameserver handling needs more testing
 | 
				
			||||||
 | 
					    * malformed records in JSON may result in failure to respond
 | 
				
			||||||
							
								
								
									
										41
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,41 @@
 | 
				
			|||||||
 | 
					Copyright 2017 AJ ONeal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is open source software; you can redistribute it and/or modify it under the
 | 
				
			||||||
 | 
					terms of either:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   a) the "MIT License"
 | 
				
			||||||
 | 
					   b) the "Apache-2.0 License"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					MIT License
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
				
			||||||
 | 
					   of this software and associated documentation files (the "Software"), to deal
 | 
				
			||||||
 | 
					   in the Software without restriction, including without limitation the rights
 | 
				
			||||||
 | 
					   to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
				
			||||||
 | 
					   copies of the Software, and to permit persons to whom the Software is
 | 
				
			||||||
 | 
					   furnished to do so, subject to the following conditions:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   The above copyright notice and this permission notice shall be included in all
 | 
				
			||||||
 | 
					   copies or substantial portions of the Software.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
				
			||||||
 | 
					   IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
				
			||||||
 | 
					   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
				
			||||||
 | 
					   AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
				
			||||||
 | 
					   LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
				
			||||||
 | 
					   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
				
			||||||
 | 
					   SOFTWARE.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Apache-2.0 License Summary
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					   you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					   You may obtain a copy of the License at
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					   distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					   See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					   limitations under the License.
 | 
				
			||||||
@ -1,19 +1,22 @@
 | 
				
			|||||||
{ "primaryNameservers": [ "ns1.daplie.me", "ns2.daplie.me", "ns3.daplie.me" ]
 | 
					{ "primaryNameservers": [ "ns1.daplie.com", "ns2.daplie.com", "ns3.daplie.com" ]
 | 
				
			||||||
, "domains": [
 | 
					, "domains": [
 | 
				
			||||||
    { "id": "daplie.com", "revokedAt": 0 }
 | 
					    { "id": "daplie.com", "revokedAt": 0 }
 | 
				
			||||||
  , { "id": "daplie.domains", "revokedAt": 0, "vanityNs": [ "ns1.daplie.domains", "ns2.daplie.domains", "ns3.daplie.domains" ] }
 | 
					  , { "id": "daplie.domains", "revokedAt": 0, "vanityNs": [ "ns1.daplie.domains", "ns2.daplie.domains", "ns3.daplie.domains" ] }
 | 
				
			||||||
  , { "id": "daplie.me", "revokedAt": 0 }
 | 
					  , { "id": "daplie.me", "revokedAt": 0, "vanityNs": [ "ns1.daplie.me", "ns2.daplie.me", "ns3.daplie.me" ] }
 | 
				
			||||||
  , { "id": "oauth3.org", "revokedAt": 0 }
 | 
					  , { "id": "oauth3.org", "revokedAt": 0 }
 | 
				
			||||||
  , { "id": "hellabit.com", "revokedAt": 0 }
 | 
					 | 
				
			||||||
  ]
 | 
					  ]
 | 
				
			||||||
, "records": [
 | 
					, "records": [
 | 
				
			||||||
    {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns1","data":"ns1.daplie.me"}
 | 
					    {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns1","data":"ns1.daplie.com"}
 | 
				
			||||||
  , {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns2","data":"ns2.daplie.me"}
 | 
					  , {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns2","data":"ns2.daplie.com"}
 | 
				
			||||||
  , {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns3","data":"ns3.daplie.me"}
 | 
					  , {"zone":"daplie.com","name":"daplie.com","type":"NS","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns3","data":"ns3.daplie.com"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  , {"zone":"daplie.com","name":"ns1.daplie.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns1","address":"45.55.1.122"}
 | 
					  , {"zone":"daplie.com","name":"ns1.daplie.com","type":"A","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns1","address":"45.55.1.122"}
 | 
				
			||||||
  , {"zone":"daplie.com","name":"ns2.daplie.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns2","address":"45.55.254.197"}
 | 
					  , {"zone":"daplie.com","name":"ns2.daplie.com","type":"A","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns2","address":"45.55.254.197"}
 | 
				
			||||||
  , {"zone":"daplie.com","name":"ns3.daplie.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"daplie","sub":"ns3","address":"159.203.25.112"}
 | 
					  , {"zone":"daplie.com","name":"ns3.daplie.com","type":"A","class":"IN","ttl":43200,"tld":"com","sld":"daplie","sub":"ns3","address":"159.203.25.112"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  , {"zone":"daplie.me","name":"daplie.me","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"daplie","sub":"ns1","data":"ns1.daplie.me"}
 | 
				
			||||||
 | 
					  , {"zone":"daplie.me","name":"daplie.me","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"daplie","sub":"ns2","data":"ns2.daplie.me"}
 | 
				
			||||||
 | 
					  , {"zone":"daplie.me","name":"daplie.me","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"daplie","sub":"ns3","data":"ns3.daplie.me"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  , {"zone":"daplie.me","name":"ns1.daplie.me","type":"A","class":"IN","ttl":5,"tld":"me","sld":"daplie","sub":"ns1","address":"45.55.1.122"}
 | 
					  , {"zone":"daplie.me","name":"ns1.daplie.me","type":"A","class":"IN","ttl":5,"tld":"me","sld":"daplie","sub":"ns1","address":"45.55.1.122"}
 | 
				
			||||||
  , {"zone":"daplie.me","name":"ns2.daplie.me","type":"A","class":"IN","ttl":5,"tld":"me","sld":"daplie","sub":"ns2","address":"45.55.254.197"}
 | 
					  , {"zone":"daplie.me","name":"ns2.daplie.me","type":"A","class":"IN","ttl":5,"tld":"me","sld":"daplie","sub":"ns2","address":"45.55.254.197"}
 | 
				
			||||||
@ -23,6 +26,11 @@
 | 
				
			|||||||
  , {"zone":"oauth3.org","name":"ns2.oauth3.org","type":"A","class":"IN","ttl":5,"tld":"org","sld":"oauth3","sub":"ns2","address":"45.55.254.197"}
 | 
					  , {"zone":"oauth3.org","name":"ns2.oauth3.org","type":"A","class":"IN","ttl":5,"tld":"org","sld":"oauth3","sub":"ns2","address":"45.55.254.197"}
 | 
				
			||||||
  , {"zone":"oauth3.org","name":"ns3.oauth3.org","type":"A","class":"IN","ttl":5,"tld":"org","sld":"oauth3","sub":"ns3","address":"159.203.25.112"}
 | 
					  , {"zone":"oauth3.org","name":"ns3.oauth3.org","type":"A","class":"IN","ttl":5,"tld":"org","sld":"oauth3","sub":"ns3","address":"159.203.25.112"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  , {"zone":"oauth3.org","name":"oauth3.org","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"oauth3","sub":"ns1","data":"ns1.oauth3.org"}
 | 
				
			||||||
 | 
					  , {"zone":"oauth3.org","name":"oauth3.org","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"oauth3","sub":"ns2","data":"ns2.oauth3.org"}
 | 
				
			||||||
 | 
					  , {"zone":"oauth3.org","name":"oauth3.org","type":"NS","class":"IN","ttl":43200,"tld":"me","sld":"oauth3","sub":"ns3","data":"ns3.oauth3.org"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  , {"zone":"daplie.com","name":"daplie.com","type":"A","class":"IN","ttl":43200,"tld":"com","sld":"daplie","address":"23.228.168.108"}
 | 
					  , {"zone":"daplie.com","name":"daplie.com","type":"A","class":"IN","ttl":43200,"tld":"com","sld":"daplie","address":"23.228.168.108"}
 | 
				
			||||||
  , {"zone":"daplie.com","name":"daplie.com","type":"TXT","class":"IN","ttl":43200,"tld":"com","sld":"daplie","data":["v=spf1 include:mailgun.org include:spf.mandrillapp.com include:_spf.google.com include:servers.mcsv.net include:mail.zendesk.com ~all"]}
 | 
					  , {"zone":"daplie.com","name":"daplie.com","type":"TXT","class":"IN","ttl":43200,"tld":"com","sld":"daplie","data":["v=spf1 include:mailgun.org include:spf.mandrillapp.com include:_spf.google.com include:servers.mcsv.net include:mail.zendesk.com ~all"]}
 | 
				
			||||||
@ -63,20 +71,6 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  , {"zone":"hellabit.com","name":"hellabit.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns1","data":"ns1.hellabit.com"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"hellabit.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns2","data":"ns2.hellabit.com"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"hellabit.com","type":"NS","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns3","data":"ns3.hellabit.com"}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"ns1.hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns1","address":"45.55.1.122"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"ns2.hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns2","address":"45.55.254.197"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"ns3.hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"ns3","address":"159.203.25.112"}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"leo.devices.hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"leo.devices","address":"45.56.59.142"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"","address":"45.56.59.142","aname":"leo.devices.hellabit.com"}
 | 
					 | 
				
			||||||
  , {"zone":"hellabit.com","name":"hellabit.com","type":"A","class":"IN","ttl":5,"tld":"com","sld":"hellabit","sub":"www","address":"45.56.59.142","aname":"leo.devices.hellabit.com"}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns1","data":"ns1.daplie.domains"}
 | 
					  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns1","data":"ns1.daplie.domains"}
 | 
				
			||||||
  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns2","data":"ns2.daplie.domains"}
 | 
					  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns2","data":"ns2.daplie.domains"}
 | 
				
			||||||
  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns3","data":"ns3.daplie.domains"}
 | 
					  , {"zone":"daplie.domains","name":"daplie.domains","type":"NS","class":"IN","ttl":5,"tld":"domains","sld":"daplie","sub":"ns3","data":"ns3.daplie.domains"}
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										23
									
								
								samples/hellabit.enom.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								samples/hellabit.enom.sh
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					daplie domains:list # shows hellabit.com in my list of domains
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for hellabit.com to lookup itself (chicken and egg problem),
 | 
				
			||||||
 | 
					# we must first set glue records
 | 
				
			||||||
 | 
					daplie glue:set -n ns1.hellabit.com --tld com -a 138.197.72.1
 | 
				
			||||||
 | 
					daplie glue:set -n ns2.hellabit.com --tld com -a 162.243.136.134
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# now we can set hellabit.com to use nsx.hellabit.com nameservers
 | 
				
			||||||
 | 
					daplie ns:set -n hellabit.com --tld com --nameservers ns1.hellabit.com,ns2.hellabit.com
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# now we can't use the dns tools because digd.js does not (yet) have oauth3 compatible apis
 | 
				
			||||||
 | 
					# these won't work
 | 
				
			||||||
 | 
					# daplie devices:set -d sfo2.devices.hellabit.com -a 138.197.216.176
 | 
				
			||||||
 | 
					# daplie devices:attach -d sfo2.devices.hellabit.com -n hellabit.com
 | 
				
			||||||
 | 
					# daplie devices:attach -d sfo2.devices.hellabit.com -n www.hellabit.com
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# now you can test that your hard work worked
 | 
				
			||||||
 | 
					# < ==== NOTE ==== > It may take a few minutes before this starts to work as you'd expect
 | 
				
			||||||
 | 
					dig +trace ns1.hellabit.com
 | 
				
			||||||
 | 
					dig +trace ns2.hellabit.com
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dig +trace hellabit.com
 | 
				
			||||||
 | 
					dig +trace www.hellabit.com
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user