Skip to content

Commit ac4733b

Browse files
committed
tailscale/pihole blog post
1 parent 9a16a9e commit ac4733b

File tree

27 files changed

+313
-13
lines changed

27 files changed

+313
-13
lines changed

img/blackhole.jpg

114 KB
Loading

index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!doctype html><html lang=en><head><meta charset=UTF-8><meta http-equiv=X-UA-Compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=author content><meta name=description content="An Android, Kotlin, travel, food, and life blog."><meta name=keywords content="kotlin,android"><meta name=robots content="noodp"><meta name=theme-color content="#252627"><link rel=canonical href=https://jvmname.dev/><title>@JvmName("Parth")</title><link rel=stylesheet href=https://jvmname.dev/main.min.522ac355475c3ace8381b077c8865b531630177e7b14b13e239c6a23f767c2a9.css integrity="sha256-UirDVUdcOs6DgbB3yIZbUxYwF357FLE+I5xqI/dnwqk=" crossorigin=anonymous><link rel=apple-touch-icon sizes=180x180 href=https://jvmname.dev/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=https://jvmname.dev/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=https://jvmname.dev/favicon-16x16.png><link rel=manifest href=https://jvmname.dev/site.webmanifest><link rel=mask-icon href=https://jvmname.dev/safari-pinned-tab.svg color><link rel="shortcut icon" href=https://jvmname.dev/favicon.ico><meta name=msapplication-TileColor content><meta itemprop=name content='@JvmName("Parth")'><meta itemprop=description content="An Android, Kotlin, travel, food, and life blog"><meta itemprop=datePublished content="2025-09-12T11:13:04-07:00"><meta itemprop=dateModified content="2025-09-12T11:13:04-07:00"><meta itemprop=image content="https://jvmname.dev/"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://jvmname.dev/"><meta name=twitter:title content='@JvmName("Parth")'><meta name=twitter:description content="An Android, Kotlin, travel, food, and life blog"><meta property="og:url" content="https://jvmname.dev/"><meta property="og:site_name" content='@JvmName("Parth")'><meta property="og:title" content='@JvmName("Parth")'><meta property="og:description" content="An Android, Kotlin, travel, food, and life blog"><meta property="og:locale" content="en"><meta property="og:type" content="website"><meta property="og:image" content="https://jvmname.dev/"><link rel=alternate type=application/rss+xml href=https://jvmname.dev/index.xml title=@JvmName( parth")"><script data-goatcounter=https://jvmname.goatcounter.com/count async src=//gc.zgo.at/count.js></script></head><body><div class=container><header class=header><span class=header__inner><a href=https://jvmname.dev/ style=text-decoration:none><div class=logo><span class=logo__mark>></span>
1+
<!doctype html><html lang=en><head><meta charset=UTF-8><meta http-equiv=X-UA-Compatible content="ie=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=author content><meta name=description content="An Android, Kotlin, travel, food, and life blog."><meta name=keywords content="kotlin,android"><meta name=robots content="noodp"><meta name=theme-color content="#252627"><link rel=canonical href=https://jvmname.dev/><title>@JvmName("Parth")</title><link rel=stylesheet href=https://jvmname.dev/main.min.522ac355475c3ace8381b077c8865b531630177e7b14b13e239c6a23f767c2a9.css integrity="sha256-UirDVUdcOs6DgbB3yIZbUxYwF357FLE+I5xqI/dnwqk=" crossorigin=anonymous><link rel=apple-touch-icon sizes=180x180 href=https://jvmname.dev/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=https://jvmname.dev/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=https://jvmname.dev/favicon-16x16.png><link rel=manifest href=https://jvmname.dev/site.webmanifest><link rel=mask-icon href=https://jvmname.dev/safari-pinned-tab.svg color><link rel="shortcut icon" href=https://jvmname.dev/favicon.ico><meta name=msapplication-TileColor content><meta itemprop=name content='@JvmName("Parth")'><meta itemprop=description content="An Android, Kotlin, travel, food, and life blog"><meta itemprop=datePublished content="2025-11-06T14:39:15-08:00"><meta itemprop=dateModified content="2025-11-06T14:39:15-08:00"><meta itemprop=image content="https://jvmname.dev/"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://jvmname.dev/"><meta name=twitter:title content='@JvmName("Parth")'><meta name=twitter:description content="An Android, Kotlin, travel, food, and life blog"><meta property="og:url" content="https://jvmname.dev/"><meta property="og:site_name" content='@JvmName("Parth")'><meta property="og:title" content='@JvmName("Parth")'><meta property="og:description" content="An Android, Kotlin, travel, food, and life blog"><meta property="og:locale" content="en"><meta property="og:type" content="website"><meta property="og:image" content="https://jvmname.dev/"><link rel=alternate type=application/rss+xml href=https://jvmname.dev/index.xml title=@JvmName( parth")"><script data-goatcounter=https://jvmname.goatcounter.com/count async src=//gc.zgo.at/count.js></script></head><body><div class=container><header class=header><span class=header__inner><a href=https://jvmname.dev/ style=text-decoration:none><div class=logo><span class=logo__mark>></span>
22
<span class=logo__text>@JvmName</span>
33
<span class=logo__cursor style=background-color:#67a2c9;animation-duration:3.5s></span></div></a><span class=header__right><nav class=menu><ul class=menu__inner><li><a href=https://jvmname.dev/about/>About Me</a></li><li><a href=https://jvmname.dev/posts/>Posts</a></li><li><a href=https://jvmname.dev/speaking/>Speaking</a></li></ul></nav><span class=menu-trigger><svg viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg>
44
</span><span class="theme-toggle not-selectable"><svg class="theme-toggler" width="24" height="24" viewBox="0 0 48 48" fill="none"><path d="M22 41c10.4934.0 19-8.5066 19-19C41 11.5066 32.4934 3 22 3 11.5066 3 3 11.5066 3 22s8.5066 19 19 19zM7 22C7 13.7157 13.7157 7 22 7V37C13.7157 37 7 30.2843 7 22z"/></svg></span></span></span></header><div class=content><main><div><img src=https://jvmname.dev/img/profile.jpg class=circle alt=Portrait style=max-width:><h1>@JvmName("Parth")</h1><p>An Android, Kotlin, travel, food, and life blog.</p><div>&nbsp; <a href=https://androiddev.social/@jvmname rel="me noopener" title=Mastodon><svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke-width="2"><path d="M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041.0h-.076c-3.068.025-6.02.357-7.74 1.147.0.0-3.411 1.526-3.411 6.732.0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499.0 01-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2.0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085.0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278.0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104.0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z"/></svg></a> &nbsp;&nbsp; <a href=https://bsky.app/profile/jvmname.dev rel="me noopener" title=Bluesky><svg width="24" height="24" viewBox="0 0 360 320" fill="none"><path d="M254.896 184.158C252.81 183.926 250.733 183.645 248.671 183.315 250.773 183.574 252.849 183.855 254.896 184.158z"/><path d="M180 141.964c-16.301-31.702-60.692-90.7823-101.9653-119.92C38.4971-5.86834 23.414-1.03207 13.526 3.43594 2.08093 8.60755.0 26.1785.0 36.5164.0 46.8542 5.66748 121.272 9.36416 133.694 21.5786 174.738 65.0603 188.607 105.104 184.156 107.151 183.852 109.227 183.572 111.329 183.312 109.267 183.642 107.19 183.924 105.104 184.156 46.4204 192.847-5.69621 214.233 62.6582 290.33 137.848 368.18 165.705 273.637 180 225.702c14.295 47.935 30.76 139.069 115.995 64.628C360 225.702 313.58 192.85 254.896 184.158 252.81 183.926 250.733 183.645 248.671 183.315 250.773 183.574 252.849 183.855 254.896 184.158 294.94 188.61 338.421 174.74 350.636 133.697 354.333 121.275 360 46.8568 360 36.519 360 26.1811 357.919 8.61012 346.474 3.43851 336.586-1.02949 321.503-5.86576 281.965 22.0466 240.692 51.1843 196.301 110.262 180 141.964z" fill="currentColor"/></svg></a> &nbsp;&nbsp; <a href=https://github.com/JvmName rel="me noopener" title=Github><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg></a> &nbsp;&nbsp; <a href=https://www.linkedin.com/in/parthpadg rel="me noopener" title=Linkedin><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg></a> &nbsp;&nbsp; <a href=mailto:parth@jvmname.dev rel="me noopener" title=Email><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1.0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1.0-2-.9-2-2V6c0-1.1.9-2 2-2z"/><polyline points="22,6 12,13 2,6"/></svg></a> &nbsp;</div></div></main></div><footer class=footer></footer></div><script type=text/javascript src=https://jvmname.dev/bundle.min.ff8546a88648331ab9d3884ad6a8cfbf5f5a9ee63e25453fb0e756210368c791330b8aafc6dc6a4f17fbfdea282bab38804079c4575a97a90af148a8f2791856.js integrity="sha512-/4VGqIZIMxq504hK1qjPv19anuY+JUU/sOdWIQNox5EzC4qvxtxqTxf7/eooK6s4gEB5xFdal6kK8Uio8nkYVg=="></script></body></html>

index.xml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,14 @@
1-
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>@JvmName("Parth")</title><link>https://jvmname.dev/</link><description>Recent content on @JvmName("Parth")</description><generator>Hugo</generator><language>en</language><copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright><lastBuildDate>Fri, 12 Sep 2025 11:13:04 -0700</lastBuildDate><atom:link href="https://jvmname.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Claude's Flattery and Pessimistic Prompting</title><link>https://jvmname.dev/posts/2025/09/claudes-flattery-and-pessimistic-prompting/</link><pubDate>Fri, 12 Sep 2025 11:13:04 -0700</pubDate><guid>https://jvmname.dev/posts/2025/09/claudes-flattery-and-pessimistic-prompting/</guid><description>&lt;p&gt;I&amp;rsquo;ve been interviewing for a new role recently! Unlike the last time I was on the market, there&amp;rsquo;s fun new AI
1+
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>@JvmName("Parth")</title><link>https://jvmname.dev/</link><description>Recent content on @JvmName("Parth")</description><generator>Hugo</generator><language>en</language><copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright><lastBuildDate>Thu, 06 Nov 2025 14:39:15 -0800</lastBuildDate><atom:link href="https://jvmname.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Tailscale device names in Pi-hole</title><link>https://jvmname.dev/posts/2025/11/tailscale-device-names-in-pi-hole/</link><pubDate>Thu, 06 Nov 2025 14:39:15 -0800</pubDate><guid>https://jvmname.dev/posts/2025/11/tailscale-device-names-in-pi-hole/</guid><description>&lt;p&gt;I run Tailscale and Pi-hole on a small Odroid C2 SBC&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;. While perusing my Pi-hole&amp;rsquo;s DNS query log, I noticed that
2+
all my Tailscale clients (which use
3+
my &lt;a href="https://tailscale.com/kb/1114/pi-hole#step-4-set-raspberry-pi-as-the-dns-server-for-your-tailnet"&gt;Pi-hole for DNS&lt;/a&gt;)
4+
appeared as IP addresses (&lt;code&gt;100.x.y.z&lt;/code&gt;) rather than device names. This makes tracking &lt;em&gt;what actual device&lt;/em&gt;
5+
made the query nearly impossible. Fortunately, the solution is pretty uncomplicated!&lt;/p&gt;
6+
&lt;h1 id="local-clients-x-pi-hole"&gt;Local Clients x Pi-Hole&lt;/h1&gt;
7+
&lt;p&gt;If your Pi-hole is already your network&amp;rsquo;s canonical DHCP
8+
server (&lt;a href="https://discourse.pi-hole.net/t/how-do-i-use-pi-holes-built-in-dhcp-server-and-why-would-i-want-to/3026"&gt;and it should be!&lt;/a&gt;),
9+
then all your local devices will have a hostname within the Pi-hole console. However, that hostname might be useless –
10+
for example, my Google TV announced
11+
itself by the excellent and memorable name &lt;code&gt;HS105&lt;/code&gt; 🤦🏾‍♂️&lt;/p&gt;</description></item><item><title>Claude's Flattery and Pessimistic Prompting</title><link>https://jvmname.dev/posts/2025/09/claudes-flattery-and-pessimistic-prompting/</link><pubDate>Fri, 12 Sep 2025 11:13:04 -0700</pubDate><guid>https://jvmname.dev/posts/2025/09/claudes-flattery-and-pessimistic-prompting/</guid><description>&lt;p&gt;I&amp;rsquo;ve been interviewing for a new role recently! Unlike the last time I was on the market, there&amp;rsquo;s fun new AI
212
tooling to help me.&lt;/p&gt;
313
&lt;p&gt;I&amp;rsquo;ve been pretty impressed with Claude and Claude Codes (CC) – it&amp;rsquo;s been incredibly helpful for banal things like
414
debugging a SQL &lt;code&gt;CREATE VIEW&lt;/code&gt; and batch-editing 25+ &lt;code&gt;build.gradle&lt;/code&gt; files. It&amp;rsquo;s also great for code review, but it&amp;rsquo;s also

posts/2025/09/claudes-flattery-and-pessimistic-prompting/index.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,7 @@
4242
<span class=tag><a href=https://jvmname.dev/tags/code-review/>code review</a></span>
4343
<span class=tag><a href=https://jvmname.dev/tags/claude/>claude</a></span></p><p><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text"><path d="M14 2H6A2 2 0 004 4v16a2 2 0 002 2h12a2 2 0 002-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/></svg>
4444
1070 Words</p><p><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>
45-
2025-09-12 11:13 -0700</p></div><div class=pagination><div class=pagination__buttons><span class="button next"><a href=https://jvmname.dev/posts/2021/06/your-yaml-could-be-dryer/><span class=button__text>Your YAML could be DRYer</span>
45+
2025-09-12 11:13 -0700</p></div><div class=pagination><div class=pagination__buttons><span class="button previous"><a href=https://jvmname.dev/posts/2025/11/tailscale-device-names-in-pi-hole/><span class=button__icon></span>
46+
<span class=button__text>Tailscale device names in Pi-hole</span>
47+
</a></span><span class="button next"><a href=https://jvmname.dev/posts/2021/06/your-yaml-could-be-dryer/><span class=button__text>Your YAML could be DRYer</span>
4648
<span class=button__icon></span></a></span></div></div></main></div><footer class=footer></footer></div><script type=text/javascript src=https://jvmname.dev/bundle.min.ff8546a88648331ab9d3884ad6a8cfbf5f5a9ee63e25453fb0e756210368c791330b8aafc6dc6a4f17fbfdea282bab38804079c4575a97a90af148a8f2791856.js integrity="sha512-/4VGqIZIMxq504hK1qjPv19anuY+JUU/sOdWIQNox5EzC4qvxtxqTxf7/eooK6s4gEB5xFdal6kK8Uio8nkYVg=="></script></body></html>

0 commit comments

Comments
 (0)